Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 18 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
18
Dung lượng
1,79 MB
Nội dung
Tiết 11 - §9: 02/12/1502/12/15 Nguyễn Thị Ninh Giang Trang 1 CHƯƠNG III: CẤU TRÚC RẼ NHÁNH VÀ LẶP Nếu … thì… Cách diễn đạt này thuộc dạng thiếu Nếu … thì… , nếu không thì (ngược lại)… Cách diễn đạt này thuộc dạng đủ Mệnh đề 1 Chiều mai nếu trời không mưa thì Châu sẽ tới nhà Ngọc. Mệnh đề 2 Chiều mai nếu trời không mưa thì Ngọc sẽ đến nhà Châu, nếu mưa thì sẽ gọi điện cho Châu để trao đổi. Cấu trúc để mô tả các mệnh đề có dạng như trên được gọi là cấu trúc rẽ nhánh. Cấu trúc để mô tả các mệnh đề có dạng như trên được gọi là cấu trúc rẽ nhánh. Dạng của mệnh đề 1 và 2 là gì? 1. Rẽ nhánh Xét hai mệnh đề sau §9: CẤU TRÚC RẼ NHÁNH Bước 1: Nhập hệ số a,b,c Bước 2: Tính delta D = b 2 – 4ac Bước 3: Kiểm tra D + Nếu D<0: thông báo phương trình vô nghiệm. + Nếu D>=0: phương trình có nghiệm Giải biện luận phương trình bậc hai: ax 2 + bx +c = 0 (a 0) ≠ * Ví dụ: Các bước giải bài toán: §9: CẤU TRÚC RẼ NHÁNH Nhập a, b, c D ← b 2 – 4ac D>=0 ĐúngSai Thông báo vô nghiệm rồi kết thúc Tính và đưa ra nghiệm thực rồi kết thúc Sơ đồ khối: §9: CẤU TRÚC RẼ NHÁNH * Sơ đồ khối: * Hoạt động: Điều kiện Đúng Câu lệnh Sai * Trong đó: IF a mod 2 = 0 THEN Writeln(‘ a la so chan’); * Ví dụ 1: - Điều kiện là biểu thức quan hệ hoặc biểu thức logic. - Câu lệnh là một câu lệnh của TurboPascal. a. Dạng thiếu: IF <Điều kiện> THEN <Câu lệnh>; Nếu < Điều kiện > đúng thì < Câu lệnh > được thực hiện, sai < Câu lệnh > bị bỏ qua. §9: CẤU TRÚC RẼ NHÁNH 2. Câu lệnh if - then - Nếu A< 0 thì đưa ra màn hình câu ‘ A là số âm’ Ví dụ 2: Viết câu lệnh rẽ nhánh dạng thiếu kiểm tra số A có phải là số âm hay không? Gợi ý: - Nếu A >= 0 thì đưa ra màn hình câu ‘A là số không âm’ Ví dụ 3: Viết câu lệnh rẽ nhánh dạng thiếu kiểm tra số A có phải là số không âm hay không? Gợi ý: IF A < 0 THEN Writeln(‘ A la so am’); IF A >= 0 THEN Writeln(‘ A la so khong am’); §9: CẤU TRÚC RẼ NHÁNH * Bài toán: Tìm số lớn nhất của 2 số a và b. → Các câu lệnh kiểm tra tìm số lớn nhất: Ngôn ngữ tự nhiên Ngôn ngữ lập trình TurboPascal Nếu a < b thì gán Max = b; Nếu a > b thì gán Max = a; If a < b then Max:=b; If a > b then Max:=b; §9: CẤU TRÚC RẼ NHÁNH 02/12/15 IF <Điều kiện> THEN <Câu lệnh1> ELSE <Câu lệnh2>; * Hoạt động: * Sơ đồ: IF a mod 2 = 0 THEN Writeln(‘a la so chan’) ELSE Writeln(‘a la so le’); * Ví dụ 1: a. Dạng đủ: Điều kiện Đúng Câu lệnh 1 Sai Câu lệnh 2 Nếu <Điều kiện> đúng thì <Câu lệnh 1> được thực hiện, ngược lại <Câu lệnh 2> được thực hiện. §9: CẤU TRÚC RẼ NHÁNH 02/12/15 - Nếu b > a thì gán max cho b còn ngược lại thì gán max cho a. Ví dụ 2: Viết câu lệnh rẽ nhánh dạng đủ tìm số lớn nhất max trong 2 số a và b. Gợi ý: IF b > a THEN max := b ELSE max := a; Chú ý: Trước từ khoá ELSE không có dấu chấm phẩy “ ; ” §9: CẤU TRÚC RẼ NHÁNH * Bài toán: Giải phương trình bậc hai: ax 2 + bx +c =0 (a ≠ 0) Cách 1: if D < 0 then writeln(‘phuong trinh vo nghiem’) else write(‘phuong trinh co nghiem’); Cách 2: if D < 0 then writeln(‘phuong trinh vo nghiem’); if D >= 0 then write(‘phuong trinh co nghiem’); → Các câu lệnh kiểm tra Delta: §9: CẤU TRÚC RẼ NHÁNH [...]... a,b,c… Delta := .; Nếu (Delta . dụ: Các bước giải bài toán: 9: CẤU TRÚC RẼ NHÁNH Nhập a, b, c D ← b 2 – 4ac D>=0 ĐúngSai Thông báo vô nghiệm rồi kết thúc Tính và đưa ra nghiệm thực rồi kết thúc Sơ đồ khối: 9: CẤU TRÚC. và Output của bài? 9: CẤU TRÚC RẼ NHÁNH Nhập vào NĂM cần tính số lượng ngày thì nhận số ngày của năm nhuận, ngược lại nhận số ngày của năm thường. Em hãy khai báo biến cho bài toán trên? In. < 0 THEN Writeln(‘ A la so am’); IF A >= 0 THEN Writeln(‘ A la so khong am’); 9: CẤU TRÚC RẼ NHÁNH * Bài toán: Tìm số lớn nhất của 2 số a và b. → Các câu lệnh kiểm tra tìm số lớn nhất: Ngôn