+ Đọc, tìm hiểu ý nghĩa của các câu lệnh trong các bài tập có sử dụng câu lệnh lặp với số lần chưa biết trước kết hợp với cấu trúc điều khiển.. + Đọc trước bài mới và trả lời câu hỏi sau[r]
(1)Giáo án Ngày soạn: 01/03/2011 Ngày dạy: 05/03/2011 Lớp: Giáo viên hướng dẫn: Lê Đình Trung Giáo viên dạy: Cái Thị Hạ Ngân Tiết 52, Bài thực hành SỬ DỤNG LỆNH LẶP WHILE DO T2) A MỤC TIÊU Sau học xong bài này học sinh cần đạt các mục tiêu sau: Kiến thức: - Hiểu các câu lệnh lặp với số lần chưa biết trước chương trình có sẵn - Biết lựa chọn câu lệnh lặp với số lần chưa biết trước với số lần biết trước phù hợp với tình cụ thể - Biết vai trò việc kết hợp các cấu trúc điều khiển Kỹ năng: - Rèn luyện kĩ khai báo, sử dụng biến - Rèn luyện khả đọc chương trình Thái độ: - Hình thành phương pháp làm việc khoa học - Vận dụng vào học tập và thực tiễn B.Chuẩn bị Giáo viên - Bài giảng điện tử - Giáo án - Máy tính, Projector Học sinh - SGK, và dụng cụ học tập C Phương pháp - Thuyết trình - Vấn đáp - Trực quan, hướng dẫn thực hành - Phát và giải vấn đề D Tiến trình lên lớp I Ổn định tổ chức(1p) - Ổn định chổ ngồi học sinh - Kiểm tra sĩ số( vắng…phép,…không phép) II Kiểm tra bài cũ(5p) Câu hỏi : Trình bày cú pháp câu lệnh lặp với số lần chưa biết trước Và giải thích? Đáp án: while <điều kiện> <câu lệnh>; Bước 1: Kiểm tra điều kiện Bước 2: Lop7.net CÁI THỊ HẠ NGÂN (2) Giáo án Nếu điều kiện đúng thì thực câu lệnh và quay lại bước để định có kết thúc hay không Nếu điều kiện sai thi câu lệnh bị bỏ qua và việc thực lệnh lặp kết thúc Lưu ý: Câu lệnh có thể là câu lệnh đơn hay câu lệnh phức III Triển khai bài (35p) Ở tiết trước các em đã tìm hiểu nội dung Lặp với số lần chưa biết trước Qua đó, đã biết điểm khác biệt câu lệnh lặp với số lần biết trước và câu lệnh lặp với số lần chưa biết trước Để hiểu tác dụng các câu lệnh lặp với số lần chưa biết trước và hiểu vai trò việc kết hợp các cấu trúc điều khiển Chúng ta vào bài thực hành SỬ DỤNG LỆNH LẶP WHILE DO (2p) HOẠT ĐỘNG CỦA THẦY VÀ TRÒ Hoạt động 1: Trình bày mục đích yêu cầu(3p) Tiết học hôm chúng ta phải thực các nội dung sau: Đọc và tìm hiểu ý nghĩa câu lệnh chương trình cụ thể Gõ, dịch và chạy thử chương trình với vài độ chính xác khác Thực các nội dung đó xem chúng ta đã mục đích yêu cầu bài học Hoạt động 2: Thực hành - Bài tập (30p) Hoạt động 2.1: Tìm hiểu bài tập trang 73 sgk GV: Gọi HS đọc đề bài sách giáo khoa Yêu cầu HS còn lại chú ý lắng nghe Ghi đề lên bảng HS: Đọc bài tập GV: * Đặt câu hỏi: Xác định Input và Output bài toán? * Gọi 2- HS trả lời HS: Trả lời GV: Cho HS suy nghĩ vòng phút? * Đặt câu hỏi: Bài toán này chúng ta nên xây dựng hướng (giải quyết) nào? * Gọi 2- HS trả lời HS: Trả lời GV: Khái quát Kiểm tra N có chia hết cho các số tự nhiên ≤ i ≤ N hay không Kiểm tra tính chia hết phép chia lấy phần dư (mod) HS: Trả lời Lop7.net NỘI DUNG BÀI MỚI Mục đích yêu cầu Đọc và tìm hiểu ý nghĩa câu lệnh chương trình cụ thể Gõ, dịch và chạy thử chương trình với vài độ chính xác khác Thực hành - Bài tập Tìm hiểu chương trình nhận biết số tự nhiên N nhập vào từ bàn phím có phải là số nguyên tố hay không? + Input: Số tự nhiên N + Output: Trả lời N là số nguyên tố N không là số nguyên tố * Ý tưởng: Kiểm tra N có chia hết cho các số tự nhiên ≤ i ≤ N hay không Kiểm tra tính chia hết phép chia lấy phần dư (mod) CÁI THỊ HẠ NGÂN (3) Giáo án GV: Để kiểm tra N có phải số nguyên tố hay không ta kiểm tra xem N có chia hết cho các số từ đến N – hay không Nếu N không chia hết cho số nào khoảng từ đến N – thì N là số nguyên tố, ngược lại chia hết cho bất kì số nào khoảng từ đến N – thì N không phải là số nguyên tố Sử dụng phép chia lấy phần dư để kiểm tra tính chia hết HS: Theo dõi GV: Từ bài toán đó, cô xây dựng nên thuật toán * Thuật toán: sau: + Bước 1: Nhập số tự nhiên N từ bàn phím + Bước 1: Nhập số tự nhiên N từ + Bước 2: Nếu N<= thông báo N không bàn phím + Bước 2: Nếu N<= thông báo phải là số tự nhiên, chuyển đến bước + Bước 3: Nếu N > 0; N không phải là số tự nhiên, chuyển đến bước 3.1 i 3.2 Trong N mod i <> còn đúng thì + Bước 3: Nếu N > 0; i i +1; 3.1 i 3.3 Nếu i = N thì thông báo N là số nguyên 3.2 Trong N mod i <> còn tố, chuyển đến bước Ngược lại, thông đúng thì i i +1; báo N không phải là số nguyên tố; + Bước 4: Kết thúc 3.3 Nếu i = N thì thông báo N là HS: Theo dõi số nguyên tố, chuyển đến GV: Từ thuật toán đó, cô xây dựng nên chương bước Ngược lại, thông báo N trình sau: không phải là số nguyên tố; Nhiệm vụ các em bây là: Đọc và tìm + Bước 4: Kết thúc hiểu ý nghĩa câu lệnh chương trình Hoạt động 2.2: Đọc và tìm hiểu ý nghĩa * Đọc và tìm hiểu ý nghĩa từng câu lệnh chương trình câu lệnh chương trình PROGRAM SO_NGUYEN_TO; VAR N, I: INTEGER; BEGIN WRITE (' NHAP VAO MOT SO NGUYEN: '); READLN(N); IF N <= THEN WRITE(N,' KHONG PHAI LA SO NGUYEN TO') ELSE BEGIN I:= 2; WHILE (N MOD I<>0) DO I:= I+1; IF I = N THEN WRITE(N,' LA SO NGUYEN TO') ELSE Lop7.net CÁI THỊ HẠ NGÂN (4) Giáo án WRITE(N,' KHONG PHAI LA SO NGUYEN TO'); END; READLN; END HS: Theo dõi GV: Ở chương trình này đã sử dụng câu lệnh nào? HS: Trả lời GV: Những biến nào cần khai báo? Kiểu gì? HS: Trả lời GV: Sau khai báo ta thực việc nhập vào số nguyên Để thực việc nhập ta sử dụng câu lệnh gì? HS: Trả lời GV: Sau đó, tiến hành kiểm tra số nguyên vừa nhập có phải là số nguyên tố hay không Để kiểm tra điều kiện ban đầu ta sử dụng câu lệnh gì? * Thế nào là số nguyên tố? HS: Trả lời GV: Ở chương trình này I gọi là biến đếm (hay biến chạy) Biến đếm gán giá trị bao nhiêu? HS: Được gán giá trị là GV: Sau đó ta kiểm tra tính chia hết Ở đây, để kiểm tra phép chia hết ta sử dụng phép chia lấy phần dư mod Vậy, câu lệnh mod có ý nghĩa gì? HS: Trả lời GV: Trong phần dư đó khác ta tăng biến đếm I lên đơn vị Khi đó, biến đếm I có giá trị số nguyên N ta kết luận đó là số nguyên tố; ngược lại không phải là số nguyên tố HS: Chú ý theo dõi và nge giảng Hoạt động 2.3: Gõ chương trình vào máy, chạy chương trình và kiểm tra kết GV: Gõ chương trình vào máy, dịch và chạy chương trình để kiểm tra kết HS: Thực GV: Theo dõi bao quát để chỉnh sửa lỗi cho HS HS: Thực sửa lỗi để hoàn thiện chương trình * Nếu HS nào làm xong thì cho lên bảng thực Lop7.net * Câu lệnh lặp với số lần chưa biết trước và cấu trúc điều khiển * Khai báo biến N, I kiểu INTEGER * WRITE (' NHAP VAO MOT SO NGUYEN: '); READLN(N); * Câu lệnh điều kiện * Số nguyên tố là các số tự nhiên lớn 1, chia hết cho và cho chính nó * Được gán giá trị là * Kiểm tra tính chia hết b.Gõ chương trình vào máy, chạy chương trình và kiểm tra kết PROGRAM SO_NGUYEN_TO; VAR N, I: INTEGER; BEGIN WRITE (' NHAP VAO MOT SO NGUYEN: '); READLN(N); IF N <= THEN WRITE(N,' KHONG PHAI CÁI THỊ HẠ NGÂN (5) Giáo án LA SO NGUYEN TO') ELSE BEGIN I:= 2; WHILE (N MOD I<>0) DO I:= I+1; IF I = N THEN WRITE(N,' LA SO NGUYEN TO') ELSE WRITE(N,' KHONG PHAI LA SO NGUYEN TO'); END; READLN; END IV Củng cố (3p) Câu hỏi: Trong chương trình này ta sử dụng câu lệnh nào? Ý nghĩa Câu lệnh Ý nghĩa Câu lệnh lặp với số lần chưa Tính dừng phép toán biết trước ( while ) Cấu trúc điều khiển (if Kiểm tra số nguyên tố then) Câu lệnh mod Kiểm tra tính chia hết Giáo viên nhận xét và đánh giá tiết thực hành.(Những gì làm và chưa làm được) V Dặn dò (1p) + Nắm cú pháp và ý nghĩa câu lệnh lặp với số lần chưa biết trước + Đọc, tìm hiểu ý nghĩa các câu lệnh các bài tập có sử dụng câu lệnh lặp với số lần chưa biết trước kết hợp với cấu trúc điều khiển + Đọc trước bài và trả lời câu hỏi sau: - Dữ liệu kiểu mảng là gì? Lợi ích việc sử dụng biến mảng E RÚT KINH NGHIỆM Lop7.net CÁI THỊ HẠ NGÂN (6) Giáo án Ngày … tháng 03 năm 2011 Duyệt GV hướng dẫn Lê Đình Trung Lop7.net CÁI THỊ HẠ NGÂN (7)