Câu 3: Trong ngôn ngữ lập trình Pascal để tham chiếu đến các phần tử trong mảng ta thực hiện như thế nào.. Tên biến mảng (chỉ số) B.[r]
(1)SỞ GIÁO DỤC & ĐÀO TẠO TRÀ VINH
(2)Cấu trúc IF … THEN (Dạng thiếu )
Cấu trúc IF … THEN (Dạng thiếu )
nào sau :
nào sau :
A
D C
B
IF <điều kiện> THEN <câu lệnh 2>;
IF <điều kiện> ELSE <câu lệnh>; IF <câu lệnh> THEN <điều kiện>;
IF <điều kiện> THEN <câu lệnh>; Caâu 1
(3)Cấu trúc IF…THEN….ELSE sau đúng.
Cấu trúc IF…THEN….ELSE sau đúng.
C
B
IF <điều kiện> THEN <câu lệnh 2> ELSE
<câu lệnh 1> Caâu 2
A
D IF <điều kiện> THEN <câu lệnh 1>;
ELSE
<câu lệnh 2>; IF<điều kiện> THEN <câu lệnh>
ELSE
<câu lệnh>;
IF<điều kiện> THEN <câu lệnh 1> ELSE
(4)Lặp với số lần biết trước (Câu lệnh For…do)
Lặp với số lần biết trước (Câu lệnh For…do)
Caâu 3
KIỂM TRA BÀI CŨ
Dạng tiến:
For <biến đếm>:=<GT đầu> to <GT cuối> do <câu lệnh>;
Dạng lùi:
(5)Giáo viên: CÙ YẾN NHI
Bài 11: KIỂU MẢNG
Bài 11: KIỂU MẢNG
KIỂU MẢNG MỘT CHIỀU
b Khai báo mảng chiều
(6)Nhập vào nhiệt độ (trung bình) ngày tuần Tính đưa hình nhiệt độ trung bình tuần số lượng ngày có nhiệt độ TB cao nhiệt trung bình tuần?
* Dữ liệu nhập vào (Input): t1,t2,t3,t4,t5,t6,t7 * Dữ cần tính in (Output): tb, dem.
Hãy xác đ nh Input, ị
Output vi t ế
chương trình gi i ả
bài tốn ?
(7)Giáo viên: CÙ YẾN NHI
Bài 11: KIỂU MẢNG
Bài 11: KIỂU MẢNG
Phần khai báo biến
Nhập nhiệt độ ngày và tính TB
(8)(9)Quan sát chương trình, cho biết muốn tính nhiệt độ trung bình của N ngày năm (VD: N=365) gặp
(10)Khai báo lớn (t1,t2,t3, ,t365)
chương trình dài (với 365 lệnh
IF) !!!!!
Để khắc phục khó
(11)(12)(13)Giáo viên: CÙ YẾN NHI
Bài 11: KIỂU MẢNG
Bài 11: KIỂU MẢNG
a Khái niệm:
Mảng chiều dãy hữu hạn phần tử cùng kiểu, mảng
được đặt tên và phần tử có chỉ số.
Các ngơn ngữ lập trình có quy tắc, cách thức cho phép xác định mảng chiều:
• Tên kiểu mảng chiều.
• Số lượng phần tử.
• Kiểu liệu phần tử.
• Cách khai báo biến mảng.
• Cách tham chiếu đến phần tử
(14)Giáo viên: CÙ YẾN NHI
Bài 11: KIỂU MẢNG
Bài 11: KIỂU MẢNG
17 20 18 25 19 12 19
A
1 2 3 4 5 6 7
Trong đó:
Khi tham chiếu đến phần tử thứ i ta viết: A[i] Tên mảng: A
Số phần tử mảng: 7
Ví dụ:
Kiểu liệu phần tử: Kiểu nguyên
19
(15)Giáo viên: CÙ YẾN NHI
Bài 11: KIỂU MẢNG
Bài 11: KIỂU MẢNG
Cách 1: Khai báo trực tiếp
Var <tên biến mảng>: array [<chỉ số đầu> <chỉ số cuối>] of <kiểu phần tử>;
Ví dụ: Khai báo biến mảng lưu trữ giá trị nhiệt độ 366 ngày năm
Hoặc:
Const Max=366;
Var Nhietdo: array[1 Max] of real; Var Nhietdo: array [1 366] of real;
b Khai báo mảng chiều:
(16)Giáo viên: CÙ YẾN NHI
Bài 11: KIỂU MẢNG
Bài 11: KIỂU MẢNG
Type <tên kiểu mảng>=array[<chỉ số đầu> <chỉ số cuối>] of <kiểu phần tử>;
Cách 2: Khai báo gián tiếp
Var <tên biến mảng>:<tên kiểu mảng>;
Trong đó:
Tên biến mảng, tên kiểu mảng: người lập trình đặt Chỉ số đầu, số cuối: thường biểu thức nguyên,…
Chỉ số đầu số cuối;
Kiểu phần tử: kiểu liệu phần tử
Ví dụ:
TYPE nhietdo = array[1 366] of real; Var A: nhietdo;
Hoặc:
Const Max=366;
(17)Giáo viên: CÙ YẾN NHI
Bài 11: KIỂU MẢNG
Bài 11: KIỂU MẢNG
* Tham chiếu đến phần tử mảng:
<Tên biến mảng>[chỉ số]
32.5 29.4 30.0 31.5 34.1 28.6 32.5
A
1 2 3 4 5 6 7
Ví dụ:
A[1]=32.5 A[6]=28.6
(18)Giáo viên: CÙ YẾN NHI
Bài 11: KIỂU MẢNG
Bài 11: KIỂU MẢNG
Các bước Câu lệnh Pascal
1 Nhập số phần tử mảng n
2 Nhập vào giá trị các phần tử mảng A[i]
c Các thao tác xử lý mảng chiều:
Nhập mảng chiều:
Ví dụ: Nhập nhiệt độ n ngày
Write(‘ Nhap vao so ngay:’); Readln(n);
For i:=1 to n Begin
write(‘nhiet thu’ ,i, ’ : ’); readln(A[i]);
(19)Giáo viên: CÙ YẾN NHI
Bài 11: KIỂU MẢNG
Bài 11: KIỂU MẢNG
Các bước Câu lệnh Pascal
1 Thông báo
2 In giá trị phần tử
In mảng chiều:
Ví dụ: In mảng n vừa nhập
Kết in hình: Mang vua nhap:
17.25 30.35 18.20 21.16 29.36 37.30 29.35
Writeln(‘ Mang vua nhap : ’);
(20)TB = 18.7 Dem=0 7 6 5 4 3 2 1 i 19 17 19 21 18 20 17 A[i]
0 1 1 2 3 3 4
20 21 19 19
+1 +1 +1 +1
Bài 11: KIỂU MẢNG
Bài 11: KIỂU MẢNG
Các bước Câu lệnh Pascal
1 Đếm số ngày có nhiệt
độ cao nhiệt độ TB của tuần
Đếm phần tử mảng thỏa điều kiện cho trước:
dem :=0;
For i :=1 to n
(21)Giáo viên: CÙ YẾN NHI
Khai báo mảng chiều
Nhập mảng chiỊu TÝnh tỉng
(22)Giáo viên: CÙ YẾN NHI
Bài 7: PHẦN MỀM MÁY TÍNH
(23)Câu 1: Cho Khai báo biến mảng có tên B với kiểu liệu là kiểu mảng có tên kiểu H
Chọn khai báo đúng
A Type B= array [1 12] of integer; Var H: B;
B Type H= array [1…12] of integer; Var B: H;
C Type H = array [1 12] of integer; Var B: H;
15 12 1 9 8 7 6 5 20 30 40 50
B
(24)A Var A : array[1…100] of byte; B Var A : array[1 .100] of byte; C Var 1A : array[1 100] of real;
D Type mang = array[0 100] of integer; Var A: kmang;
(25)Câu 3: Trong ngôn ngữ lập trình Pascal để tham chiếu đến phần tử mảng ta thực nào?
A Tên biến mảng (chỉ số) B Tên biến mảng[chỉ số]
(26)A Writeln(‘nhap gia tri cho mang’); For i:=5 to do
Begin
Write(‘nhap A[‘,i,’]=‘); Readln(A[i]);
End;
C Writeln(‘nhap gia tri cho mang’); For i:=1 to do
Begin
Write(‘nhap A[‘,i,’]=‘); Readln(A[i]);
End.
B Writeln(‘nhap gia tri cho mang’); For i:=1 to do
Begin
Write(‘nhap A[‘,i,’]=‘); Readln(A[i]);
End;
D Writeln(‘nhap gia tri cho mang’); For i:=1 to do
Write(‘nhap A[‘,i,’]=‘); Readln(A[i]);
(27)A Writeln(‘mang vua nhap la’); For i:=5 to do
Write (A[i]);
C Writeln(‘mang vua nhap la’);
Write (A[i]);
B Writeln(‘mang vua nhap la’); For i:=1 to do
Write (‘A[i]’);
D Writeln(‘mang vua nhap la’); For i:=1 to do
Write (A[i]);
(28)SỞ GIÁO DỤC & ĐÀO TẠO TRÀ VINH
TRƯỜNG THPT CHUYÊN NGUYỄN THIỆN THÀNH