Pagini recente » Cod sursa (job #246858) | Cod sursa (job #1414518) | Cod sursa (job #2261620) | Istoria paginii runda/stargold | Cod sursa (job #1464703)
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
ifstream fin ("aria.in") ;
ofstream fout ("aria.out") ;
int N ;
vector < pair < double , double > > LISTA ;
void Citire ()
{
fin >> N ;
double x , y ;
for ( int i = 1 ; i <= N ; ++ i )
fin >> x >> y , LISTA.push_back ( make_pair ( x , y ) ) ;
}
double aria ;
int main()
{
Citire () ;
LISTA.push_back ( LISTA [0] ) ;
for ( unsigned int i = 0 ; i < LISTA.size () ; ++ i )
{
aria += LISTA[i].first * LISTA[ i + 1 ].second - LISTA [ i + 1 ].first * LISTA [i].second ;
}
if ( aria < 0 )
aria *= -1;
fout << aria / 2.0 ;
return 0;
}