II. CHUẨN BỊ CỦA GV VÀ HS
1. Chuẩn bị của giáo viên:
-Máy chiếu, máy tính, phông chiếu hoặc bảng. -Sách giáo khoa, sách giáo viên, Bài soạn.
2. Chuẩn bị của học sinh:
- Sách giáo khoa, vở ghi bài.
III. TIẾN TRÌNH DẠY HỌC
1. Kiểm tra sĩ số lớp
2. Kiểm tra bài cũ (không). 3. Nội dung bài mới
HOẠT ĐỘNG CỦA GIÁO VIÊN – HỌCSINH SINH
NỘI DUNG
GV: gọi học sinh lên bảng lần lượt trình bày cách khai báo dữ liệu kiểu mảng, kiểu xâu, kiểu bản ghi.
HS: lên bảng trả lời câu hỏi GV: Cho hs làm bài tập 5 – tr79
GV: trong bài toán có giới hạn gì ở điểu kiện nhập vào ?
HS: trả lời câu hỏi.
GV: Lấy ví dụ một dãy số và hỏi hs đó có phải là dãy số cấp số cộng hay không ? HS: trả lời câu hỏi.
GV: điểu kiện để một dãy số là cấp số cộng là gì ?
HS: trả lời câu hỏi
GV: nhận xét và khẳng định:
HS: ghi bài
GV: cùng hs lập trình giải quyết bài toán trên máy tính.
Điều kiện để một dãy số là cấp số cộng là : A[i] = A[1] +(i-1)*d. (hoặc A[i] – A[i-1] = d) với d = A[2] – A[1]. Chương trình: program CapSoCong; var n, i, d: integer; a: array[1..100] of integer; ktn, kta: Boolean ; BEGIN
ktn:= true; while ktn do begin write(‘ Nhap n < 100: ‘); readln(n); if n < 100 then ktn:= false; end;
writeln(‘ Nhap day a: ‘); for i:= 1 to n do begin kta:= true; while kta do begin write(‘ a[‘,i,’]= ‘); readln(a[i]);
if (a[i] >= -1000) and (a[i] <=1000) then kta:= false;
end; end; i:= 3;
d:= a[2] – a[1];
while (i <= n) and (a[i] = a[1] + (i-1)*d) do
i:= i+1;
if i>n then writeln(‘ Day a la cap so cong’)
else writeln(‘ Day a khong la cap so cong’);
readln; END.
GV: Cho hs làm bài 6 – tr79 (sgk)
GV: để kiểm tra một số là số chẵn hay số lẻ thì ta sử dụng cách như thế nào ? HS: trả lời câu hỏi.
GV: cho hs lấy ví dụ số nguyên tố. HS: trả lời câu hỏi
GV: Các em đã học thuật toán để kiểm tra một số là số nguyên tố hay không ? yêu cầu học sinh viết thuật toán kiểm tra số nguyên tố.
HS: trả lời câu hỏi
GV: chiếu sơ đồ liệt kê thuật toán kiểm tra tính nguyên tố của mốt số nguyên dương.
GV: dẫn dắt áp dụng vào bài. Thay vì ta thông báo ra màn hình số nguyên tố, ta sẽ xét từng phần tử của mảng, nếu nó
nguyên tố thì tăng biến dem_nt lên 1.
Chương trình:
program ChanLeNguyento; var n, i,u, dc, dl, dn: integer; a: array[1..100] of integer; ktn, kta: Boolean; BEGIN ktn:= true; while ktn do begin write(‘ Nhap n < 100: ‘); readln(n); if n < 100 then ktn:= false; end;
writeln(‘ Nhap day a: ‘); for i:= 1 to n do
begin
kta:= true; while kta do
GV: Cùng hs làm bài begin
write(‘ a[‘,i,’]=’); readln(a[i]);
if (a[i] >= -1000) and (a[i] <=1000) then kta:= false;
end; end;
dc:= 0; dl:= 0; for i:= 1 to n do
if (a[i] mod 2 = 0) then dc:= dc+1 else inc(dl);
writeln(‘ So luong so chan: ‘,dc); writeln(‘ So luong so le: ‘,dl); dn:= 0; for i: = 1 to N do begin if a[i] > 1 then begin u:= 2;
while (u<=sqrt(a[i])) and (a[i] mod u <> 0) do u:= u +1;
if u > sqrt(a[i]) then dn: = dn + 1 ;end; end;
end;
writeln(‘ So luong so nguyen to: ‘,dn); readln;
END.
4. Hoạt động củng cố