Yêu cầu
Xây dựng chương trình tính tiền điện hàng tháng
- Input: Người dùng nhập vào giá trị số điện tiêu thụ hàng tháng
- Output: Hiển thị ra màn hình số tiền cần phải đóng, biết rằng:
Bậc |
Số kWh sử dụng |
Giá bán điện (đồng/kWh) |
Bậc 1 |
Cho kWh từ 0 - 50 |
1.678 |
Bậc 2 |
Cho kWh từ 51 - 100 |
1.734 |
Bậc 3 |
Cho kWh từ 101 - 200 |
2.014 |
Bậc 4 |
Cho kWh từ 201 - 300 |
2.536 |
Bậc 5 |
Cho kWh từ 301 - 400 |
2.834 |
Bậc 6 |
Cho kWh từ 401 trở lên |
2.927 |
Hướng dẫn giải
Lưu đồ (FlowChart)
Code
- Tạo file "lab_3_3.c"
- Nội dung file:
/*
BÀI 3: XÂY DỰNG CHƯƠNG TRÌNH TÍNH TIỀN ĐIỆN
Input: Nhập vào số điện tiêu thụ hàng tháng
Output: Hiển thị số tiền cần phải đóng
Biết rằng:
TT Số kWh sử dụng Giá bán điện (đồng/kWh)
Bậc 1 Cho kWh từ 0 - 50 1.678
Bậc 2 Cho kWh từ 51 - 100 1.734
Bậc 3 Cho kWh từ 101 - 200 2.014
Bậc 4 Cho kWh từ 201 - 300 2.536
Bậc 5 Cho kWh từ 301 - 400 2.834
Bậc 6 Cho kWh từ 401 trở lên 2.927
*/
#include<stdio.h>
#include<conio.h>
#include<math.h>
int main() {
// 1. Khai báo biến
float tong_so_dien_tieu_thu;
// 2. INPUT nhập liệu
printf("Moi so tong so dien tieu thu: ");
scanf("%f", &tong_so_dien_tieu_thu);
// 3. PROCESS xử lý tính toán theo Nghiệp vụ Logic
float gia_tien_bac_1 = 1.678;
float gia_tien_bac_2 = 1.734;
float gia_tien_bac_3 = 2.014;
float gia_tien_bac_4 = 2.536;
float gia_tien_bac_5 = 2.834;
float gia_tien_bac_6 = 2.927;
float so_kwh_tinh_tien_bac_1 = 0;
float so_kwh_tinh_tien_bac_2 = 0;
float so_kwh_tinh_tien_bac_3 = 0;
float so_kwh_tinh_tien_bac_4 = 0;
float so_kwh_tinh_tien_bac_5 = 0;
float so_kwh_tinh_tien_bac_6 = 0;
float so_tien_phai_tra_bac_1 = 0;
float so_tien_phai_tra_bac_2 = 0;
float so_tien_phai_tra_bac_3 = 0;
float so_tien_phai_tra_bac_4 = 0;
float so_tien_phai_tra_bac_5 = 0;
float so_tien_phai_tra_bac_6 = 0;
float tong_so_tien_phai_tra = 0;
float so_kwh_con_lai_chua_tinh_tien = 0;
if(tong_so_dien_tieu_thu >= 0 && tong_so_dien_tieu_thu <= 50) {
printf("bac 1\n");
// Xai trong dinh muc dien bac 1 (0 - 50 kWh)
so_kwh_tinh_tien_bac_1 = tong_so_dien_tieu_thu;
so_tien_phai_tra_bac_1 = so_kwh_tinh_tien_bac_1 * gia_tien_bac_1;
tong_so_tien_phai_tra = tong_so_dien_tieu_thu * gia_tien_bac_1;
}
else if(tong_so_dien_tieu_thu >= 51 && tong_so_dien_tieu_thu <= 100) {
printf("bac 2\n");
// Xai den dinh muc dien bac 2 (51 - 100 kWh)
// => tien dien bac 1 la phai tra du
so_kwh_tinh_tien_bac_1 = 50;
so_tien_phai_tra_bac_1 = so_kwh_tinh_tien_bac_1 * gia_tien_bac_1;
tong_so_tien_phai_tra += so_tien_phai_tra_bac_1;
so_kwh_con_lai_chua_tinh_tien = tong_so_dien_tieu_thu - so_kwh_tinh_tien_bac_1;
// tinh tien bac 2
so_kwh_tinh_tien_bac_2 = so_kwh_con_lai_chua_tinh_tien;
so_tien_phai_tra_bac_2 = so_kwh_tinh_tien_bac_2 * gia_tien_bac_2;
tong_so_tien_phai_tra += so_tien_phai_tra_bac_2;
}
else if(tong_so_dien_tieu_thu >= 101 && tong_so_dien_tieu_thu <= 200) {
printf("bac 3\n");
// Xai den dinh muc dien bac 3 (101 - 200 kWh)
// => tien dien bac 1 la phai tra du
so_kwh_tinh_tien_bac_1 = 50;
so_tien_phai_tra_bac_1 = so_kwh_tinh_tien_bac_1 * gia_tien_bac_1;
tong_so_tien_phai_tra += so_tien_phai_tra_bac_1;
so_kwh_con_lai_chua_tinh_tien = tong_so_dien_tieu_thu - so_kwh_tinh_tien_bac_1;
// => tien dien bac 2 la phai tra du
so_kwh_tinh_tien_bac_2 = 50;
so_tien_phai_tra_bac_2 = so_kwh_tinh_tien_bac_2 * gia_tien_bac_2;
tong_so_tien_phai_tra += so_tien_phai_tra_bac_2;
so_kwh_con_lai_chua_tinh_tien -= so_kwh_tinh_tien_bac_2;
// tinh tien bac 3
so_kwh_tinh_tien_bac_3 = so_kwh_con_lai_chua_tinh_tien;
so_tien_phai_tra_bac_3 = so_kwh_tinh_tien_bac_3 * gia_tien_bac_3;
tong_so_tien_phai_tra += so_tien_phai_tra_bac_3;
}
else if(tong_so_dien_tieu_thu >= 201 && tong_so_dien_tieu_thu <= 300) {
printf("bac 4\n");
// Xai den dinh muc dien bac 4 (201 - 300 kWh)
// => tien dien bac 1 la phai tra du
so_kwh_tinh_tien_bac_1 = 50;
so_tien_phai_tra_bac_1 = so_kwh_tinh_tien_bac_1 * gia_tien_bac_1;
tong_so_tien_phai_tra += so_tien_phai_tra_bac_1;
so_kwh_con_lai_chua_tinh_tien = tong_so_dien_tieu_thu - so_kwh_tinh_tien_bac_1;
// => tien dien bac 2 la phai tra du
so_kwh_tinh_tien_bac_2 = 50;
so_tien_phai_tra_bac_2 = so_kwh_tinh_tien_bac_2 * gia_tien_bac_2;
tong_so_tien_phai_tra += so_tien_phai_tra_bac_2;
so_kwh_con_lai_chua_tinh_tien -= so_kwh_tinh_tien_bac_2;
// => tien dien bac 3 la phai tra du
so_kwh_tinh_tien_bac_3 = 100;
so_tien_phai_tra_bac_3 = so_kwh_tinh_tien_bac_3 * gia_tien_bac_3;
tong_so_tien_phai_tra += so_tien_phai_tra_bac_3;
so_kwh_con_lai_chua_tinh_tien -= so_kwh_tinh_tien_bac_3;
// tinh tien bac 4
so_kwh_tinh_tien_bac_4 = so_kwh_con_lai_chua_tinh_tien;
so_tien_phai_tra_bac_4 = so_kwh_tinh_tien_bac_4 * gia_tien_bac_4;
tong_so_tien_phai_tra += so_tien_phai_tra_bac_4;
}
else if(tong_so_dien_tieu_thu >= 301 && tong_so_dien_tieu_thu <= 400) {
printf("bac 5\n");
// Xai den dinh muc dien bac 5 (301 - 400 kWh)
// => tien dien bac 1 la phai tra du
so_kwh_tinh_tien_bac_1 = 50;
so_tien_phai_tra_bac_1 = so_kwh_tinh_tien_bac_1 * gia_tien_bac_1;
tong_so_tien_phai_tra += so_tien_phai_tra_bac_1;
so_kwh_con_lai_chua_tinh_tien = tong_so_dien_tieu_thu - so_kwh_tinh_tien_bac_1;
// => tien dien bac 2 la phai tra du
so_kwh_tinh_tien_bac_2 = 50;
so_tien_phai_tra_bac_2 = so_kwh_tinh_tien_bac_2 * gia_tien_bac_2;
tong_so_tien_phai_tra += so_tien_phai_tra_bac_2;
so_kwh_con_lai_chua_tinh_tien -= so_kwh_tinh_tien_bac_2;
// => tien dien bac 3 la phai tra du
so_kwh_tinh_tien_bac_3 = 100;
so_tien_phai_tra_bac_3 = so_kwh_tinh_tien_bac_3 * gia_tien_bac_3;
tong_so_tien_phai_tra += so_tien_phai_tra_bac_3;
so_kwh_con_lai_chua_tinh_tien -= so_kwh_tinh_tien_bac_3;
// => tien dien bac 4 la phai tra du
so_kwh_tinh_tien_bac_4 = 100;
so_tien_phai_tra_bac_4 = so_kwh_tinh_tien_bac_4 * gia_tien_bac_4;
tong_so_tien_phai_tra += so_tien_phai_tra_bac_4;
so_kwh_con_lai_chua_tinh_tien -= so_kwh_tinh_tien_bac_4;
// tinh tien bac 5
so_kwh_tinh_tien_bac_5 = so_kwh_con_lai_chua_tinh_tien;
so_tien_phai_tra_bac_5 = so_kwh_tinh_tien_bac_5 * gia_tien_bac_5;
tong_so_tien_phai_tra += so_tien_phai_tra_bac_5;
}
else {
printf("bac 6\n");
// Xai den dinh muc dien bac 6 (401 kWh tro len)
// => tien dien bac 1 la phai tra du
so_kwh_tinh_tien_bac_1 = 50;
so_tien_phai_tra_bac_1 = so_kwh_tinh_tien_bac_1 * gia_tien_bac_1;
tong_so_tien_phai_tra += so_tien_phai_tra_bac_1;
so_kwh_con_lai_chua_tinh_tien = tong_so_dien_tieu_thu - so_kwh_tinh_tien_bac_1;
// => tien dien bac 2 la phai tra du
so_kwh_tinh_tien_bac_2 = 50;
so_tien_phai_tra_bac_2 = so_kwh_tinh_tien_bac_2 * gia_tien_bac_2;
tong_so_tien_phai_tra += so_tien_phai_tra_bac_2;
so_kwh_con_lai_chua_tinh_tien -= so_kwh_tinh_tien_bac_2;
// => tien dien bac 3 la phai tra du
so_kwh_tinh_tien_bac_3 = 100;
so_tien_phai_tra_bac_3 = so_kwh_tinh_tien_bac_3 * gia_tien_bac_3;
tong_so_tien_phai_tra += so_tien_phai_tra_bac_3;
so_kwh_con_lai_chua_tinh_tien -= so_kwh_tinh_tien_bac_3;
// => tien dien bac 4 la phai tra du
so_kwh_tinh_tien_bac_4 = 100;
so_tien_phai_tra_bac_4 = so_kwh_tinh_tien_bac_4 * gia_tien_bac_4;
tong_so_tien_phai_tra += so_tien_phai_tra_bac_4;
so_kwh_con_lai_chua_tinh_tien -= so_kwh_tinh_tien_bac_4;
// => tien dien bac 5 la phai tra du
so_kwh_tinh_tien_bac_5 = 100;
so_tien_phai_tra_bac_5 = so_kwh_tinh_tien_bac_5 * gia_tien_bac_5;
tong_so_tien_phai_tra += so_tien_phai_tra_bac_5;
so_kwh_con_lai_chua_tinh_tien -= so_kwh_tinh_tien_bac_5;
// tinh tien bac 6
so_kwh_tinh_tien_bac_6 = so_kwh_con_lai_chua_tinh_tien;
so_tien_phai_tra_bac_6 = so_kwh_tinh_tien_bac_6 * gia_tien_bac_6;
tong_so_tien_phai_tra += so_tien_phai_tra_bac_6;
}
// 4. OUTPUT xuất ra màn hình
printf("====== CHUONG TRINH TINH TIEN DIEN THEO BAC ======\n");
printf("Thong tin:\n");
printf("- Tong so dien tieu thu: %f \n", tong_so_dien_tieu_thu);
printf("- Bac 1: %f kWh * %f = %f \n", so_kwh_tinh_tien_bac_1, gia_tien_bac_1, so_tien_phai_tra_bac_1);
printf("- Bac 2: %f kWh * %f = %f \n", so_kwh_tinh_tien_bac_2, gia_tien_bac_2, so_tien_phai_tra_bac_2);
printf("- Bac 3: %f kWh * %f = %f \n", so_kwh_tinh_tien_bac_3, gia_tien_bac_3, so_tien_phai_tra_bac_3);
printf("- Bac 4: %f kWh * %f = %f \n", so_kwh_tinh_tien_bac_4, gia_tien_bac_4, so_tien_phai_tra_bac_4);
printf("- Bac 5: %f kWh * %f = %f \n", so_kwh_tinh_tien_bac_5, gia_tien_bac_5, so_tien_phai_tra_bac_5);
printf("- Bac 6: %f kWh * %f = %f \n", so_kwh_tinh_tien_bac_6, gia_tien_bac_6, so_tien_phai_tra_bac_6);
printf("- Tong tien phai tra: %f \n", tong_so_tien_phai_tra);
getch(); // Lenh dung man hinh
return 0;
}
|