IV. ĐÁP ÁN VÀ THANG ĐI ỂM: Câu 1: (5 điểm)
ÔN TẬP (tiếp)
1. Kiến thức
• Giúp các em nắm lại kiến thức đã học về ngôn ngữ lập trình đơn giản và ngôn ngữ lập trình Pascal như: một số khái niệm mới, các kiểu dữ liệu chuẩn và các phép toán với các kiểu dữ liệu đó, các lệnh vào ra đơn giản, lệnh gán, khai báo và sử dụng biến, hằng. Cấu
trúc của một chương trình Pascal, cách viết một chương trình hoàn thiện, biết mô tả thuật toán của bài toán cụ thể.
2. Kĩ năng
• Vận dụng các kiến thức đã học viết được chương trình Pascal đơn giản. • Biết mô tả thuật toán một bài toán cụ thể.
II. CHUẨN BỊ CỦA GIÁO VIÊN VÀ HỌC SINH: 1. Giáo viên 1. Giáo viên
o Giáo án, SGK.
2. Học sinh
o SGK, vở.
o Xem lại nội dung bài từ bài 1 đến bài 5.
III. PHƯƠNG PHÁP:
Thuyết trình, vấn đáp, thảo luận nhóm.
IV. TIẾN TRÌNH DẠY HỌC:1. Ổn định lớp:: kiểm tra sỉ số. 1. Ổn định lớp:: kiểm tra sỉ số.
2. Kiểm tra bài cũ: không.
3. Bài mới: Ôn tập
Hoạt động của giáo viên và học sinh Nội dung
- HS: tìm lỗi sai, giải thích và sửa lại: a) Var khoi_luong: integer; { tên không hợp lệ}
b) Const a =6; b= 250; {thừa các dấu : khi khai báo và gán giá trị cho hằng} c) Var a, b : real; {thừa dấu = khi khai báo biến}
d) Var lop: string; {thay từ khoá const bằng từ khoá var}
e) Var x : integer; {sử dụng từ khoá end để đặt tên cho biến }
f) Var so1: integer; so2: real; {khai báo từng kiểu riêng}
- HS: đọc đề. - GV; gợi ý
- HS: xác định input, output và nêu thuật toán.
- GV: nhận xét và đưa ra thuật toán. - GV: thử lại thuật toán bằng cách cho các bộ dữ liệu khác nhau để kiểm tra. Ví dụ:
(5, 4), (8, 9)
- HS: đọc đề. - GV : gợi ý
- HS: xác định input, output và nêu thuật
Bài tập 1:
Tìm lỗi sai trong các khai báo sau và sửa lại cho đúng:
a) Var khoi luong: integer; b) Const a =6; b:= 250; c) Var a, b:= real;
d) Const lop: string; e) Var end : integer;
f) Var so1, so2: integer, real;
Bài tập 2: Cho 2 biến x và y. Hãy mô tả thuật toán đổi giá trị của các biến nói trên để x và y theo thứ tự không tăng (giảm dần).
* Xác định bài toán: - INPUT: 2 số x, y
- OUTPUT: x, y được sắp xếp không tăng (giảm dần)
* Thuật toán:
+ Bước 1: Nhập x, y
+ Bước 2: nếu y > x tráo đổi giá trị của x và y. + Bước 6: In ra x, y và kết thúc.
Bài tập 3: Giả sử điểm kiểm tra môn tin học của 1 lớp có n học sinh được cho bởi n biến số thực a1, a2, .., an , trong đó ai là điểm kiểm tra của học sinh thứ i, với i= 1, 2, .., n. Hãy tính điểm trung bình môn tin học của cả lớp.
toán.
- GV: nhận xét và đưa ra thuật toán. - GV: thử lại thuật toán bằng cách cho các bộ dữ liệu khác nhau để kiểm tra. Ví dụ:
A = {8, 7, 6, 4, 10, 9, 8, 9, 6}
- HS: đọc bài toán.
- Kiểm tra thuật toán bằng cách điền thông tin vào bảng.
- Với bộ thông tin thử : (4, 3, 7) Bước a b c Số nhỏ nhất 1 4 3 7 2 4 3 7 4 3 4 3 7 3 4 4 3 7 3 5 4 3 7 3
- Với bộ thông tin thử : (1, 3, 8) Bước a b c Số nhỏ nhất 1 1 3 8 2 1 3 8 1 3 1 3 8 1 4 1 3 8 1 5 1 3 8 1
- Với bộ thông tin thử : (10, 6, 2) Bước a b c Số nhỏ nhất 1 1 0 6 2 2 1 0 6 2 10 3 1 0 6 2 6 4 1 0 6 2 2
a) Xác định Input, output của bài toán trên. b) Mô tả thuật toán của bài toán trên. * Xác định bài toán: - INPUT: n, dãy số a1, a2, .., an (n ≥ 1) - OUTPUT: S = (a1 + a2 + .. + an )/n * Thuật toán: + Bước 1: Nhập n và dãy a1, a2, .., an. + Bước 2: S 0; i 1
+ Bước 3: S S + ai ; {cộng thêm ai vào tổng S }
+ Bước 4: i i + 1
+ Bước 5: nếu i ≤ n, quay lại bước 3.
+ Bước 6: S S / n ; { tính điểm trung bình} + Bước 7: In ra S và kết thúc thuật toán.
Bài tập 4: Thuật toán tìm số nhỏ nhất trong 3 số a, b, c như sau:
- Input: nhập ba số a, b, c.
- Output: min (=min{a, b, c}, là số nhỏ nhất trong 3 số a, b và c).
Bước 1: nhập 3 số a, b, c. Bước 2: Gán Min a
Bước 3: Nếu b < min, gán min b Bước 4: Nếu c < min, gán min c
Bước 5: thông báo kết quả Min và kết thúc thuật toán.
a) Em hãy mô phỏng thuật toán với các bộ dữ liệu thử khác nhau như: (4, 3, 7), (1, 3, 8), (10, 6, 2) bằng cách điền vào bảng dưới đây:
Bước a b c Số nhỏ nhất 1 2 3 4 5
b) Dựa vào thuật toán trên, em hãy viết chương trình hoàn thiện để tìm số nhỏ nhất trong 3 số a, b, Program Tim_min;
5 1 0
6 2 2
- GV : đối với bài này ta sử dụng cấu trúc gì ? sử dụng câu lệnh như thế nào ? - HS : sử dụng cấu trúc rẽ nhánh.
Sử dụng câu lệnh điều kiện dạng đầy đủ. - HS : Chia thành 4 nhóm, tiến hành thảo luận các nhóm để viết chương trình trên. - GV : quan sát học sinh viết chương trình.
- Các nhóm trình bày kết quả. - Các nhóm khác nhận xét.
- GV: nhận xét, đánh giá và đưa ra đáp án đúng cho học sinh đối chiếu.
Var a, b, c: integer; Begin
Write(‘nhap 2 so a, b, c: ’); readln(a, b, c); Min: = a;
If b < min then min:= b else if c< min then min: = c;
Writeln(‘so nho nhat trong 3 so’, a, ‘ ‘, b, ‘ ‘ , c, ‘la’, min); Readln;
End.
4/ Dặn dò:
- Xem lại kiến thức từ bài 1 đến bài 5. - Chuẩn bị thi học kì 1.
Tuần: 19 Ngày soạn: 24/12/11
Tiết
: 36 Ngày dạy: 27/12/11
KIỂM TRA HỌC KÌ I I. M ỤC TIÊU ĐÁNH GIÁ: