Pagini recente » Cod sursa (job #3270003) | Cod sursa (job #1029951) | Cod sursa (job #2369129) | Cod sursa (job #281248) | Cod sursa (job #1687770)
#include <iostream>
#include <cstdio>
#include <cmath>
using namespace std;
int n;
struct coord
{
long double x,y;
} coordonate[100000];
void citire()
{
scanf("%d\n",&n);
for(int i=0; i<n; i++)
{
scanf("%Lf %Lf\n",&coordonate[i].x,&coordonate[i].y);
coordonate[i].x += 1000000;
coordonate[i].y += 1000000;
}
coordonate[n].x = coordonate[0].x;
coordonate[n].y = coordonate[0].y;
}
void afisare(long double x)
{
// if(x==(int)x)
// {
// printf("%.0Lf",x);
// return;
// }
// if((x*10)==(int)(x*10))
// {
// x*=10;
// x=(long long)x;
// x/=10;
// printf("%.1Lf",x);
// return;
// }
// if((x*100)==(int)(x*100))
// {
// x*=100;
// x=(long long)x;
// x/=100;
// printf("%.2Lf",x);
// return;
// }
// if((x*1000)==(int)(x*1000))
// {
// x*=1000;
// x=(long long)x;
// x/=1000;
// printf("%.3Lf",x);
// return;
// }
// if((x*10000)==(int)(x*10000))
// {
// x*=10000;
// x=(long long)x;
// x/=10000;
// printf("%.4Lf",x);
// return;
// }
// if((x*100000)==(int)(x*100000))
// {
// x*=100000;
// x=(long long)x;
// x/=100000;
// printf("%.5Lf",x);
// return;
// }
}
void prelucrare()
{
long double arie=0;
for(int i=0; i<n; i++)
{
arie+=((coordonate[i].y+coordonate[i+1].y)*(coordonate[i+1].x-coordonate[i].x));
}
arie /= 2;
if(arie < 0)
{
arie = -arie;
}
//printf("%.0Lf",arie);
//afisare(arie);
if(arie == (int)arie)
{
printf("%.0Lf", arie);
}
else if((arie * 10) == (int)(arie * 10))
{
arie = arie * 10;
arie = (long long)arie;
arie = arie / 10;
printf("%.1Lf", arie);
}
else if((arie * 100) == (int)(arie * 100))
{
arie = arie * 100;
arie = (long long)arie;
arie = arie / 100;
printf("%.2Lf", arie);
}
else if((arie * 1000) == (int)(arie * 1000))
{
arie = arie * 1000;
arie = (long long)arie;
arie = arie / 1000;
printf("%.3Lf", arie);
}
else if((arie * 10000) == (int)(arie * 10000))
{
arie = arie * 10000;
arie = (long long)arie;
arie = arie / 10000;
printf("%.4Lf", arie);
}
else
{
arie = arie * 100000;
arie = (long long)arie;
arie = arie / 100000;
printf("%.5Lf", arie);
}
}
int main()
{
freopen("aria.in","r",stdin);
freopen("aria.out","w",stdout);
citire();
prelucrare();
return 0;
}