I. MỤC TIÊU:
1. Kiến thức:
- Hiểu hoạt động của câu lệnh với số lần biết trước For do trong Turbo Pascal.
- Biết lệnh ghép trong Pascal.
- Sử dụng được câu lệnh lặp.
2. Kĩ năng:
Viết được các chương trình Pascal đơn giản
3. Thái độ:
- Ham thích môn học.
- Tích cực học tập
II. PHƯƠNG PHÁP:
Phương pháp thử, trực quan, thảo luận nhóm, thực hành.
III. CHUẨN BỊ:
1. Giáo viên:
- SGK, tài liệu, giáo án.
- Đồ dùng dạy học: máy vi tính
2. Học sinh:
- Đọc trước bài và học bài ở nhà.
- SGK, đồ dùng học tập: máy vi tính
Ngày soạn: 21/01/2010 Ngày dạy: 27/01/2010 Tuần 22: Tiết 41: BÀI TẬP I. MỤC TIÊU: 1. Kiến thức: - Hiểu hoạt động của câu lệnh với số lần biết trước Fordo trong Turbo Pascal. - Biết lệnh ghép trong Pascal. - Sử dụng được câu lệnh lặp. 2. Kĩ năng: Viết được các chương trình Pascal đơn giản 3. Thái độ: - Ham thích môn học. - Tích cực học tập II. PHƯƠNG PHÁP: Phương pháp thử, trực quan, thảo luận nhóm, thực hành. III. CHUẨN BỊ: 1. Giáo viên: - SGK, tài liệu, giáo án. - Đồ dùng dạy học: máy vi tính 2. Học sinh: - Đọc trước bài và học bài ở nhà. - SGK, đồ dùng học tập: máy vi tính IV. TIẾN TRÌNH LÊN LỚP: Ổn định lớp. 2. Bài mới: Hoạt động của Gv - Hs Nội dung Hoạt động 1: Ôn lại kiến thức trọng tâm Gv: Cho Hs làm bài tập trắc nghiệm. Lấy điểm kiếm tra miệng. Câu 1: Em hiểu câu lệnh lặp theo nghĩa nào dưới đây? Một lệnh thay cho nhiều lệnh. Các câu lệnh được viết lặp đi lặp lai nhiều lần. Vì câu lệnh đã có tên là lệnh lặp Cả a, b, c đều sai. Câu 2: Cách viết câu lệnh lặp với số lần biết trước như sau: For = to do ; For : = to do For := to do ; For = to do ; Hãy chọn phương án đúng. Câu 3: Biến đếm, giá trị đầu, giá trị cuối có chung điểm gì rất quan trọng? Đều là các con số Có chung kiểu dữ liệu Biến đếm nhỏ hơn giá trị đầu, giá trị đầu nhỏ hơn giá trị cuối Biến đếm lớn hơn giá trị đầu, giá trị đầu lớn hơn giá trị cuối Hãy chọn phương án đúng. Câu 4: Trong câu lệnh lặp với số lần biết trước (fordo), đuợc thực hiện mấy lần? ( - ) lần Tùy thuộc vào bài tóan mới biết được số lần Khỏang 10 lần ( - + 1) lần Hãy chọn phướng án đúng. Câu 5: Trong câu lệnh lặp luôn có kiểm tra một điều kiện, điều kiện trong câu lệnh lặp: For := to do ; là gì? Biến đếm có phải kiểu nguyên hay không Biến đếm đã bằng giá trị đầu hay chưa Biến đếm đã bằng giá trị cuối hay chưa Giá trị đầu và giá trị cuối có bằng nhau hay không Câu 6: Tìm giá trị của S trong đọan chương trình dưới đây S := 0; For i := 1 to 5 do S := S + i; S = 0 S = 1 S = 5 S = 15 Câu 7: Khi nào thì câu lệnh Fortodo kết thúc? Khi biến đếm lớn hơn giá trị cuối Khi biến đếm nhỏ hơn giá trị cuối Khi biến đếm ngang bằng giá trị cuối Khi biến đếm lớn hơn giá trị đầu Câu 8: Tìm giá trị của a qua đoạn chương trình sau: a := 10; For i := 1 to 5 do a := a – 1; a = 5 a = -5 a = 10 a = 0 Hoạt động 2: Bài tập Gv: Yêu cầu Hs đọc đề bài 4 trang 60 Sgk. Hs: Đọc bài. Gv: Hãy cho biết giá trị của biến j? Hs: Trả lời. Hs: Nhận xét. Gv: Nhận xét. Gv: Yêu cầu Hs đọc đề bài 5 trang 60 Sgk. Hs: Đọc bài. Hs: Trả lời. Hs: Nhận xét. Gv: Nhận xét. Gv:Yêu cầu Hs đọc đề bài 6 trang 60 Sgk. Hs: Đọc bài. Gv: Cho 2 Hs lên bảng làm bài. Hs: Làm bài. Hs: Nhận xét. Gv: Nhận xét. Gv: Cho Hs viết chương trình theo nhóm. Hs: Viết chương trình. Gv: Nhận xét, giải thích. Gv: Cho Hs viết chương trình theo nhóm. Hs: Viết chương trình. Gv: Nhận xét, giải thích Hoạt động 3: Thực hành Gv: Nêu chương trình, hướng dẫn Hs viết chương trình, cho Hs thực hành. Hs: Thực hành. 1. Lý thuyết: 2. Bài tập: Bài 1: Bài 4 trang 60/Sgk. Bước i i<=5 Kết quả j =? 1 0 Đ 2 2 1 Đ 4 3 2 Đ 6 4 3 Đ 8 5 4 Đ 10 6 5 Đ 12 7 6 Sai Thoát khỏi vòng lặp. Lệnh lặp thực hiện 6 vòng lặp, mỗi lần j tăng thêm 2 đơn vị. Vậy khi kết thúc vòng lặp j có giá trị là 12. Bài 2: Bài 5 trang 50 / Sgk - Các câu a, b, c, e không hợp lệ, vì: a. Giá trị đầu phải nhỏ hơn giá trị cuối b. Các giá trị đầu và giá trị cuối phải là số nguyên c. Thiếu dấu hai chấm khi gán giá trị đầu e. Biến x đã được khai báo như là biến có dữ liệu kiểu số thực và vì thế không thể dùng để xác định giá trị đầu và giá trị cuối trong câu lệnh lặp. - Câu d hợp lệ. Tuy nhiên, nếu ta muốn lặp lại câu lệnh writeln(‘A’) mười lần thì không hợp lệ do thừa dấu chấm phẩy thứ nhất. Bài 3: Bài 6 trang 60 / Sgk * Mô tả thuật toán: - B1: Gán A ← 0, i ← 1 - B2: A ← 1 / (i * (i + 2)) - B3: i ← i + 1 - B4: Nếu i <= n, quay lại bước 2 - B5: Ghi kết quả A. Kết thúc thuật toán Bài 4: Viết chương trình tính tổng các số lẻ từ 1 đến n, với n được nhập vào từ bàn phím. * Phân tích bài toán: - Input: nhập n - Output: S = 1 + 3 + 5 + + n * Thuật tóan: - B1: S ← 0, i ← 0 - B2: i ← i + 1 - B3: Nếu i <= n thì Nếu i mod 2 0 thì S ← S + i và i ← i + 1 - B4: Quay lại B2 - B5: In kết quả, kết thúc. * Viết chương trình: Program tinh_tong; var s,i,n:integer; begin writeln('nhap n:'); readln(n); s:=0; for i:=1 to n do if i mod 2 0 then s:=s+i; writeln('s=',s); readln end. Bài 5: Viết chương trình tính tổng S = 1 + 1/2 + 1/3 + .+ 1/n Program tinh_tong; var i,n:integer; s:real; begin writeln('nhap n:'); readln(n); s:=0; for i:=1 to n do s:=s+1/i; writeln('s=',s:4:3); readln end. 3. Củng cố: Chốt lại kiến thức trọng tâm đã học. 4. Dặn dò: - Về nhà học bài, thực hành. - Coi trước bài “Học vẽ hình với phần mềm Geogebra”
Tài liệu đính kèm: