Tải bản đầy đủ (.doc) (4 trang)

tiet 61-62

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (90.62 KB, 4 trang )

Ngày soạn: 14/4/2010
tiết 61
ÔN TẬP:(t1)
KIỂU DỮ LIỆU VÀ THUẬT TOÁN
I. MỤC ĐÍCH YÊU CẦU :
1. Kiến thức: ôn lại kiễu mảng và khai báo mảng .
2. Kỹ năng: Hiểu cách khai báo và truy cập đến các phần tử của mảng .
3. Thái độ: Thực làm việc tích cực, gây hứng thú học tập.
II. PHƯƠNG PHÁP:
Phương pháp : Thuyết trình, vấn đáp, thảo luận nhóm .
III. CHUẨN BỊ :
Gv: giáo án, máy tính, máy chiếu,.
HS: tài liệu, sách, vở,
IV. TIẾN TRÌNH LÊN LỚP
1. Ổn định lớp: kiểm tra tổng số học sinh
2. Bài cũ:
3. Triển khai bài:
HOẠT ĐỘNG CỦA GV VÀ HS NỘI DUNG
Hoạt động 1: Nhắc lại biến mảng.
GV: trong ngôn ngữ lập trình ta được học có mấy loại
mảng?
HS: trả lời có 2 loại
GV: Nêu cách khai báo mảng một chiều và hai chiều:
Hs: suy nghĩ và trả lời câu hỏi:
GV: yêu cầu học sinh giải thích các thông tin liên quan
trong khai báo?
HS: giải thích đầy đủ các thông tin trong phần khai báo.
GV: yêu cầu học sinh nhắc lại việc truy xuất đến các
phần tử trong biến mảng.
Học sinh trả lời
GV: khi thao tác với biến mảng ta cần quan tâm đến


những vấn đề nào?
HS1 : trả lời đối với mảng một chiều?
Trong lập trình thường có 2 loại mảng :
- Mảng một chiều .
- Mảng hai chiều .
a> Khai báo mảng một chiều
Trong ngôn ngữ Pascal, mảng một chiều
được khai báo bằng hai cách như sau :
Var <Tên mảng> : Array[chỉ số đầu chỉ
số cuối] of <kiểu phần tử> ;
b> Khai báo mảng hai chiều
- Trong ngôn ngữ Pascal, mảnh hai chiều
được khai báo như sau :
Var : <Tên mảng> : Array[chỉ số đầu
dòng chỉ số cuối dòng,chỉ số đầu cột chỉ
số cuối cột] of < kiểu phần tử> ;
Trong đó :
Array, of là từ khóa để khai báo mảng .
chỉ số đầu< chỉ số cuối và là kiểu
nguyên,
đối với mảng 1 chiều
<Tên biến mảng>[Chỉ số]
đôi với mảng 2 chiều
<tên biến mảng>[số cột, số hàng]
Với mảng một chiều ta quan tâm đến :
Tên mảng một chiều .
Số lượng phần tử trong mảng .
Kiểu dữ liệu của phần tử .
Cách khai báo biến mảng một chiều .
Cách truy cập vào từng phần tử của mảng

Với mảng hai chiều ta quan tâm đến :
HS2: trả lời đối với mảng 2 chiều.
Hoạt động 2: Thao tác nhập xuất dữ liệu biến mảng
ví dụ 1: viết chương trình nhập vào dãy số rồi in ra
dãy số vừa nhập?
GV: yêu cầu học sinh xác định input:
hs trả lời dãy số a1, a2, , an.
gv: yêu cầu học sinh trả lời output.
HS: trả lời in dãy sô a1,a2, ,an.
GV: cho học sinh làm việc theo nhóm mỗi nhóm có 4
người làm 4 phân đoạn sau:
HS1, viết đoạn khai báo các biến được dùng trong
chương trình?
hs2: viết đoạn chương trình nhập số phần tử của dãy?
hs3: nhập từng giá trị của dãy số:
hs4: viết đoạn chương trình in dãy số:
GV nhận xét và đánh giá kết quả.
Tên kiểu mảng hai chiều .
Số lượng phần tử của mỗi chiều trong
mảng
Kiểu dữ liệu của phần tử .
Cách khai báo biến mảng hai chiều
Cách truy cập vào từng phần tử của mảng
Var A : Array[1 100] of Integer ;
n,i:integer;
Begin
Write('Nhap so phan tu day n = ') ;
Readln(n) ;
For i := 1 to n do
Begin

