Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม C

โปรแกรม C คำนวณพื้นที่รูปหลายรูปด้วย Switch Case

ปัญหา

เขียนโปรแกรมคำนวณพื้นที่สามเหลี่ยม, สี่เหลี่ยมจัตุรัส, วงกลม, สี่เหลี่ยมผืนผ้า, 平行四邊形 โดยใช้ 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