- Ví dụ: k[5] phần tử có chỉ số 5 trong mảng a[12] phần tử có chỉ số 12 trong mảng.
KIỂM TRA 15 PHÚT (lần 2) Đeà:
Đeà:
Câu 1: Tại sao mảng là kiểu dữ liệu có cấu trúc? Câu 2: Tại sao phải khai báo kích thước của mảng? Câu 3: Các phần tử của mảng có thể có những kiểu gì? Đáp án:
Câu 1: Mảng là kiểu dữ liệu do người lập trình xây dựng nên.
Câu 2: Phải khai báo kích thước mảng để máy tính dành số ô nhớ cần thiết để lưu trữ các giá trị trong
mảng.
Câu 3: Các phần tử mảng có thể có các kiểu dữ liệu chuẩn và các kiểu dữ liệu có cấu trúc đã được xây
Tuần: 21, tiết: 30.
Ngày soạn: 01/01/2012. Ngày day:03/01/2012.
Đề bài dạy: BAØI TẬP
I. Mục đích yêu cầu:
- Học sinh sử dụng được biến kiểu mảng một chiều để giải quyết một số bài toán đơn giản. - Thực hiện được khai báo, truy cập, tính toán các phần tử của mảng 1 chiều.
II. Chuẩn bị của thầy và trò:
Thầy: SGK + Giáo án.
Troø: SGK + xem trước bài học ở nhà.
III. Tiến trình tiết dạy:
1. Ổn định lớp.2. Vào bài mới: 2. Vào bài mới:
Hoạt động của thầy và trò Nội dung cần đạt
GV: Ghi đề bài 5-trang 79 lên bảng. Yêu cầu học
sinh cho biết dữ liệu vào và dữ liệu ra?
HS: Trả lời câu hỏi.
GV: Hãy cho biết cách tính công bội của cấp số
cộng?
HS: d=a[2]-a[1];
GV: Day số thỏa mãn điều kiện gì thi được gọi là
dãy số cấp số cộng.
HS: Dãy A=A1,A2,…,AN là cấp số cộng nếu d=Ai-Ai-1 với mọi i=2..N.
GV: Gọi một học sinh lên bảng viết chương trình. HS: Viết chương trình.
GV: Ghi đề bài ví dụ 2 lên bảng. Yêu cầu HS cho
biết dữ liệu vào và dữ liệu ra?
HS: Lên bảng xác định dữ liệu vào và dữ liệu ra.
GV: Cho biết input và Output của bài toán. HS:
- Input:
Số nguyên N và dãy N số nguyên A1,A2, …,AN.
- Output:
Số lượng số lẻ, số lượng số chẵn, số lượng số
d) Một số ví dụ:
Bài 5: (trang 79-SGK)
Program Bai5_trang79; Uses Crt;
Var a:array[1..100] of byte; i,n,d:byte; BEGIN Clrscr; Write('Nhap N='); Readln(N); For i:=1 to N do BEGIN
Write('Nhap phan tu thu',i,':'); Readln(a[i]);
End;
d:=a[2]-a[1]; i:=2;
While ((i<=N) and (a[i]=a[i-1]+d)) do i:=i+1; if i>N then write('cac so vua nhap la cap so cong') Else Write('cac so vua nhap khong la cap so cong'); Readln; END. Bài 6: (trang 79-SGK) program bai6_79; uses crt;
var a:array[1..100] of byte; i,j,N,slsc,slsl,slnt,slch:byte;
BEGIN
nguyên tố.
GV: Số như thế nào thì được gọi là số chẵn, số lẻ,
làm thế nào để kiểm tra.
HS: Số chẵn là số chia hết cho 2, số lẻ không chia
hết cho 2. Ta kiểm tra bằng cách lấy số đó mod 2, nếu =0 thì là chẵn, nếu <>0 thì là lẻ.
GV: Làm thế nào để đếm được slsl và slsc?
HS: Kiểm tra lần lượt từ số đầu tiên cho đến số cuối cùng, nếu có số mod 2=0 thì tăng số lượng số chẵn lên 1, ngược lại thì tăng số lượng số lẻ lên 1.
GV: Số như thế nào gọi là số nguyên tố?
HS: Số nguyên tố là số chỉ chia hết cho 1 và chính
nó.
GV: Làm thế nào để đếm số lượng số nguyên tố
trong dãy.
HS: Lần lượt kiểm trá số ước số của các phần tử
trong dãy từ phần tử A1 tới AN, số nào có 2 ước số thì ta tăng số lượng số nguyên tố lên 1.
Write('Nhap so phan tu cua day:'); Readln(N); For i:=1 to N do
BEGIN
Write('Nhap phan tu thu ',i,':'); Readln(a[i]);
End; Slsc:=0;
For i:=1 to N do
if a[i] mod 2=0 then slsc:=slsc+1; Slsl:=N-slsc;
Writeln('-So luong so chan=',slsc,'-So luong so le=',slsl); slnt:=0; For i:=1 to N do Begin slch:=0; For j:=1 to a[i] do
if a[i] mod j=0 then slch:=slch+1; if slch=2 then slnt:=slnt+1;
end;
write('-So luong so nguyen to=',slnt); readln;
END.3. Củng cố: Khi viết chương trình cần mô tả thuật toán trước. 3. Củng cố: Khi viết chương trình cần mô tả thuật toán trước.