Giáo án môn Tin học Lớp 11 - Bài 11+12

docx 7 trang lethu 18/11/2025 90
Bạn đang xem tài liệu "Giáo án môn Tin học Lớp 11 - Bài 11+12", để tải tài liệu gốc về máy hãy click vào nút Download ở trên.

Tóm tắt nội dung tài liệu: Giáo án môn Tin học Lớp 11 - Bài 11+12

Giáo án môn Tin học Lớp 11 - Bài 11+12
 Chương IV: KIỂU DỮ LIỆU CÓ CẤU TRÚC
 Bài 11. KIỂU MẢNG
I. Yều cầu:
 - Biết được 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 kiểu mảng một chiều và khai báo biến mảng một chiều.
 - Viết chương các bài toán về mảng 1 chiều
II. Kiến thức trọng tâm
1. Khái niệm: Mảng 1 chiều là dãy hữu hạn các phần tử cùng kiểu. Mảng được đặt tên và mỗi phần 
tử có 1 chỉ số.
 Để người lập trình có thể xây dựng và sử dụng kiều mảng một chiều, các ngôn ngữ lập trình 
 có quy tắc cách thức cho phép xác định:
 - Tên kiểu mảng một chiều;
 - Số lượng phần tử;
 - Kiểu dữ liệu của phần tử;
 - Cách khai báo biến;
 - Cách tham chiếu đến phần tử.
 Có thể truy cập (hay thao tác) trên mỗi phần tử của mảng, trong việc làm đó mỗi phần tử 
 cùa mảng được xác định bởi tên của mảng và chi số tương ứng của phần tử này.
 Kiểu mảng là một kiêu dữ liệu có cấu trúc, rất cần thiết và hữu ích trong nhiều chương 
 trình.
2. Khai báo mảng 1 chiều
- Cách 1: khai báo gián tiếp
 TYPE = ARRAY [Kiểu chỉ số] OF ;
 Var : ;
- Cách 2: Khai báo trực tiếp
 VAR = ARRAY [Kiểu chỉ số] OF ;
 Trong đó: - TYPE, ARRAY, OF, là từ khóa
 - Kiểu chỉ số: có dạng n1..n2 (n1<=n2) đoạn nguyên, liên tục
 - Kiểu phần tử: là các kiểu dữ liệu chuẩn
 Ví dụ1: Khai báo mảng 100 số nguyên.
 1. Viết khai báo trực tiếp biến mảng
 Var A : array[1..100] of integer;
 2. Viết khai báo gián tiếp biến mảng?.
 Type SoNguyen = Array[1..100] of Integer;
 Var A : SoNguyen;
 Ví dụ 2: Khai báo mảng 150 phần tử số thực
 1. Viết khai báo trực tiếp biến mảng
 Var A : array[1..150] of Real;
 2. Viết khai báo gián tiếp biến mảng?.
 Type Sothuc = Array[1..150] of Real; Writeln(‘Nhap N=’); Readln(N);
 For i:=1 to N Do
 Begin
 Write(‘A[ ‘,i,’]=’); 
 Readln(A[i]);
 End;
 Writeln(‘Nhap K=’); Readln(K);
 d:= 0;
 For i:= 1 to N do 
 If A[i] mod K = 0 Then d:=d+1;
 Write(‘so cac so chia het cho’,K,’ la: ’, T) ;
Readln
End. 
5. Bài tập
 Bài 1: Lấy 2 ví dụ về khai báo mảng 1 chiều (cả trực tiếp và gián tiếp)
 Bài 2: Viết chương trình nhập từ bàn phím mảng A gồm N phần tử a1, an từ bàn phím. Tính và 
 đưa ra màn hình tổng của các phần tử chia hết cho 2.
 Bài 3: Viết chương trình nhập từ bàn phím mảng A gồm N phần tử a1, an từ bàn phím. Đếm 
 trong dãy có bao nhiêu số chẵn và số lẻ
 Bài tập ở SGK ở cuối chương và xem 2 bài thực hành 3 và bài thực hành 4 d) Thủ tục insert (s1, s2, vt) chèn xâu s1 vào biến xâu s2, bắt đầu ở ví trí Vt.
