Thể loại Giáo án bài giảng Tin học 11
Số trang 1
Ngày tạo 2/10/2019 9:35:02 PM +00:00
Loại tệp doc
Kích thước 0.19 M
Tên tệp lop 11 tu bai 11 den btth 4 doc
Tiết 21: KIỂU MẢNG (Tiết 1)
I. Mục đích, yêu cầu
1. Kiến thức
- Biết được một kiểu dữ liệu mới là kiểu mảng một chiều.
- Biết được một loại biến có chỉ số.
- Biết cấu trúc tạo mảng một chiều, cách khai báo biến kiểu mảng một chiều.
2. Kĩ năng
- Biết được các thành phần trong khai báo kiểu mảng một chiều;
- Biết được định danh của một phần tử kiểu mảng một chiều xuất hiện trong một chương trình.
- Biết cách khai báo mảng đơn giản với chỉ số miền con của kiểu nguyên.
- Biết cách tham chiếu đến các phần tử của mảng một chiều.
3. Thái độ:
- Tự giác, tích cực, chủ động và sáng tạo trong tìm kiếm tri thức.
4. Phát triển năng lực
- Hình thành và phát triển cho học sinh năng lực tự học, năng lực công nghệ thông tin, năng lực giải quyết vấn đề.
- Mô hình hoá các tình huống trong thực tiễn bằng cấu trúc mảng một chiều qua việc khai báo mảng.
II. PHƯƠNG PHÁP, PHƯƠNG TIỆN DẠY HỌC
1. Phương pháp: Thuyết trình, vấn đáp.
2. Phương tiện: Máy chiếu, máy tính, phòng máy, bảng.
III. LƯU Ý SƯ PHẠM.
- Bước đầu hình thành khái niệm về cấu trúc mảng .
- Cần xây dựng các bài thực hành và tổ chức thực hiện tại phòng máy để học sinh đạt được những kĩ năng theo yêu cầu.
IV. TIẾN TRÌNH BÀI DẠY.
1. Ổn định lớp: (Thời lượng:........)
2. Kiểm tra bài cũ, gợi động cơ (Thời lượng...........)
3. Nội dung bài giảng
Hoạt động 1: Tìm hiểu bài toán mở đầu
Hoạt động của Giáo viên và Học sinh |
Nội Dung |
GV: Nội dung bài toán: Viết chương trình nhập từ bàn phím nhiệt độ trung bình của 7 ngày trong tuần. Đưa ra màn hình nhiệt độ trung bình của cả tuần. |
|
Gv: trong chương trình cần khai báo những biến nào? Hs: T1,t2,....t7: lưu nhiệt độ tb của 7 ngày trong tuần tb: lưu nhiệt độ tb của cả tuần. - kiểu dl: số thực Gv: yêu cầu học sinh lên viết phần khai báo của ct. Hs: lên bảng làm bài.
Gv: gọi 1 hs lên bảng viết lệnh nhập nhiệt độ và tính nhiệt độ tb
Gv: Đây là một bài toán khá đơn giản. Nhưng nếu thay đổi bài toán yêu cầu tính nhiệt độ tb của cả năm ( 365 ngày)? Hs: phải khai báo 366 biến do đó: ct dài, dễ nhầm lẫn,
Cần dùng mảng 1 chiều để lưu trữ
-> Khái niệm mảng 1 chiều |
1. Bài toán đặt vấn đề Chương trình: Program nhietdo; var t1,t1,t3,t4,t5,t6,t7,tb: real; begin write(‘nhap nhiet do cac ngay trong tuan:’); readln(t1,t2,t3,t4,t5,t6,t7); tb:=(t1+t2+t3+t4+t5+t6+t7)/7; write(tb); readln; end.
1. K/n mảng một chiều Mảng 1 chiều là dãy hữư hạn các phần tử cùng kiểu, mảng được đặt tên, mỗi phần tử của mảng có 1 chỉ số. |
|
|
Hoạt động 2: Khai báo mảng một chiều và tham chiếu đến phần tử của mảng
Hoạt động của Giáo viên và Học sinh |
Nội Dung |
GV:Diễn giải cú pháp HS: Ghi bài
VD1: viết khai báo cho bài toán nhiệt độ tb của cả năm. - tên biến mảng: nhietdo - chỉ số đầu: 1 - chỉ số cuối: 365 - kiểu dl: real - số lượng pt: 365
=> học sinh lên viết khai báo
|
2. Khai báo (Có hai cách) Cách 1: Khai báo trực tiếp:
Var Cách 2: Khai báo gián tiếp
Type
Var
Trong đó: +Kiểu chỉ số thường là một đoạn số nguyên liên tục có dạng n1...n2(n1 + Kiểu phần tử là kiểu dl của các phần tử của mảng.
VD1: c1/ var nhietdo:array[1..365] of real; c2/ type A: array[1..365] of real; var nhietdo:A;
VD2: Var Nhietdo: array [1..Max] Of real; Ví dụ 2: Khai báo mảng tối đa 100 số nguyên (chỉ số đầu tiên là 1) |
|
Ta có các cách sau: Cách 1: Var a: Array[1..100] Of Integer; Cách 2: Const Nmax = 100; Var a: Array[1..Nmax] Of integer; 3. Tham chiếu tới phần tử cuả mảng Tên_biến[chỉ số] |
V. ĐÁNH GIÁ CUỐI BÀI, DẶN DÒ
- Câu hỏi, bài tập về nhà:
- Đọc ví dụ 1 và ví dụ 2/ trang 56+57 SGK :
- Xem lại thuật toán tìm phần tử lớn nhất của dãy số nguyên và thuật toán sắp xếp dãy số nguyên bằng thuật toán hoán đổi.
VI. RÚT KINH NGHIỆM, BỔ SUNG:
............................................................
............................................................
............................................................
............................................................
............................................................
Tiết 22:
KIỂU MẢNG (Tiết 2)
I. Mục đích, yêu cầu
1. Kiến thức:
- Khai báo kiểu, biến mảng một chiều, cách tham chiếu dến các p/tử trong mảng, các thao tác nhập, in ra các phần tử của mảng.
- Củng cố và làm HS hiểu xâu sắc hơn về những thuật toán tìm kiếm, sắp xếp cơ bản mà học sinh đã học ở lớp 10.
2. Kĩ năng:
- Hs sử dụng được biến kiểu mảng một chiều để giải quyết một bài toán đơn giản.
3. Tư duy, thái độ:
- Tự giác, tích cực, chủ động và sáng tạo trong tìm kiếm tri thức
4. Phát triển năng lực
- Hình thành và phát triển cho học sinh năng lực tự học, năng lực công nghệ thông tin, năng lực giải quyết vấn đề.
- Mô hình hoá các tình huống trong thực tiễn bằng cấu trúc mảng một chiều qua việc xử lí một số thao tác nhập, hiển thị phần tử mảng, tìm GTLN cho phần tử của mảng.
II. PHƯƠNG PHÁP, PHƯƠNG TIỆN DẠY HỌC
1. Phương pháp: Thuyết trình, vấn đáp.
2. Phương tiện: Máy chiếu, máy tính, phòng máy, bảng.
III. TIẾN TRÌNH BÀI DẠY.
1. Ổn định lớp: (Thời lượng:........)
2. Kiểm tra bài cũ, gợi động cơ (Thời lượng:..........)
HS1. Trình bày các cách khai báo kiểu mảng trong NNLT Pascal?
HS2. Khai báo mảng gồm N số nguyên (N500). (theo 2 cách: trực tiếp và gián tiếp).
Const N = 500;
C1: Var M : array[1..N] of integer;
C2: Type Mnguyen = array[1..N] of integer;
Var M : Mnguyen;
HOẠT ĐỘNG CỦA GV VÀ HS |
NỘI DUNG |
GV: Nêu ra chú ý: HS nên sử dụng For - do để nhập xuất dữ liệu cho phần tử của mảng như vậy câu lệnh sẽ ngắn gọn và dễ hiểu hơn.
GV: Hướng dẫn HS: Lắng nghe, quan sát chương trình mẫu trong SGK
- Input : Số nguyên dương N và dãy số A1, A2, ….., AN |
4.Các thao tác xử lý mảng 1 chiều: a. Nhập dữ liệu cho các phần tử của mảng A: C1. Dùng vòng for For i:=0 to 10 do begin Write(‘Nhập phần tử thứ ‘ , i , ‘: ‘); Readln(A[i]); end; C2. Dùng While : i:=0; While i<= 10 do begin Write(‘Nhap phần tử thứ ‘, i, ‘: ‘); Readln(A[i]); i:=i+1; end; b. Ðể in các gía trị của mảng A lên màn hình, ta viết : For i:=0 to 10 do Write(A[i]:6:2); 5. Một số ví dụ : VD1: Viết chương trình cho bài toán tính nhiệt độ trung bình của năm Ví dụ 2 : Tìm phần tử lớn nhất của một dãy số nguyên . Chương trình như sau : Program timmax ; Uses crt ; var a : array[1..250] of integer ; n,i,max,csmax : Integer ; |
- Output : Chỉ số và giá trị của số lớn nhất trong dãy - Ý tưởng :
+ Đặt số A1 là số lớn nhất (max) + Cho i lặp từ 2 đến N, nếu A[i]> thì đổi max = A[i] và lưu lại vị trí i .
GV: Đưa ra ví dụ
Chỉ số:
dãy A:
Phần tử Max: A[2] = 10 Chỉ số phần tử Max là: 2
|
Begin clrscr ; Write('Nhap n = ') ; Readln(n) ; For i := 1 to n do Begin Write('a[',i,'] = ') ; readln(a[i]) ; End ; max := a[i] ; csmax := 1 ; For i := 2 to n do If a[i] > max then Begin max := a[i] ; csmax :=i ; End ; Writeln('Gia tri lon nhat : ',max) ; Writeln('chi so ptu lon nhat : ',csmax) ; Readln ; End .
|
V. ĐÁNH GIÁ CUỐI BÀI, DẶN DÒ
- Các kiến thức đã học:
- Xem lại thuật toán tìm phần tử lớn nhất của dãy số nguyên
- Xem trước thuật toán sắp xếp dãy số nguyên bằng thuật toán hoán đổi.
VI. RÚT KINH NGHIỆM, BỔ SUNG:
.....................................................................................
.....................................................................................
.....................................................................................
Tiết 23: KIỂU MẢNG (Tiết 3)
I. Mục đích, yêu cầu
1. Kiến thức:
- Củng cố và làm HS hiểu xâu sắc hơn về những thuật toán tìm kiếm, sắp xếp cơ bản mà học sinh đã học ở lớp 10.
2. Kĩ năng:
- Hs sử dụng được biến kiểu mảng một chiều để giải quyết một bài toán đơn giản.
3. Tư duy, thái độ:
- Tự giác, tích cực, chủ động và sáng tạo trong tìm kiếm tri thức
4. Phát triển năng lực
- Hình thành và phát triển cho học sinh năng lực tự học, năng lực công nghệ thông tin, năng lực giải quyết vấn đề.
- Mô hình hoá các tình huống trong thực tiễn bằng cấu trúc mảng một chiều qua việc xử lí bài toán sắp xếp, đếm số lần xuất hiện.
II. PHƯƠNG PHÁP, PHƯƠNG TIỆN DẠY HỌC
1. Phương pháp: Thuyết trình, vấn đáp.
2. Phương tiện: Máy chiếu, máy tính, phòng máy, bảng.
III. LƯU Ý SƯ PHẠM.
- HS cần hình dung được cơ bản về hoạt động của mảng 1 chiều.
- Cần xây dựng các bài thực hành và tổ chức thực hiện tại phòng máy để học sinh đạt được những kĩ năng theo yêu cầu.
IV. TIẾN TRÌNH BÀI DẠY.
1. Ổn định lớp: (Thời lượng:........)
2. Kiểm tra bài cũ, gợi động cơ (Thời lượng:..........)
HOẠT ĐỘNG CỦA GV VÀ HS |
NỘI DUNG |
GV:Nêu bài toán, y/cầu hs xác định In/Output của bài toán.
HS: Đọc đề và xác định bài toán. In: N (N250), dãy A (A[i]<500). Out: dãy A không giảm
GV: Y/cầu hs trình bày lại thuật toán sắp xếp tráo đổi. (Đã học ở lớp 10)
HS:Thuật toán B1: Nhập N, dãy A ; B2: jN; B3: nếu j<2 thì đưa ra dãy đã được sắp xếp, KT; B1: jj-1; i1; B2: Nếu i>j thì Qlại B3; B6: Nếu A[i]>A[i+1] thì tráo đổi A[i] và A[i+1]; B7: Quay lại B2.
Ta dùng biến Dem kiểu nguyên để đếm số lần xuất hiện của x. Ðầu tiên ta gán |
4. Một số ví dụ : VD4: Số nguyên dương N (N250) và dãy A gồm N số nguyên dương, mỗi số đều không vượt quá 500. Hãy sắp xếp dãy A thành dãy không giảm Var A: array[1..300] of integer; N, i, j :integer; Begin {tao mang} Write(‘Nhap n = ’); readln(n); For i:=1 To n Do begin write(‘phan tu thu ’,i,’ =’); readln(A[i]); end; {sap xep mang} For j := N Downto 1 Do for i:=1 to j - 1 do If a[i] > a[i+1] then begin t:=a[i]; a[i]:=a[i+1]; a[i+1] :=t end; {dua ra mang da sap xep} Writeln (‘Mang da duoc sap xep ’); For i :=1 To N Do write (a[i]:4); Readln End. VD4: Ðếm số lần xuất hiện của gía trị x trong dãy A1, A2, ..., An . |
Dem:=0, sau đó duyệt từng phần tử A1, A2, ..., An, mỗi khi có một phần tử bằng x thì tăng biến Dem lên một đơn vị. Kết qủa là biến Dem có gía trị đúng bằng số phần tử bằng x. Hai lệnh chính của thuật toán là:
VD: Đếm trong dãy số A có bao nhiêu số 0, ta viết:
Nhận xét: Ðẳng thức A[i]=x ( hay A[i]=0 ) là điều kiện để biến Dem được tăng thêm 1, vậy bài toán trên có thể mở rộng là: hãy đếm số phần tử của mảng A thỏa mãn một điều kiện cho trước. Trong lệnh For ở trên, khi thay đẳng thức A[i]=x bằng A[i] thỏa mãn điều kiện , ta được thuật toán tổng quát hơn : |
Dem:=0; For i:=1 to N do If A[i]=x then Dem:=Dem+1;
Dem:=0; For i:=1 to N do if A[i]=0 then Dem:=Dem+1; Writeln(‘ Có ‘, Dem , ‘ số không ‘);
Dem:=0; For i:=1 to N do If A[i] thỏa mãn điều kiện then Dem:=Dem+1;
|
V. ĐÁNH GIÁ CUỐI BÀI, DẶN DÒ
- Các kiến thức đã học.
- Xem lại thuật toán sắp xếp dãy số nguyên bằng thuật toán hoán đổi, thuật toán tìm kiếm.
VI. RÚT KINH NGHIỆM, BỔ SUNG:
.....................................................................................
.....................................................................................
.....................................................................................
.....................................................................................
.....................................................................................
© 2024 - nslide
Website chạy thử nghiệm. Thư viện tài liệu miễn phí mục đích hỗ trợ học tập nghiên cứu , được thu thập từ các nguồn trên mạng internet ... nếu tài liệu nào vi phạm bản quyền, vi phạm pháp luật sẽ được gỡ bỏ theo yêu cầu, xin cảm ơn độc giả