Pagini recente » Cod sursa (job #972029) | Cod sursa (job #3197889) | Cod sursa (job #2176246) | Cod sursa (job #1240517) | Cod sursa (job #935891)
Cod sursa(job #935891)
#include<cstdio>
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;
}
void rezolvare(){
v[n+1].x=v[1].x;
v[n+1].y=v[1].y;
double S;
for ( register int i = 1; i <= N; ++i )
S += ( v[i].x * v[i + 1].y - v[i + 1].x * v[i].y );
fprintf(out,"%lf",modul(S*0.5));
}
int main(){
in=fopen("aria.in","r");
out=fopen("aria.out","w");
citire();
rezolvare();
return 0;
}