Advertisement
a53

AriaPoligonSimplu

a53
Jun 5th, 2017
116
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.64 KB | None | 0 0
  1. #include <cstdio>
  2. using namespace std;
  3. FILE *f=fopen("ariapoligonsimplu.in","r");
  4. FILE *g=fopen("ariapoligonsimplu.out","w");
  5. typedef struct
  6. {
  7. int x,y;
  8. } Point;
  9.  
  10. double PolygonArea(Point *polygon,int N)
  11. {
  12. int i,j;
  13. double area = 0;
  14.  
  15. for(i=0;i<N;i++)
  16. {
  17. j=(i+1)%N;
  18. area+=polygon[i].x*polygon[j].y;
  19. area-=polygon[i].y*polygon[j].x;
  20. }
  21.  
  22. area/=2;
  23. return(area<0?-area:area);
  24. }
  25.  
  26. int main()
  27. {
  28. Point coord[100];
  29. int nr;
  30. fscanf(f,"%d",&nr);
  31. for (int i=0;i<nr;i++)
  32. fscanf(f,"%d%d",&coord[i].x,&coord[i].y);
  33. fprintf(g,"%1.1f",PolygonArea(coord,nr));
  34. return 0;
  35. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement