ปัญหา
ค้นหาพื้นที่ของสี่เหลี่ยม สี่เหลี่ยม สามเหลี่ยม วงกลม โดยใช้คำสั่ง switch case ผู้ใช้ต้องป้อนฐาน ความสูง ด้าน รัศมี ความกว้าง และความยาวที่รันไทม์เพื่อคำนวณพื้นที่ของรูปทรงเรขาคณิตทั้งหมด
วิธีแก้ปัญหา
วิธีแก้ปัญหาในการหาพื้นที่ของสี่เหลี่ยม สี่เหลี่ยม สามเหลี่ยม วงกลม โดยใช้คำสั่ง switch case อธิบายไว้ด้านล่าง -
สูตร
สูตรการหาพื้นที่ของรูปทรงเรขาคณิตตามลำดับมีดังนี้ −
- พื้นที่ของ สี่เหลี่ยมผืนผ้า =กว้าง *ยาว;
- พื้นที่ สี่เหลี่ยม =ด้าน * ด้าน;
- พื้นที่ของ วงกลม =3.142*รัศมี*รัศมี;
- พื้นที่ของ สามเหลี่ยม =0.5 *ฐาน*ความสูง;
ตัวอย่าง
ต่อไปนี้เป็นโปรแกรม C เพื่อ หาพื้นที่ของสี่เหลี่ยม สี่เหลี่ยม สามเหลี่ยม วงกลม โดยใช้คำสั่ง switch case −
#include <stdio.h>
void main(){
int fig_code;
float side, base, length, breadth, height, area, radius;
printf("-------------------------\n");
printf(" 1 --> Circle\n");
printf(" 2 --> Rectangle\n");
printf(" 3 --> Triangle\n");
printf(" 4 --> Square\n");
printf("-------------------------\n");
printf("Enter the Figure code\n");
scanf("%d", &fig_code);
switch(fig_code){
case 1:
printf(" Enter the radius\n");
scanf("%f",&radius);
area=3.142*radius*radius;
printf("Area of a circle=%f\n", area);
break;
case 2:
printf(" Enter the breadth and length\n");
scanf("%f %f",&breadth, &length);
area=breadth *length;
printf("Area of a Rectangle=%f\n", area);
break;
case 3:
printf(" Enter the base and height\n");
scanf("%f %f", &base, &height);
area=0.5 *base*height;
printf("Area of a Triangle=%f\n", area);
break;
case 4:
printf(" Enter the side\n");
scanf("%f", &side);
area=side * side;
printf("Area of a Square=%f\n", area);
break;
default:
printf(" Error in figure code\n");
break;
}
} ผลลัพธ์
เมื่อโปรแกรมข้างต้นทำงาน มันจะให้ผลลัพธ์ดังต่อไปนี้ −
Run 1: ------------------------- 1 --> Circle 2 --> Rectangle 3 --> Triangle 4 --> Square ------------------------- Enter the Figure code 3 Enter the base and height 4 7 Area of a Triangle=14.000000 Run 2: ------------------------- 1 --> Circle 2 --> Rectangle 3 --> Triangle 4 --> Square ------------------------- Enter the Figure code 1 Enter the radius 8 Area of a circle=201.087997