Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (931.43 KB, 17 trang )
<span class='text_page_counter'>(1)</span>Giáo viên: Ngô Thị Thảo. Lớp 11K.
<span class='text_page_counter'>(2)</span> KIỂM TRA BÀI CŨ Câu hỏi: Em hãy viết thủ tục đưa dữ liệu ra màn hình? Lấy 1 ví dụ.. Đáp án. - Thủ tục đưa dữ liệu ra màn hình: Write(<Danh sách kết quả ra>); hoặc Writeln(<Danh sách kết quả ra>); - Ví dụ: - write (a,b); - writeln(‘phuong trinh co nghiem’);.
<span class='text_page_counter'>(3)</span> CHƯƠNG 3: CẤU TRÚC RẼ NHÁNH VÀ LẶP. Tiết 14: BÀI 9:. CẤU TRÚC RẼ NHÁNH (t1).
<span class='text_page_counter'>(4)</span> 1. Rẽ nhánh. Nội dung: 2. Câu lệnh if-then.
<span class='text_page_counter'>(5)</span> Bài 9: CẤU TRÚC RẼ NHÁNH 1. Rẽ nhánh * Khái niệm:. Xét Xét hai hai mệnh mệnh đề đề sau: sau: Mệnh đề 1. Dạng của mệnh đề 1 và 2 là gì?. Nếu trời mưa thì Minh sẽ ở nhà xem ti vi.. Nếu … thì… Cách diễn đạt này thuộc dạng thiếu. Mệnh đề 2 Nếu trời mưa thì Minh sẽ ở nhà xem ti vi, nếu trời không mưa (điều kiện ngược lại) thì Minh sẽ đi học nhóm với Hùng. Nếu … thì… , nếu không thì (ngược lại)… Cách diễn đạt này thuộc dạng đủ. Cấu Cấutrúc trúcđể đểmô môtảtảcác cácmệnh mệnhđề đềcó códạng dạngnhư nhưtrên trênđược đượcgọi gọi làlàcấu cấutrúc trúcrẽ rẽnhánh. nhánh..
<span class='text_page_counter'>(6)</span> Bài 9: CẤU TRÚC RẼ NHÁNH 1. Rẽ nhánh * Khái niệm:. * Ví dụ: Giải biện luận phương trình bậc hai:. ax2 + bx +c = 0. (a 0). Các bước giải bài toán: Bước 1: Nhập hệ số a,b,c Bước 2: Tính delta D = b2 – 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.
<span class='text_page_counter'>(7)</span> Nhập a, b, c. Sơ đồ khối:. D:= b2 – 4ac. Sai. Đúng D>=0 ?. Thông báo vô nghiệm rồi kết thúc. Hai câu lệnh có xảy ra đồng thời không?. Tính và đưa ra nghiệm thực rồi kết thúc.
<span class='text_page_counter'>(8)</span> Bài 9: CẤU TRÚC RẼ NHÁNH. 2. Câu lệnh IF…then a. Dạng thiếu: IF < Điều kiện > THEN < Câu lệnh > ; * Trong đó: - Đ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.. * Sơ đồ khối:. Điều kiện. Đúng Câu lệnh. Sai * Hoạt động: * Ví dụ 1: 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. IF a mod 2 = 0 THEN Writeln(‘ a la so chan’);.
<span class='text_page_counter'>(9)</span> Bài 9: CẤU TRÚC RẼ NHÁNH 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ố âm’ IF A < 0 THEN Writeln(‘ A la so am’);. 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 ý:. - Nếu A >= 0 thì đưa ra màn hình câu ‘A là số không âm’ IF A >= 0 THEN Writeln(‘ A la so khong am’);.
<span class='text_page_counter'>(10)</span> * 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;. If a < b then Max:=b;. Nếu a > b thì gán Max = a;. If a > b then Max:=b;.
<span class='text_page_counter'>(11)</span> Bài 9: CẤU TRÚC RẼ NHÁNH 2. Câu lệnh IF…then IF < Điều kiện > THEN < Câu lệnh 1 > b. Dạng đủ: ELSE < Câu lệnh 2 > ; * Sơ đồ:. Sai Điều kiện Câu Câu lệnh lệnh 22. Đúng. Câu lệnh 1. **Hoạt Ví dụđộng: 1: kiện > Writeln(‘ đúng thì a< laCâu lệnh 1 > được thực IF aNếu mod<2Điều = 0 THEN so chan’) hiện, ngược lại < Câu lệnh 2 a> la được thực hiện. ELSE Writeln(‘ so le’);.
<span class='text_page_counter'>(12)</span> Bài 9: CẤU TRÚC RẼ NHÁNH Ví dụ 2: Viết câu lệnh rẽ nhánh dạng đủ kiểm tra số A có phải là số âm hay không âm? Gợi ý: - Nếu A < 0 thì đưa ra màn hình câu ‘ A là số âm’ IF A < 0 THEN Writeln(‘ A la so am’) ELSE writeln(‘A la socâu khong am’); ngược lại thì đưa ra màn hình ‘A là số không âm’. Ví dụ 3: 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 ý: - Nếu gán max còn ngược IF b b> > aa thì THEN maxcho := bb ELSE max lại := thì a; gán max cho a. Chú ý: Trước từ khoá ELSE không có dấu chấm phẩy “ ; ”.
<span class='text_page_counter'>(13)</span> * Bài toán: Giải phương trình bậc hai: ax2 + bx +c =0 (a ≠ 0) → Các câu lệnh kiểm tra Delta: 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’);.
<span class='text_page_counter'>(14)</span> Tìm giống và khác nhau giữa 2 dạng. Khác nhau: + Dạng thiếu: điều kiện sai sẽ bỏ qua câu lệnh. + Dạng đủ: điều kiện sai sẽ thực hiện câu lệnh 2. Giống nhau: + là câu lệnh cấu trúc rẽ nhánh + khi gặp điều kiện sẽ thực hiện thao tác thích hợp..
<span class='text_page_counter'>(15)</span> Củng cố Cấu trúc mệnh đề có dạng: “Nếu ... thì ...” “Nếu ... thì ..., ngược lại ...” gọi là cấu trúc rẽ nhánh Lệnh rẽ nhánh dạng thiếu IF < Điều kiện > THEN < Câu lệnh > ;. Lệnh rẽ nhánh dạng đủ IF < Điều kiện > THEN < Câu lệnh 1 > ELSE < Câu lệnh 2 > ;.
<span class='text_page_counter'>(16)</span> * Bài tập củng cố: 1. Hãy viết câu lệnh thể hiện: nếu x bằng 1 thì đưa ra màn hình thông báo “x la so nguyen to”. If x = 1 then Writeln(x, ‘ la so nguyen to’); 2. Hãy viết câu lệnh thể hiện: nếu a chia hết cho 5 thì đưa ra màn hình thông báo “a la so chia het cho 5”, ngược lại đưa ra “a la so khong chia het cho 5”. If (a mod 2 =0) then Writeln(a, ‘ la so chia het cho 5’) Else Writeln(a, ‘ la so khong chia het cho 5’);.
<span class='text_page_counter'>(17)</span> •Hướng dẫn về nhà học - Học cấu trúc và hoạt động của câu lệnh If…then dạng đủ và dạng thiếu. - Đọc trước phần 3, 4 SGK và trả lời câu hỏi: Nếu sau Then hoặc Else nhiều hơn 1 câu lệnh thì giải quyết như thế nào?.
<span class='text_page_counter'>(18)</span>