Cerința
Se dau coordonatele în plan a trei puncte. Să se afișeze valoarea ariei triunghiului pe care îl formează.
Date de intrare
Fișierul de intrare ariatriunghi.in
conține pe prima linie 6
numere naturale, respectiv: abscisa primului punct, ordonata primului punct, abscisa celui de-al doilea punct, ordonata celui de-al doilea punct, abscisa celui de-al treilea punct, ordonata celui de-al treilea punct.
Date de ieșire
Fișierul de ieșire ariatriunghi.out
va conține pe prima linie un număr real, cu exact o zecimală, reprezentând valoarea cerută.
Restricții și precizări
- Numerele din fișierul de intrare sunt întregi cuprinse între
-1001
și1001
. - Punctele nu sunt coliniare.
Exemplu
ariatriunghi.in
0 1 1 0 2 1
ariatriunghi.out
1.0
#include <bits/stdc++.h> using namespace std; ifstream cin("ariatriunghi.in"); ofstream cout("ariatriunghi.out"); int main() { int x1 , x2 , x3 , y1 , y2 , y3; cin >> x1 >> y1 >> x2 >> y2 >> x3 >> y3; double a = sqrt((x1-x2)*(x1-x2) + (y1-y2)*(y1-y2)); double b = sqrt((x3-x1)*(x3-x1) + (y3-y1)*(y3-y1)); double c = sqrt((x3-x2)*(x3-x2) + (y3-y2)*(y3-y2)); double s = (a+b+c) / 2; double A = sqrt((s - a) * (s - b) * (s - c) * s); cout << fixed << setprecision(1) << A; return 0; }