fork download
  1. #include <stdio.h>
  2. #include <math.h>
  3.  
  4. typedef struct {
  5. double x;
  6. double y;
  7. } Point;
  8.  
  9. Point scan_point(void) {
  10. Point p;
  11. printf("X座標を入力してください:");
  12. scanf("%lf", &p.x);
  13. printf("Y座標を入力してください:");
  14. scanf("%lf", &p.y);
  15. return p;
  16. }
  17.  
  18. double area_of(Point p1, Point p2) {
  19. double width = fabs(p2.x - p1.x);
  20. double height = fabs(p2.y - p1.y);
  21. return width * height;
  22. }
  23.  
  24. double circumference_of(Point p1, Point p2) {
  25. double width = fabs(p2.x - p1.x);
  26. double height = fabs(p2.y - p1.y);
  27. return 2 * (width + height);
  28. }
  29.  
  30. int main(void) {
  31. Point p1, p2;
  32. printf("左上隅の座標を入力してください。\n");
  33. p1 = scan_point();
  34. printf("右下隅の座標を入力してください。\n");
  35. p2 = scan_point();
  36.  
  37. double area = area_of(p1, p2);
  38. double circumference = circumference_of(p1, p2);
  39.  
  40. printf("面積:%.2f\n", area);
  41. printf("周囲の長さ:%.2f\n", circumference);
  42.  
  43. return 0;
  44. }
  45.  
Success #stdin #stdout 0s 5316KB
stdin
1,4 5,2
stdout
左上隅の座標を入力してください。
X座標を入力してください:Y座標を入力してください:右下隅の座標を入力してください。
X座標を入力してください:Y座標を入力してください:面積:0.00
周囲の長さ:0.00