#include <stdio.h>
#include <math.h>
typedef struct{
double x;
double y;
}Point;
Point scan_point();
double area_of(Point p1,Point p2);
double circumference_of(Point p1,Point p2);
int main(void) {
Point p1,p2;
printf("左上隅と右下隅の座標を入力してください。\n");
p1=scan_point();
printf("座標1(%.2f, %.2f)\n",p1.
x,p1.
y);
p2=scan_point();
printf("座標2(%.2f, %.2f)\n",p2.
x,p2.
y);
double area = area_of(p1,p2);
double circ = circumference_of(p1,p2);
return 0;
}
Point scan_point(){
Point p;
return p;
}
double area_of(Point p1, Point p2){
double xx
=fabs(p2.
x-p1.
x); double yy
=fabs(p2.
y-p1.
y); return xx*yy;
}
double circumference_of(Point p1, Point p2){
double xx
=fabs(p2.
x-p1.
x); double yy
=fabs(p2.
y-p1.
y); return (xx+yy)*2;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxtYXRoLmg+Cgp0eXBlZGVmIHN0cnVjdHsKCWRvdWJsZSB4OwoJZG91YmxlIHk7Cn1Qb2ludDsKClBvaW50IHNjYW5fcG9pbnQoKTsKZG91YmxlIGFyZWFfb2YoUG9pbnQgcDEsUG9pbnQgcDIpOwpkb3VibGUgY2lyY3VtZmVyZW5jZV9vZihQb2ludCBwMSxQb2ludCBwMik7CgppbnQgbWFpbih2b2lkKSB7CglQb2ludCBwMSxwMjsKCXByaW50Zigi5bem5LiK6ZqF44Go5Y+z5LiL6ZqF44Gu5bqn5qiZ44KS5YWl5Yqb44GX44Gm44GP44Gg44GV44GE44CCXG4iKTsKCQoJcDE9c2Nhbl9wb2ludCgpOwoJcHJpbnRmKCLluqfmqJkxKCUuMmYsICUuMmYpXG4iLHAxLngscDEueSk7CgkKCXAyPXNjYW5fcG9pbnQoKTsKCXByaW50Zigi5bqn5qiZMiglLjJmLCAlLjJmKVxuIixwMi54LHAyLnkpOwoJCglkb3VibGUgYXJlYSA9IGFyZWFfb2YocDEscDIpOwoJZG91YmxlIGNpcmMgPSBjaXJjdW1mZXJlbmNlX29mKHAxLHAyKTsKCQoJcHJpbnRmKCLpnaLnqY3vvJolLjJmXG4iLGFyZWEpOwoJcHJpbnRmKCLlkajlm7Ljga7plbfjgZXvvJolLjJmXG4iLGNpcmMpOwoJCglyZXR1cm4gMDsKfQoKUG9pbnQgc2Nhbl9wb2ludCgpewoJUG9pbnQgcDsKCXNjYW5mKCIlbGYiLCZwLngpOwoJc2NhbmYoIiVsZiIsJnAueSk7CglyZXR1cm4gcDsKfQoKZG91YmxlIGFyZWFfb2YoUG9pbnQgcDEsIFBvaW50IHAyKXsKCWRvdWJsZSB4eD1mYWJzKHAyLngtcDEueCk7Cglkb3VibGUgeXk9ZmFicyhwMi55LXAxLnkpOwoJcmV0dXJuIHh4Knl5Owp9Cgpkb3VibGUgY2lyY3VtZmVyZW5jZV9vZihQb2ludCBwMSwgUG9pbnQgcDIpewoJZG91YmxlIHh4PWZhYnMocDIueC1wMS54KTsKCWRvdWJsZSB5eT1mYWJzKHAyLnktcDEueSk7CglyZXR1cm4gKHh4K3l5KSoyOwp9CgoKCgo=