Pagini recente » Cod sursa (job #678378) | Cod sursa (job #1980698) | Cod sursa (job #1010832) | Cod sursa (job #1709996) | Cod sursa (job #935878)
Cod sursa(job #935878)
#include<cstdio>
#define CLOSE fclose(in); fclose(out); return 0;
using namespace std;
FILE *in,*out;
const int N = 100100;
struct punct {
double x;
double y;
}v[N];
int n;
void citire(){
fscanf(in,"%d",&n);
for(register int i =1 ; i<=n; ++i)
fscanf(in,"%lf%lf",&v[i].x,&v[i].y);
}
inline long double modul(long double a){
return a>=0 ? a : -a;
}
long double triunghi(punct a, punct b, punct c){
long double arie ;
arie=(b.x-a.x)*(c.y-a.y)-(c.x-a.x)*(b.y-a.y);
arie/=2;
return modul(arie);
}
void rezolvare(){
long double arie=0;
for(register int i=2; i<n; ++i){
arie+=triunghi(v[1],v[i],v[i+1]);
}
fprintf(out,"%.5Lf",arie);
}
int main(){
in=fopen("aria.in","r");
out=fopen("aria.out","w");
citire();
rezolvare();
CLOSE
}