+ Hai HS lên bảng trình bày cấu trúc lặp với số lần biết trước và chưa biết trước trong Pascal.. Nhận xét.[r]
(1)BÀI TẬP I MỤC TIÊU BÀI HỌC:
1 Kiến thức:
- Ôn lại kiến thức vòng lặp For While Pascal 2 Kĩ năng:
- Rèn luyện kĩ lập trình ngơn ngữ Pascal
3 Thái độ: Tập trung lĩnh hội kiến thức, chủ động học tập 4 Định hướng phát triển lực cho HS:
Năng lực tự học, lực giao tiếp, lực hợp tác, lực giải vấn đề II. PHƯƠNG PHÁP VÀ KĨ THUẬT DẠY HỌC:
Thực hành Hỏi đáp
Thảo luận nhóm
III. TƯ LIỆU VÀ PHƯƠNG TIỆN :
a. Giáo viên: Sách giáo khoa, giáo án, chuẩn bị phòng máy b. Học sinh: Sách giáo khoa, ghi
IV. TIẾN TRÌNH DẠY HỌC : 1 Ổn định :
2 Kiểm tra cũ: (không) 3 Tổ chức dạy học: TIẾT 53
3.1 Khởi động: (10 phút)
GV nhắc lại: Chúng ta học hai cấu trúc lặp: Lặp với số lần biết trước chưa biết trước Hôm nay, áp dụng lập trình số tập liên quan đến hai vịng lặp Free Pascal
HS lắng nghe
3.2 Hoạt động luyện tập:
Hoạt động GV Hoạt động HS
Chuyển giao nhiệm vụ 1 Yêu cầu:
+ Hai HS lên bảng trình bày cấu trúc lặp với số lần biết trước chưa biết trước Pascal
Nhận xét
Thực nhiệm vụ 1 HS thực cá nhân Kết quả:
+ Cú pháp lệnh lặp với số lần biết trước:
for <biếnđếm>:=<giá trị đầu> to <giá trị cuối> <câu lệnh>; for, to, từ khóa
biến đếm biến kiểu nguyên
giá trị đầu giá trị cuối giá trị nguyên Giá trị đầu ≤ giá trị cuối.
Số vòng lặp biết trước: gt cuối – gt đầu + 1 + Cú pháp lệnh lặp với số lần chưa biết trước:
while <điều kiện> do <câu lệnh>; Trong đó:
Điều kiện thường phép so sánh;
Câu lệnh câu lệnh đơn giản hay câu lệnh ghép + Câu lệnh lặp thực sau:
Bước : Kiểm tra điều kiện
Bước : Nếu điều kiện SAI, câu lệnh bị bỏ qua việc thực lệnh lặp kết thúc Nếu điều kiện đúng, thực câu lệnh quay lại bước
(2)GV chuyển giao nhiệm vụ 2 HS thực nhóm cặp đơi u cầu:
+ Viết chương trình nhập dãy số tối đa 100 số, sau xếp lại dãy theo thứ tự tăng dần.
+ Xác định Input, Output + Xác định vòng lặp
HS thảo luận, báo cáo kết quả: Program lap_tang ;
Uses CRT; const N=100;
Var A: array [1 N] of integer; i, j: integer;
T: integer; Begin Clrscr;
writeln(' cho day so: '); For i:=1 to N do Begin
write('A[',i,']= '); readln(A[i]); End;
i:=1;
While (i<=N-1) do Begin
j := i+1; While j<=N do Begin
if A[j] > a[i] then Begin
T:= A[j];
A[j]:= A[i]; A[i]:= T; end;
j:= j+1; end; i:= i+1;
End; {While i }
writeln(' Day so sau da sap xep la: ' ); For i:=1 to N write(A[i]:4);
readln; End. HS nhận xét GV nhận xét TIẾT 54
GV chuyển giao nhiệm vụ 3 Yêu cầu:
+ HS khởi động máy tính, Free Pascal + Viết, chạy chương trình:
Program Tinh_tong;
Var N, i: integer; S: longint; Begin
(3)Readln(N); S:= 0;
For i:= to N do S:= S+1/i;
Writeln(‘Tong S = ‘, S); Readln;
End
HS thực hành, giúp đỡ bạn GV nhận xét
GV chuyển giao nhiệm vụ 4 Yêu cầu:
+ Viết lại chương trình cách sử dụng lệnh While … thay cho câu lệnh For … do Gv hướng dẫn HS xác định điều kiện công việc lặp
+ HS sửa lại chương trình theo yêu cầu + Chương trình:
Program Tinh_tong;
Var N, i: integer; S: longint; Begin
Write(‘Nhap so N = ‘); Readln(N);
S:= 0;
While (i<=n) do begin
S:= S+1/i; i := i+1; end;
Writeln(‘Tong S = ‘, S); Readln;
End
HS thực hành, giúp đỡ bạn GV hướng dẫn, nhận xét 3.4 Hoạt động tìm tịa, mở rộng.
4 Hướng dẫn học cũ, chuẩn bị mới : Ôn tập