1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Giáo án Tin học 11 - Bài 9: Cấu trúc rẽ nhánh

5 70 0

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Nội dung

3 điểm Đoạn chương trình như sau: if b - a = c - b then writea, b, c,‘ lap thanh cap so cong’ else writea, b, c,’ khong la cap so cong’; 3.Bài giảng: Thời Nội dung Hoạt động của Giá[r]

(1)§9 CẤU TRÚC RẼ NHÁNH (Tiết 2) Ngày soạn:……/……/ 2008 Ngày dạy:……/……/2008 Người soạn: Mai Ngọc Hà Giảng viên hướng dẫn: Ths Ngô Thị Tú Quyên I.Mục đích, yêu cầu: Viết các lệnh rẽ nhánh, câu lệnh ghép và áp dụng để thể thuật toán số toán đơn giản II Chuẩn bị Giáo viên và Học sinh Giáo viên Chuẩn bị bảng phụ: Program Giai_PTB2; Uses crt; Var a, b, c: read; D, x1, x2: read; begin Clrscr; Write(‘ a, b, c ‘); Readln( a, b, c ); D:= b * b - * a * c; If D < then writeln(‘ phuong else begin X1 := ( - b - sqrt(D)) / (2*a); X2:= - b /a - x1; Writeln(‘ x1 = ’, x1:8:3, ‘ x2 = ’, x2:8:3); end; Readln end H ọc sinh: Đọc bài trước nhà trinh vo nghiem’) II.Nội dung chính Ổn định tổ chức lớp.(1’) Lớp: Sĩ số: Vắng: Có Phép: 2.Kiểm tra bài cũ: (5’) Câu hỏi: Câu 1: So sánh giống và khác câu lệnh if-then dạng thiếu và dạng đủ? Lop11.com (2) Câu 2: Em hãy viết đoạn chương trình kiểm tra số a, b, c nguyên dương xem số này có lập thành cấp số cộng hay không và thông báo kết màn hình Đáp án: Câu 1.( điểm ) - Sự giống nhau: Cùng là câu lệnh cấu trúc rẽ nhánh - Sự khác nhau: + if-then dạng thiếu: Nếu điều kiện không đúng thì thoát khỏi cấu trúc rẽ nhánh + if-then dạng đủ: Nếu điều kiện không đúng thì thực câu lệnh thoát khỏi cấu trúc rẽ nhánh Câu 2.( điểm ) Đoạn chương trình sau: if (( b - a ) = ( c - b )) then write(a, b, c,‘ lap cap so cong’) else write(a, b, c,’ khong la cap so cong’); 3.Bài giảng: Thời Nội dung Hoạt động Giáo Viên và Học Sinh gian Gv: Tiết trước các em đã học cấu trúc rẽ nhánh, biết cấu trúc câu lệnh if-then dạng thiếu dạng đủ, câu lệnh ghép và hoạt động chúng Để các em hiểu rõ các câu lệnh này, biết cách sử dụng chúng, hôm ta học tiếp bài trước Một số ví dụ Gv: Đọc ví dụ và ghi lên bảng *Ví dụ 1: Tìm nghiệm thực 13’ Hs: Nghe và ghi bài Gv:Một em hãy xác định input, output phương trình bậc hai: ax + bx + c = (với a ≠ 0) bài toán Hs trả lời + Input: Các hệ số a, b, c Gv: Nhận xét, ghi bảng Hs: Nghe giảng, ghi bài nhập từ bàn phím + Output: Đưa màn hình Gv: Từ input, output bài toán ta các nghiệm thực thông đã có thể xác định các biến cần dùng báo “ phuong trinh vo bài toán Yêu cầu học sinh xác nghiem” định các biến, có bao nhiêu biến vào? Bao nhiêu biến ra? Biến trung gian? Và các biến này có kiểu liệu gì? Program Giai_PTB2; Uses crt; Hs trả lời: Dùng biến vào a, b, c Hai Var a, b, c: read; biến x1, x2 Biến trung gian D Các D, x1, x2: read; biến này kiểu thực Begin Gv: Bài toán tìm nghiệm phương Clrscr; trình bậc hai đã quen thuộc với các Lop11.com (3) Write(‘ a, b, c ‘); Readln( a, b, c ); D:= b * b - * a * c; If D < then writeln(‘ phuong trinh vo nghiem’) else begin X1:=(-b-sqrt(D))/(2*a); X2:= - b /a-x1; Writeln(‘x1 = ’, x1:8:3, ‘ x2 = ’, x2:8:3); end; Readln End - Xét trường hợp D 10’ em Vậy em hãy nêu ý tưởng bài toán với việc xét hai giá trị D, là D < và ngược lại D >= Hs trả lời: Tính D Xét D: Nếu D < thì thông báo phương trình vô nghiệm, ngược lại thì tính các nghiệm x1, x2, đưa kết x1, x2 màn hình Gv: Với cách diễn đạt trên chúng ta phải dùng câu lệnh gì để kiểm tra điều kiện D? Hs trả lời: Câu lệnh if-then dạng đủ Gv: Cô có chương trình hoàn thiện bài toán sau: ( treo bảng phụ ) Gv: Phân tích chương trình Trong câu lệnh if-then hỏi học sinh đâu là diều kiện, đâu là câu lệnh? Hs: Chú ý nghe giảng, ghi bài, trả lời câu hỏi Gv: Đối với câu lệnh ghép, ta không dùng cặp từ khóa begin-end thì câi lệnh2 là câu lệnh gì? Hs trả lời: Câu lệnh gán tính x1 Gv nhận xét: Vậy chạy chương trình có cho kết đúng không? Hs trả lời: Không Gv: Phân tích với trường hợp D<0 và ngược lại Hs: Chú ý lắng nghe Gv nhận xét: Khi câu lệnh chương trình là câu lệnh ghép mà ta không đặt chúng từ khoá begin-end thì chương trình sai Chính vì các em nhớ chú ý sử dụng câu lệnh ghép cho đúng Hs chú ý nghe giảng Gv: Vừa là chương trình xét trường hợp D Vậy xét trường hợp D thì thong báo nghiệm nào? Một em hãy cho cô biết với D < 0, D = 0, D > thì nghiệmcủa phương trình nào? Lop11.com (4) If D < then writeln(‘phuong trinh vo nghiem’) else if D = then writeln(‘x1 = x2 = ’, -b/(2*a):8:2) else begin x1:=(-b-sqrt(D))/(2*a); x2:=-b/a - x1; Writeln(‘ x1 = ’, x1:8:3, ‘ x2 = ’, x2:8:3); end; *Ví dụ 2: Tìm số ngày 12’ năm N + Input: N nhập từ bàn phím + Output: Đưa số ngày năm N màn hình Biết năm nhuận là năm chia hết cho 400 chia hết cho không chia hết cho 100 Ví dụ: Các năm 2000, 2004 là năm nhuận và có số ngày là 366, các năm 1900, 1945 không phải là năm nhuận và có số ngày là 365 Chương trình program Nam_nhuan; uses crt; var N, SN: integer; Hs trả lời Gv: Nhận xét, và diễn đạt lời đoạn chương trình kiểm tra D: Nếu D < thì thông báo phương trình vô nghiệm, ngược lại thì xét D = thì thông báo phương trình vô nghiệm, ngược lại thì tính các nghiệm x1, x2 thông báo kết màn hình Vậy em hãy viết đoạn trương trình thể cách diễn đạt trên? Hs: Chú ý lắng nghe và viết đoạn chương trình Gv: Nhận xét và hỏi học sinh, đoạn chuơng trình vừa đâu là điều kiện, đâu là câu lệnh? Hs trả lời Gv: Nhận xét, nêu hoạt động đoạn chương trình Câu lệnh if – then dạng đủ có thể lồng Hs chú ý nghe giảng Gv: Chúng ta vừa giải bài toán tìm nghiệm phương trình bậc hai với hai cách xét D Tiếp theo cô trò ta chuyển sang ví dụ Gv: Một em hãy xác định input, output bài toán? Hs trả lời Gv: Nhận xét, ghi bảng Hs ghi bài Gv: Có em nào biết năm nhuận là năm nào không? Năm nhuận có bao nhiêu ngày, năm không nhuận thì có bao nhiêu ngày? Hs trả lời Gv: Nhận xét, lấy ví dụ năm 2000, 2004 là năm nhuận, số ngày năm là 366, phân tích cho học sinh thấy vì năm đó lại là năm nhuận Năm 1900, 1945 không phải năm nhuận thì có số ngày là 365 Phân tích cho học sinh thấy vì năm đó không là năm nhuận Hs chú ý lắng nghe Hs: Nghe giảng và ghi bài Lop11.com (5) begin clrscr; write(‘ Nam: ’); readln(N); if ( N mod 400 = ) or ( N mod = 0) and ( N mod 100 <> ) then SN:= 366 else Sn:= 365; writeln(‘ so cua nam ’, N, ‘ la ’, SN); readln end Gv: Để kiểm tra N chia hết cho 400 chia hết cho không chia hết cho 100 thì số ngày là 366, ngược lại số ngày là 365 thì ta phải sử dụng câu lệnh gì? Hs trả lời: Dùng câu lệnh if-then dạng đủ Gv: Để kiểm tra N có chia hết hay không chia hết cho số ta dùng phép toán gì? Để diễn tả điều kiện (N chia hết cho 400 chia hết cho 4) ta phải dùng phép toán gì? Để diễn tả đồng thời hai điều kiện cùng sảy phải dùng phép toán gì? Hs trả lời: Phép toán mod, or, and Gv: Nhận xét, viết hoàn chỉnh chương trình Hs: Nghe giảng, ghi bài Gv: Lấy ví dụ N=2008, gọi học sinh đứng dậy thực chương trình Hs trả lời Gv nhận xét Gv: lấy ví dụ N = 1980, gọi học sinh khác chạy chương trình Hs trả lời Gv: Gọi học sinh khác nhận xét, giáo viên nhận xét III Củng cố, dặn dò.(4’) Qua ví dụ trên các em nhớ sử dụng câu if-then, câu lệnh ghép cho đúng, hoạt động chúng Và ghi nhớ các chú ý mà tiết trước cô đã nêu viết chương trình Các em nhà còn em nào chưa làm hết bài tập tiết trước cô cho thì nhà tiếp tục làm Và đọc trước bài 10 - Cấu trúc lặp Bài tập thêm: 1) Nhập vào số, kiểm tra xem số đó có là cạnh tam giác hay không đưa kết màn hình 2) Tìm số ngày tháng Biết tháng 1, 3, 5, 7, 8, 10, 12 có 31 ngày, tháng 4, 6, 9, 11 có 30 ngày, còn tháng có 29 ngày là năm nhuận ngược lại thì có 28 ngày IV Rút kinh nghiệm: Lop11.com (6)

Ngày đăng: 01/04/2021, 04:12

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w