Submit | All submissions | Best solutions | Back to list |
PROG0056 - Herons formula |
There are several formulae for calculating the area $o$ of a given triangle $ABC$. The Greek mathematician Hero of Alexandria proved the following formula circa 60 BC:
$$o = \sqrt{s(s-a)(s-b)(s-c)}$$
Hero's formula makes it possible to determine the area of a triangle when only the lengths of the sides are known. In this formula, $a$, $b$ and $c$ are the lengths of the sides of the triangle and $s$ is the half-circumference of the triangle. Use Hero's formula to determine the area of the given triangle, bearing in mind that the Euclidean distance between two points $P$ and $Q$, with the co-ordinates ($x_1$,$y_1$) and ($x_2$,$y_2$) is
$$|PQ| = \sqrt{(x_1-x_2)^2 + (y_1-y_2)^2}$$
Input
Six lines with the co-ordinates of the vertices of the triangle $ABC$: line 1 contains the $x$-co-ordinate of the vertex $A$, line 2 contains the $y$-co-ordinate of the vertex $A$, …, line 6 contains the $y$-co-ordinate of the vertex $C$. All co-ordinates are given as whole numbers.
Output
The area of the triangle, as a decimal number.
Example
Input:
0 0 2 2 1 0
Output:
1.0
Er bestaan verschillende formules om de oppervlakte $o$ van een gegeven driehoek $ABC$ te berekenen. Omstreeks 60 na Christus bewees de Griekse wiskundige Heroon van Alexandrië de volgende formule:
$$o = \sqrt{s(s-a)(s-b)(s-c)}$$
Deze formule van Heroon laat toe om rechtstreeks de oppervlakte van een driehoek te bepalen wanneer enkel de lengte van de zijden gekend is. In deze formule zijn $a$, $b$ en $c$ de lengten van de zijden van de driehoek en is $s$ de halve omtrek van de driehoek. Gebruik de formule van Heroon om de oppervlakte van een gegeven driehoek te bepalen, als je weet dat de Euclidische afstand tussen twee punten $P$ en $Q$ met coördinaten ($x_1$,$y_1$) en ($x_2$,$y_2$) gegeven wordt door
$$|PQ| = \sqrt{(x_1-x_2)^2 + (y_1-y_2)^2}$$
Invoer
Zes regels met daarop de coördinaten van de hoekpunten van de driehoek $ABC$: regel 1 bevat de $x$-coördinaat van het punt $A$, regel 2 bevat de $y$-coördinaat van het punt $A$, …, regel 6 bevat de $y$-coördinaat van het punt $C$. Alle coördinaten worden gegeven als gehele getallen.
Uitvoer
De oppervlakte van de driehoek, als decimaal getal.
Voorbeeld
Invoer:
0 0 2 2 1 0
Uitvoer:
1.0
Added by: | Peter Dawyndt |
Date: | 2011-07-26 |
Time limit: | 10s |
Source limit: | 50000B |
Memory limit: | 1536MB |
Cluster: | Cube (Intel G860) |
Languages: | PY_NBC |
Resource: | None |