Ngày soạn: ./ ./ Ngày dạy: ../ ../
Bài tập
(T23, 24)
I. Mục đích - yêu cầu.
- Củng cố lại các kiến thức về mảng.
- Chữa các bài tập trong sách giáo khoa, rèn kĩ năng phân tích bài toán, kĩ năng vận
dụng lý thuyết vào bài tập.
- Trang bị các kiến thức cớ bản cho các giờ thực hành tiếp sắp tới.
II. Lên lớp
1. ổ n định lớp
Lớp Sĩ số Vắng Có phép
11A .. ..
11A .. ..
11A .. ..
11A .. ..
2. Bài mới
Nội dung Hoạt động của gv và hs
* Cú pháp khai báo
+ Mảng một chiều:
- Khai báo trực tiếp
Var <tên biến mảng>:array[kiểu chỉ sô]
of <kiểu phần tử>;
- Khai báo gián tiếp:
Type <tên kiểu mảng>=array[kiểu chỉ
số] of <kiểu phần tử>;
Var <tên biến mảng>:<tên kiểu mảng>;
+ Mảng hai chiều:
- Khai báo trực tiếp
Var <tên biến mảng>:array[kiểu chỉ sô
hàng,kiểu chỉ số cột] of <kiểu phần tử>;
- Khai báo gián tiếp:
Write(ban nhap vao so hang thu,i,:);
Write(A[,i,]=);
Readln(a[i]);
End;
Gv: Giải đáp các thắc mắc về các câu
hỏi lý thuyết trong sách giáo khoa và
sách bài tập.
Gv: yêu cầu học sinh xác định bài
toán.
Gv: Thế nào là một cấp số cộng ?
Hs: Trả lời.
Gv: giả sử ta có
D= A[1] A[2]
=> dãy trên là cấp số cộng nếu thoả
mãn điều kiện:
A[i] = A[1] + (i-1)d
Gv: Gọi học sinh lên làm bài tập
Gv: Nhận xét những mặt đợc và những
mặt cha đợc trong cách trình bày của
67
Ngày soạn: ./ ./ Ngày dạy: ../ ../
D:=A[2]-A[1];
For i:=3 to n do
If A[i] - A[i-1]<> d then
Writeln(day so tren khong la day so
cong)
Else
Writeln(day so tren la cap so cong);
For i:=1 to n do
Write(A[i]:4);
số lẻ khi điều kiện thoả mãn
68
Ngày soạn: ./ ./ Ngày dạy: ../ ../
Sc, sl, i, j, nt, n, t: integer;
Begin
Clrscr;
Writeln( moi ban nhap so phan tu cua
day); Readln(n);
For i:=1 to n do
Begin
Write(moi ban nhap phan tu thu,i,=);
Readln(a[i]);
End;
Write( day so vua nhap la:);
For i:=1 to n do Write(a[i]:4);
Sc:=0; Sl:=0;
For i:=1 to n do
If a[i] mod 2 = 0 then sc:=sc+1
Else sl:= sl+1;
Writeln( trong day co ,sc, so chan);
Writeln(trong day co ,sl, so le);
Nt:=0;
For i:=1 to n do
Begin
T:=0;
For j:=2 to a[i] div 2 do
If a[i] mod j = 0 then t:= t + 1;
If t=0 then
Begin
Writeln( So ,a[i], la so nguyen to);
Writeln(Tim so hang n cua day Phi bo
na xi, N = );
Readln(n);
F1:= 1;
F2:=1;
For i:= 3 to n do
Begin
F:= f1+ f2;
F1:= f2;
F2:= f;
End;
Writeln(f);
Readln;
End.
Bài 8: Cho mảng hai chiều m, n gồm các
số nguyên. Hãy viết chơng trình đa ra tổng
các phần tử của từng hàng.
+ Input:
+ Output:
* Chơng trình mẫu:
Program b8;
Uses crt;
Var ma:array[1..100, 1..100] of integer;
J, i, m, n, t: integer;
70
Ngày soạn: ./ ./ Ngày dạy: ../ ../
Begin
Write( moi ban nhap so hang m = );
Readln(m);
Write( moi ban nhap so cot n = );
Gv: Chúng ta đã có thuật toán tìm giá
trị lớn nhất, nhỏ nhất đối với mảng
một chiều. Tơng tự nh vậy ta có thể
vận dụng đối với mảng 2 chiều.
Ta sử dụng 2 biến: Max. Min
71