Xácđịnh sốngày của một tháng trong năm

Một phần của tài liệu Bài giảng LẬP TRÌNH C CƠ BẢN (HỆ CAO ĐẲNG CHUYÊN NGHIỆP) (Trang 53 - 58)

CHƯƠNG 3: LẬP TRÌNH MODULE 3.1 Phương pháp lập trình module

3.3.1 Xácđịnh sốngày của một tháng trong năm

Sơ đồ CT cho trong hình 3.5.a.

Hình 3.5.a Sơ đồ CT giải bài toán 3.3.1

Hàm tính số ngày nhận vào tháng và năm trả về số ngày. Trong hàm tinh_so_ngay, ta cần đến hàm kiểm tra năm nhuần (nam_nhuan) để xác định số ngày của tháng 2 – xem hình 3.5.b.

Tháng

(thang) Tính số ngày của tháng trong năm (tinh_so_ngay) Tính số ngày của tháng trong năm (tinh_so_ngay) Năm (nam)

#include …

int nam_nhuan (int nam); // Kiểm tra năm nhuần

int tinh_so_ngay (int thang, int nam); // Tính số ngày trong tháng

int main(int argc, char* argv[]) {

int thang, nam, so_ngay; // Nhập tháng và năm ???

so_ngay = tinh_so_ngay (thang, nam);

Hình 3.5.b Sơ đồ hàm tính số ngày của tháng trong năm

getch (); return 0; }

int nam_nhuan (int nam) // Kiểm tra năm nhuần {

int co_nhuan; // ???

return co_nhuan; }

int tinh_so_ngay (int thang, int nam) // Tính số ngày trong tháng { int so_ngay; // ??? return so_ngay; } 3.3.2 Thực hiện các phép tính +, - , *, / Sơ đồ CT: so_ngay tinh_so_ngay tinh_so_ngay thang 1, 3, 5, 7, 8, 10, 12 Số ngày  31 4, 6, 9, 11 Số ngày  30 2

Kiểm tra năm nhuần Kiểm tra năm nhuần (nam_nhuan)(nam_nhuan) nam Kết quả Kết quả = 1 Số ngày  29 Đúng Số ngày  28

 Giá trị trả về của hàm là kết quả có thực hiện được phép toán hay không. Do đó, để lấy kết quả thực hiện phép toán (trong trường hợp thực hiện được) ta dùng tham chiếu.

#include …

int tinh_toan (char phep_toan, float a, float b, float &ket_qua);

int main(int argc, char* argv[]) {

char phep_toan; float toan_hang_1, toan_hang_2, ket _qua; // Nhập toan_hang_1, toan_hang_2 và phep_toan

// ???

if (tinh_toan (phep_toan, toan_hang_1, toan_hang_2, ket _qua))

printf( “%f %c %f = %f”, toan_hang_1, phep_toan, toan_hang_2, ket_qua); else

printf( “Khong the %f %c %f.”, toan_hang_1, phep_toan, toan_hang_2); getch (); return 0;

}

int tinh_toan(char phep_toan, float a, float b, float &ket_qua) { int tinh_duoc = 1; // ??? Kết quả tính toán (ket_qua) Số ngày (so_ngay) Phép toán (phep_toan) Thực hiện phép

tính giữa toán hạng 1 và toán hạng 2 tùy thuộc vào phép toán (tinh_toan ) Thực hiện phép tính giữa toán hạng 1 và toán hạng 2 tùy thuộc vào phép toán (tinh_toan ) Toán hạng 1 (a) Toán hạng 2 (b)

return tinh_duoc; }

3.3.3.1Giải phương trình bậc 1

Nếu a != 0 thì gọi hàm tính nghiệm (tim_nghiem) để xác định nghiệm của phương trình

Ngược lại:

Nếu b != 0 thì thông báo phương trình vô nghiệm. Ngược lại, thông báo phương trình có vô số nghiệm.

 Hàm tính nghiệm nhận hai hệ số a, b của phương trình bậc 1 ax + b = 0, tính toán và trả về nghiệm.

#include …

float tim_nghiem (float a, float b); // Tính nghiệm phương trình bậc 1 int main(int argc, char* argv[ ])

{

float a, b;

// Nhap vao cac he so cua phương trình bậc 1 // ???

if (a != 0)

printf( “Ptrinh %f x + %f = 0 co nghiem %f”, a, b, tim_nghiem(a, b)); else if (b != 0) printf( “Phuong trinh %f x + %f = 0 vo nghiem”, a, b);

else printf( “Phuong trinh %f x + %f = 0 co vo so nghiem”, a, b); getch (); return 0;

}

float tim_nghiem (float a, float b) // Tính nghiệm phương trình bậc 1 {

float nghiem;

// ???

return nghiem; }

Một phần của tài liệu Bài giảng LẬP TRÌNH C CƠ BẢN (HỆ CAO ĐẲNG CHUYÊN NGHIỆP) (Trang 53 - 58)

Tải bản đầy đủ (DOC)

(103 trang)
w