Yêu cầu:
Tính diện tích và chu vi các hình: tam giác, chữ nhật, tròn.
Thuật toán:
- Diện tích tam giác: S = căn bậc 2[P*(P/2 - a)*(P/2 - b)*(P/2 - c)/2] (a, b, c là các cạnh, P: chu vi tam giác) - Chu vi tam giác: P = a + b + c - Diện tích hình tròn: S = 2*PI*R*R (R: bán kính, PI = 3.14) - Chu vi hình tròn: P = 2*PI*R - Diện tích chữ nhật: S = a * b (a, b: là 2 cạnh của hình chữ nhật) - Chu vi chữ nhật: P = (a + b)*2
Code:
/************************************************************ * Author: VNCODING * History * 2014/03/17 first create VNCODING *************************************************************/ #include "stdio.h" #include "conio.h" #include "math.h" #define PI 3.14159 void main() { int n; float a, b, c ; float R; float P; float S; printf("\n 1. Tinh chu vi & dien tich tam giac"); printf("\n 2. Tinh chu vi & dien tich hinh chu nhat"); printf("\n 3. Tinh chu vi & dien tich tron"); printf("\n Ban chon phuong an nao(1, 2 hay 3) = "); scanf("%d", &n); switch(n) { case 1: do { printf("\n Nhap cac canh cua tam giac:\n"); scanf("%f %f %f", &a, &b, &c); } while(a < 0 || b < 0 || c < 0 || (a + b) <= c || (a + c) <= b || (b + c) <= a); P = (a + b + c); S = sqrt(P*(P/2 - a)*(P/2 - b)*(P/2 - c)/2); printf("\n Chu vi tam giac : %f dvdd", P); printf("\n Dien tich tam giac : %f dvdt", S); break; case 2: do { printf("\n Nhap chieu rong hcn: "); scanf("%f", &a); printf("\n Nhap chieu dai hcn: "); scanf("%f", &b); } while(a < 0 || b < 0); P = (a + b)*2; S = a * b; printf("\n Chu vi hinh vuong : %f dvdd", P); printf("\n Dien tich hinh vuong: %f dvdt", S); break; case 3: do { printf("\n Nhap ban kinh duong tron:"); scanf("%f", &R); } while(R <= 0); P = 2 * PI * R; S = PI * R * R; printf("\n Chu vi hinh tron : %f dvdd", P); printf("\n Dien tich hinh tron : %f dvdt", S); break; default: printf("\n Exit"); break; } getch(); }
Kết quả:
1. Tinh chu vi & dien tich tam giac 2. Tinh chu vi & dien tich hinh chu nhat 3. Tinh chu vi & dien tich tron Ban chon phuong an nao(1, 2 hay 3) = 3 Nhap ban kinh duong tron:10 Chu vi hinh tron : 62.831799 dvdd Dien tich hinh tron : 314.158997 dvdt
Leave a Reply
You must be logged in to post a comment.