Pagini recente » Cod sursa (job #1815742) | Cod sursa (job #2550221) | Cod sursa (job #3280904) | Cod sursa (job #2536332) | Cod sursa (job #935873)
Cod sursa(job #935873)
#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 double modul(double a){
return a>=0 ? a : -a;
}
double triunghi(punct a, punct b, punct c){
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(){
double arie=0;
for(register int i=2; i<n; ++i){
arie+=triunghi(v[1],v[i],v[i+1]);
}
fprintf(out,"%lf",arie);
}
int main(){
in=fopen("aria.in","r");
out=fopen("aria.out","w");
citire();
rezolvare();
CLOSE
}