[r]
(1)(2)l n ch a bi t trầ ư ế ước? Và nêu s ho t ự ạ
đ ng.ộ
While <đi u ki n> ề ệ <câu l nh>;ệ
(3)1 Dãy s bi n m ng:ố ế ả
Ví du ï: Vi t chế ương trình nh p vào m ki m ậ ể ể tra môn tin h c c a h c sinh l p (k h c ọ ủ ọ ọ sinh) In hình m s cao nh t.ể ố ấ
Input: m c a k HS.ể ủ
Output: Đi m s cao nh t.ể ố ấ
LÀM VI C V I DÃY SỆ Ớ Ố
(4)(5)1 Dãy s bi n m ng:ố ế ả
Var diem1, diem2, diem 3,…, diemk: real;
…
Read(diem1);
Read(diem2);
…
Read(diemk);
LÀM VI C V I DÃY SỆ Ớ Ố
Bài
Chương trình tr nên ở dài.
Vi c qu n lí bi n ệ ả ế khó khăn.
(6)V y có cách đ thay th k ậ ể ế bi n b i m t bi n ế ở ở ộ ế
nh t hay không? ấ
Và thay th k l n câu l nh ế ầ ệ nh p b i m t câu l nh ậ ở ở ộ ệ
(7)1 Dãy s bi n m ng:ố ế ả
LÀM VI C V I DÃY SỆ Ớ Ố
Bài
8 10
Diem1 Diem2 Diem3 Diem4 Diemk …
8 6 7 5 ……… 10
1 …… k
Diem
Diem1 Diem2 Diem3 Diem4 Diemk
Ch sỉ ố
M ngả
LÀM VI C V I DÃY SỆ Ớ Ố
(8)8 6 7 5 ……… 10
1 …… k
Diem Ch sỉ ố
M ngả
(9)1 Dãy s bi n m ng:ố ế ả
LÀM VI C V I DÃY SỆ Ớ Ố
Bài
8 6 7 5 ……… 10
1 …… k
Diem Ch sỉ ố
(10) M t bi n độ ế ược khai báo có ki u d ể ữ
li u ki u m ng đệ ể ả ược g i ọ bi n ế m ngả
Giá tr c a bi n m ng m t m ng, ị ủ ế ả ộ ả
t c m t dãy s ứ ộ ố
M i s làø giá tr c a t ng ph n t ỗ ố ị ủ ừ ầ ử
trong m ng.ả
8 6 7 5 ……… 10
1 …… k
Diem
(11)1 Dãy s bi n m ng:ố ế ả
D li u ki u m ng m t t p h p ữ ệ ể ả ộ ậ ợ
h u h n ữ ạ ph n t có th tầ ử ứ ự , m i ọ
ph n t đ u có m t ki u d li u, ầ ề ộ ể ữ ệ g i ki u c a ph n t ọ ể ủ ầ ử
M i ph n t đỗ ầ ược xác đ nh b i ch s ị ở ỉ ố
LÀM VI C V I DÃY SỆ Ớ Ố
Bài
8 6 7 5 ……… 10
1 …… k
(12)2 Ví d v bi n m ng.ụ ề ế ả
Ví d :ụ
Var chieucao: array[1 50] of real;
Var tuoi: array[21 80] of integer;
Tên m ngả Ch s đ uỉ ố ầ
Ch s cu iỉ ố ố
Tên m ngả Ch s đ uỉ ố ầ
(13)2 Ví d v bi n m ng.ụ ề ế ả
Ví d :ụ
Var chieucao: array[1 50] of real;
Var tuoi: array[21 80] of integer;
T hai ví d tên, m ng ừ ụ ả trong Pascal khai báo
(14)2 Ví d v bi n m ng.ụ ề ế ả
Cách khai báo m ng nh sau:ả
Var Tên m ngả : Array[<ch s đ u ch s cu iỉ ố ầ ỉ ố ố >] of <ki u d li u>;ể ữ ệ
Ch s đ u, ch s cu i:ỉ ố ầ ỉ ố ố h ng ho c bi u th c nguyênằ ặ ể ứ
Ch s đ uỉ ố ầ <= ch s cu iỉ ố ố
(15)2 Ví d v bi n m ng:ụ ề ế ả
Khai báo bi n m ng ví d 1:ế ả ở ụ
Var Diemtin: array [1 40] of real;
L i ích c a vi c s d ng bi n m ng:ợ ủ ệ ụ ế ả
Có th thay r t nhi u câu l nh nh p in d ể ấ ề ệ ậ ữ
li u hình b ng m t câu l nh l p.ệ Em nêu cách khai ằ ộ ệ ặ
báo bi n m ng cho ví d ế ả ụ 1?
V y, cách khai báo s ậ ử d ng bi n m ng nh ụ ế ả ư
có l i ích gì??ợ
LÀM VI C V I DÃY SỆ Ớ Ố
(16)Write(‘Nhap vo diem HS thu 2: ‘); Readln(diem2);
Write(‘Nhap vo diem HS thu 3: ‘); Readln(diem3);
…
Write(‘Nhap vo diem HS thu k: ‘); Readln(diemk);
write(‘Nhap vao diem HS thu ‘,I,’ : ‘);
(17)Diemtin
n
1 Nh p s ph n t (S ậ ố ầ ố H c sinh) c a m ng A ọ ủ ả
Write(‘ Nhap n= ’); Readln(n);
2 Nh p vào giá tr c a ậ ị ủ ph n t ầ m ng ( diemtin[i])ả
For i:=1 to n Begin
write(‘diem cua hs thu ’ ,i, ’ : ’); readln(diemtin[i]);
end;
Các bước
TH C HI N TRONG ự ệ
PASCAL
a Đ c vào bi n ọ ế m ngả
v i n = 7ớ
5.5 8.0 9.5 6.0 4.5 9.0 7.0
(18)Writeln(‘ Diem tin hoc cua lop : ’);
For i:=1 to n Begin
Textcolor(i); Write(diemtin[i]:4:1); End;
Diem tin hoc cua lop : 1 Thông báo
In giá tr c a ị ủ các ph n t ầ ử
7.0 9.0 4.5 6.0 9.5 8.0 5.5
K t qu in hình:ế ả
(19)3 Tìm giá tr l n nh t nh nh t c a dãy ị ớ ấ ỏ ấ ủ s ố
Vi t chế ương trình nh p N s nguyên t bàn ậ ố ừ phím in hình s nh nh t l n ố ỏ ấ ớ nh t N đấ ược nh p t bàn phím.ậ ừ
Ví d 3:ụ
LÀM VI C V I DÃY SỆ Ớ Ố
(20)nh t ?ấ l n h n nh t r iấ
MAX
Qu bả é
h n, b quaơ ỏ Qu bả é
h n, b quaơ ỏ
6.0 9.5
4.5
7.0 8.0
7.0
4.5
(21)3 Tìm giá tr l n nh t nh nh t c a dãy ị ớ ấ ỏ ấ ủ s ố
Thu t tốn tìm Max c a dãy s ngun nh p vào ậ ủ ố ậ t bàn phím nh sau:ừ
Bước 1: Nh p N dãy A1, …, An.ậ Bước 2: Max A1
Bước 3: L n lầ ượt gán giá tr t đ n N cho i V i ị ế m i giá tr c a i th c hi n N u Max < Ai ỗ ị ủ ự ệ ế Max A1
(22)A: Array[1 100] of real; i,n: integer;
Max,min: real;
BEGIN
Clrscr;
write(‘ Nhap vao so h c sinh : ’) ;ọ readln(n) ;
For i := to n Begin
write(‘ Nhap diem Hs thu ‘,i,’ : ‘) ; readln(A[i]) ;
End; Max:=A[1];
For i := to n
If A[i]>Max Then Max := A[i]; Writeln(‘ Diem lon nhat la ', Max:5:1) ; Min:=A[1];
For i := to n
If A[i]<Min Then Min := A[i];
Writeln(‘ Diem nho nhat la ', Min:5:1) ; Readln ;
END.
Khai báo bi n m ngế ả
Nh p vào bi n ậ ế m ngả
(23)Nhap vao so hoc sinh : 7
Nhap diem hs thu : 7.0
Nhap diem hs thu : 9.0
Nhap diem hs thu : 4.5
Nhap diem hs thu : 6.0
Nhap diem hs thu : 9.5
Nhap diem hs thu : 8.0
Nhap diem hs thu : 5.5
Diem lon nhat la 9.5
Diem nho nhat la 4.5
(24)1 D li u ki u m ng t p h p h u h n ph n t có thữ ệ ể ả ậ ợ ữ ầ ứ t m i ph n t đ u có m t ki u d li u.ự ọ ầ ề ộ ể ữ ệ
2 Vi c gán giá tr , nh p giá tr tính tốn v i giá tr ệ ị ậ ị ị
c a m t ph n t bi n m ng đủ ộ ầ ế ả ược th c hi n thông quaự ệ ch s tỉ ố ương ng c a ph n t đó.ứ ủ ầ
(25)(26)a) Var X: Array[10, 13] of integer;
b) Var X: Array[5 10.5] of real;
c) Var X: Array[3.4 4.8] of integer;
d) Var X: Array[10 1] of integer;
e) Var X: Array[4 10] of real; Đúng
Sai Sai Sai
(27)“Có th xem bi n m ng m t bi n để ế ả ộ ế ượ ừc t o t nhi u ề bi n có ki u nh ng ch dế ể ỉ ưới m t tên nh t” ộ ấ Phát bi u hay sai?ể
(28)