ปัญหา
เขียนโปรแกรมคำนวณพื้นที่สามเหลี่ยม, สี่เหลี่ยมจัตุรัส, วงกลม, สี่เหลี่ยมผืนผ้า, 平行四邊形 โดยใช้ switch case
วิธีแก้ปัญหา
คำนวณพื้นที่ตามหมายเลข case:
- สามเหลี่ยม: ใส่ด้าน a,b,c → s=(a+b+c)/2, area=sqrt(s(s-a)(s-b)(s-c))
- สี่เหลี่ยมจัตุรัส: ใส่ด้าน → area=side*side
- วงกลม: ใส่รัศมี → area=3.14159*r*r
- สี่เหลี่ยมผืนผ้า: ใส่ยาว กว้าง → area=len*breadth
- 平行四邊形: ใส่ฐาน สูง → area=base*height
ตัวอย่างโค้ด
#include <stdio.h>
#include <math.h>
int main() {
int choice;
printf("Enter\n1 to find area of Triangle\n2 for finding area of Square\n3 for finding area of Circle\n4 for finding area of Rectangle\n5 for Parallelogram\n");
scanf("%d", &choice);
switch(choice) {
case 1: {
int a, b, c;
float s, area;
printf("Enter sides of triangle\n");
scanf("%d %d %d", &a, &b, &c);
s = (float)(a + b + c) / 2;
area = (float)(sqrt(s * (s - a) * (s - b) * (s - c)));
printf("Area of Triangle is %f\n", area);
break;
}
case 2: {
float side, area;
printf("Enter Sides of Square\n");
scanf("%f", &side);
area = (float)side * side;
printf("Area of Square is %f\n", area);
break;
}
case 3: {
float radius, area;
printf("Enter Radius of Circle\n");
scanf("%f", &radius);
area = (float)3.14159 * radius * radius;
printf("Area of Circle %f\n", area);
break;
}
case 4: {
float len, breadth, area;
printf("Enter Length and Breadth of Rectangle\n");
scanf("%f %f", &len, &breadth);
area = (float)len * breadth;
printf("Area of Rectangle is %f\n", area);
break;
}
case 5: {
float base, height, area;
printf("Enter base and height of Parallelogram\n");
scanf("%f %f", &base, &height);
area = (float)base * height;
printf("Enter area of Parallelogram is %f\n", area);
break;
}
default:
printf("Invalid Choice\n");
}
return 0;
}ผลลัพธ์
Run 1: 1 to find area of Triangle 2 for finding area of Square 3 for finding area of Circle 4 for finding area of Rectangle 5 for Parallelogram 5 Enter base and height of Parallelogram 2 4 Enter area of Parallelogram is 8.000000 Run 2: ... 3 Enter Radius of Circle 4.5 Area of Circle is 63.617199