Ví dụ: 1l='PC'; s2= ' IBM486 thao tác insert (s1, s2, 4);chokếtquả 'IBMPC486'
e) Hàm copy(S, vt, N) tạo xâu gồm N kí tự liên tiếp bắt đầu từ vị trí vt của xâu s.
Vi dụ: S='Bai hoc thu 9'; biểu thức copy ( s, 9, 5); cho kết quả 'thu 9'
f) Hàm length(s) cho giá trị là độ dài xâu s.
Vi dụ: s= 'Tin hoc' thì biểu thức length (S) có độ dải là 7.
g) Hàm pos(s1, s2) cho vị trí xuất hiện đầu tiên của xâu s1 trong xâu s2.
Ví dụ: s2='abcdef' thì biểu thức pos ('cd', s2) cho kết quả 3.
h) Hàm upcase(ch) cho cữ cái in hoa ứng với chữ cái trong ch.
Ví dụ: 'd' thì biểu thức upcase (ch) cho kết quả ' D'.
Lưu ý:
- Xâu được tạo thành bởi các kí tự, trong đó có thể có dấu cách. Dấu cách thể hiện trong các 
văn bản là phần trống ngăn cách giữa hai từ viết liên tiếp. Kí tự này được gõ bằng phím dài 
nhất trên bàn phím (Space Bar);
- Trong chương trình, khi viết một xâu kí tự, ta phải viết xâu đó giữa hai dấu nháy đơn. 
Nhưng khi nhập từ bàn phím giá trị một xâu, ta chi gõ các kí tự thuộc xâu đó (rồi nhấn phím 
Enter).
- Xâu chỉ gồm một dấu cách được viết là ' '. Để viết xâu rỗng ta viết hai dấu nháy đơn liền 
nhau.
- Khi so sánh hai xâu, xâu có độ dài nhỏ hơn có thể là xâu lớn hơn (>), ví dụ:
'Anh'<'Ba'
- Khi sử dụng lệnh gán, ta có thể gán trị là một kí tự cho một biến xâu kí tự nhưng việc gán 
trị là một xâu kí tự cho một biến kiểu kí tự là không hợp lệ dù xâu đó có độ dài bằng i.
3. Một số ví dụ
Ví dụ 1: Bài toán so sánh hai xâu: nhập vào họ tên của hai người vào hai biến xâu và đưa ra 
màn hình xâu dài hơn, nếu bằng nhau thì đưa ra xâu nhập sau.
Chương trình:
Progam vidul;
var
a, b: string;
begin
write(’Nhap ho ten thu nhat: ’);
readln(a);
write(’Nhap ho ten thu hai : );
readln(b);
if length(a)>length(b) then write(a) else write(b);
readln Ví dụ 4: Bài toán đưa ra màn hình xâu thu được bằng việc loại bỏ các dấu cách (nếu có) của 
xâu nhập vào từ bàn phím.
Chương trình:
program vidu4; \
var i, k:byte;
a, b: string;
begin
write('Nhap vao xau:');
readln (a) ,
k:= length(a)
b:= ' {*Khoi tao xau rong*} for i:= 1 to k do
if a[i] ' ' then b:= b + a[i];
writeln('Ket qua: b);
readln
End.
Khi chạy chương trình, nhập vào một xâu: 'Thủ đô Hà Nội' thì chương trình đưa ra kết quả: 
“ThudoHaNoĩ', còn khi nhập vào xâu ‘ Việt Nam quê hương tôi’ thì chương trình đưa ra 
thông báo: “ VietNamquehuongtoi"
Ví dụ 5. Bài toán tạo xâu gồm tắt cà các chữ số trong xâu nhập vào từ bàn phím (giữ nguyên 
thứ tự xuất hiện của chúng) và đưa kết quả ra màn hình Chương trình
program xulixau;
var si, s2: string;
i: by t e;
begin
write('Nhap xau si: ');
readln ( s1) ;
s2 : = ' ' ;{khoi tao xau s2 rong} for i: = 1 to length(s1) do
then s2:=s2+sl[i];
Khi chạy chương trình, nhập vào xâu vừa kí tự vừa chữ số, chẳng hạn xâu: 'chào mùa hè 
2007" thì kết quả của chương trình là 2007, còn khi nhập vào xâu 'ngay 25 thang 5 nam 2007 
' , kết quả của chương trình là 2 552007
III- Bài tập
Bài1:Hãy viết chương trình nhập vào một xâu S bất kỳ và đưa ra màn hình xâu in hoa.
Bài2:Hãy viết chương trình nhập vào một xâu bất kỳ (có cả ký tự và ký tự số) và đưa ra màn hình 
có bao nhiêu ký tự là số?
Bài 3: bài tập 10 trang 80 SGK

File đính kèm:

  • docxgiao_an_mon_tin_hoc_lop_11_bai_1112.docx