Write('a[',i,'] = ') ;
readln(a[i]) ;
end;
For i := 1 to n do
Write(a[i]:3) ;
Readln ;
End .
.
V. CỦNG CỐ:
Nhắc lại các điều HS cần lưu ý, thao tác nhập, xuất biến mảng.
VI. DẶN DÒ:
bài tập về nhà: cho trước một dãy số được nhập từ bàn phím. Hãy viết chương trình thực
hiện các thao tác sau?
a. nhập thêm một phần tử x được đưa vào cuối dãy
b. nhập thêm một phần tử và đưa về đầu dãy
c. nhập thêm một phần tử x và đưa vào vị trí k của dãy.
Ngày soạn: 14/4/2010
tiết 62
ÔN TẬP:(t2)
KIỂU DỮ LIỆU VÀ THUẬT TOÁN
II. MỤC ĐÍCH YÊU CẦU :
1. Kiến thức: Xây dựng các thuật toán với biến mảng .
2. Kỹ năng: Hiểu cách khai báo và truy cập đến các phần tử của mảng .
3. Thái độ: Thực làm việc tích cực, gây hứng thú học tập.
II. PHƯƠNG PHÁP:
Phương pháp : Thuyết trình, vấn đáp, thảo luận nhóm .
III. CHUẨN BỊ :
Gv: giáo án, máy tính, máy chiếu,.
HS: tài liệu, sách, vở,
IV. TIẾN TRÌNH LÊN LỚP

1. Ổn định lớp: kiểm tra tổng số học sinh
2. Bài cũ:
3. Triển khai bài:
HOẠT ĐỘNG CỦA GV VÀ HS NỘI DUNG
Hoạt động 1: Thuật toán tìm kiếm
GV : cho học sinh nêu lên các phương án thực
hiện?
HS có thể trả lời rất nhiều cách viết chương trình
GV: chọn 1 HS lên bảng viết làm mẫu, cả lớp nhập
xét.
GV: chỉ giới thiệu thêm phương pháp tìm kiếm nhị
phân bài này áp dụng khi dãy số đã sắp xếp.
GV soạn sẵn chương trình và cho học sinh quan sát
chương trình .
Nếu có nhiều thời gian, giáo viên sẽ tiến hành soạn
chương trình từ đầu để học sinh có thể dễ dàng
nhận ra các thao tác cần phải thực hiện khi viết
chương trình .

Ví dụ 1 : Cho một dãy số nguyên hãy viết
chương trình nhập vào một số tự nhiên k, tìm
các vị trí xuất hiện của số k có trong mảng.
.
Chương trình như sau :
Program timkiemnhiphan ;
Uses crt ;
var A : Array[1 250] of integer ;
n,i,k : Integer ;
dau,cuoi,giua : Integer ;
TK : boolean ;

Begin
clrscr ;
Write('Nhap so ptu mang n = ') ;
Readln(n) ;
For i := 1 to n do
Begin
Write('A[',i,'] = ') ;
readln(A[i]) ;
End ;
Write('nhap so can tim k : ') ;
Readln(k);
dau := 1 ; cuoi := n ;
TK := false ;
while (dau <= cuoi) and Not TK Do
Begin
giua := (dau+cuoi) div 2 ;
If A[giua] = k then TK := true
Else
If a[giua]>k then cuoi := giua - 1
Else dau := giua + 1 ;
End ;
If TK then write('Chi so la : ',giua)
Hoạt động 2:Thuật toán về mảng 2 chiều?
ví dụ2: cho trước một mảng 2 chiều có m hàng n
cột
viết chương trình nhập vào số k, in ra các vị trí xuất
hiện số k trong mảng.
GV: yêu cầu HS: viết phần khai báo biến
HS: viết đoạn nhập số phần tử của mảng
HS: nhập từng giá trị cho biến mảng

HS: In mảng vừa nhập ra màn hình.
HS: nhập thêm một số k.
GV: giới thiệu cách tìm kiếm đối với mảng 2 chiều/
hs theo giỏi và ghi chép
else write(' Khong tim thay ');
readln ;
End .
Program Timkem;
Uses crt;
var A : Array[1 100,1 100] of Integer;
i,j,n,m : Byte ;
k,d : integer ;
Begin
Clrscr ;
Write(' Nhap so dong, so cot cua mang : ') ;
Readln(m,n);
For i := 1 to m do
For j := 1 to n do
Begin
Write(' A[',i,',',j,'] = ');
Readln(A[i,j]);
End ;
Writeln(' Mang vua nhap vao la : ');
For i := 1 to m do
Begin
For j := 1 to n do
Write(a[i,j]:4) ;
Writeln;
End;
Write(' Nhap gia tri k : ');

Readln(k) ;
d := 0 ;
For i := 1 to m do
For j := 1 to n do
If a[i,j] < k then
Begin
write('So nho hon ',k,' la ');
write(a[i,j]:8); d := d+1 ;
End ;
If d = 0 then
Write('Khong co ptu nao nho hon ',k);
readln;
End .
V. CỦNG CỐ:
Nhắc lại các điều HS cần lưu ý, thao tác nhập, xuất biến mảng.
VI. DẶN DÒ: bài tập về nhà:
1. Viết lại ví dụ 2 bằng cách dữ liệu nhập và kết quả được lưu trên tệp.
2. Sắp xếp mảng theo các thứ tự sau: a. theo chiều kim đồng hồ, b. ngược chiều đồng hồ, c.
thứ tự từ trái qua phải.
a b c

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×