Tải bản đầy đủ (.ppt) (17 trang)

BÀI 11: KIỂU MẢNG 1 CHIỀU

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 (691.35 KB, 17 trang )

Bµi 11
Gi¸o ¸n ®iÖn tö tin häc líp 11

Câu 1: Em hãy trình cấu trúc và cách
thực hiện của vòng lặp
While?
<§iỊu kiƯn><C©u
lƯnh>;
§iỊu kiƯn: Lµ biĨu thøc
quan hƯ hc l«gic.

C©u lƯnh: Lµ mét c©u lƯnh cđa
Pascal.
Trong ®ã:
Chõng nµo ®iỊu kiƯn cßn ®óng th× c©u lƯnh cßn ®(ỵc thùc hiƯn.
§iỊu kiƯn

C©u lƯnh

!"#$%&'()$*+,-!.
% !"$%'$*/01.2)3 !",45
$%$*6
* Dữ liệu nhập vào (INPUT): t1,t2,t3,t4,t5,t6,t7.
* Dữ cần tính và in ra (OUTPUT): tb, dem.
Hãy xác định
Input, Output và
viết chơng trình
giải bài toán trên ?
47!89!:
;<=>
?/@/>


A=BCBDBEBFBGBHB@1>
<@@@>
4I
J1/>
K@# @<H) &>‘ ’
@<1#=BCBDBEBFBGBH&>
L#=MCMDMEMFMGMH&NH>
<@LO>

P#=Q&@<@L<@M=>
P#CQ&@<@L<@M=>
P#DQ&@<@L<@M=>
P#EQ&@<@L<@M=>
P#FQ&@<@L<@M=>
P#GQ&@<@L<@M=>
P#HQ&@<@L<@M=>
@1# @<$$L BGC&>‘ ‘
 @1# /)@<@< B<@&>‘ ‘
R@<1>
+
{KHAI BAO BIEN}
{NHAP VAO NHIET DO CUA 7 NGAY}
{ TINH NHIET DO TRUNG BINH CUA TUAN}
{KHOI DONG BIEN DEM}
{ DEM SO NGAY CO NHIET DO CAO HON NHIET DO TB}
Quan sát chơng trình,
hãy cho biết nếu muốn
tính nhiệt độ trung
bình của N ngày trong
năm (VD: N=365) thì sẽ

gặp khó khăn gì ?
Khai báo quá lớn
(t1,t2,t3, ,t365) và
chơng trình quá
dài (với 365 lệnh IF)
!!!!!

Để khắc phục khó khăn
đó ta sử dụng kiểu dữ liệu
mảng một chiều.

17 20 18 25 19 12 19
A
1 2 3 4 5 6 7
Trong ®ã :
F
Khi tham chiÕu ®Õn phÇn tö thø i ta viÕt A[i].
VÝ dô: A[5] = 19.
 Tªn m¶ng : A.
 Sè phÇn tö cña m¶ng: 7.
VÝ dô:
 KiÓu d÷ liÖu cña c¸c phÇn tö: KiÓu nguyªn.
19

6.7


90452510204.5 21
B
1 2 3 4 5 6 7 8



:
F
B[6] =
 Tªn m¶ng:
 Sè phÇn tö cña m¶ng:
 KiÓu d÷ liÖu cña c¸c phÇn tö:
90




!"
* Cách 1: Khai báo gián tiếp
#$%&'()*++,'-./0)'-.//)1"2')3
4+'#(!5)6'()3
4786 #$%&9"*++,:;<1"299+3
4+=69"3
Trong đó 6Chỉ số đầu, chỉ số cuối thờng là các hằng hoặc biểu thức nguyên;


Chỉ số đầu

chỉ số cuối;


Giữa 2 chỉ số là dấu
* Cách 2: Khai báo trực tiếp
4+'(!5)6++,'-./0)'-.//)1"2')3

4+=>?6++,@@1"2+93
4786 4+9"6++,:;<1"299+3
Type
Arrayr1 = array[1 200] of real;
Arrayr2 = array[byte] of real;
Arrayb = array [0 100] of Boolean;
* Khai báo mảng 1 chiều có 200 phần tử kiểu real , chiếm 800 byte
* Mảng 1 chiều có 100 phần tử kiểu Boolean, chiếm 100 byte
trong bộ nhớ.
Tìm xem khai báo
nào đúng, ý nghóa
của các lệnh, chiếm
dung lượng bộ nhớ là
bao nhiêu?
47!89!:
AAB"C7+"
A
n
1. Nhập số phần tử của mảng (n).
Write( Nhap vao so ngay:);
Readln(n);
2. Nhập vào giá trị của các phần tử
trong mảng (A[i]).
For i:=1 to n do
Begin
write(nhiet do ngay thu ,i, : );
readln(A[i]);
end;

Các bớc

Thể hiện bằng
pascal

Nhập mảng một chiều
với n = 7
19171921182017
Ví dụ: Nhập nhiệt độ n ngày.

In mảng một chiều
Writeln( Mang vua nhap : );
For i:=1 to n do Write(A[i]:5);

Mang vua nhap:
- Thông báo
- In giá trị của các phần tử
17 20 18 21 19 17 19
Kết quả in ra màn hình:
Ví dụ: In mảng vừa nhập.
AD5+""0E"+FG
dem :=0;
For i :=1 to n do
IF A[i]>TB then dem:=dem+1;

Các thao tác xử lí khác
Ví dụ: Đếm số ngày có nhiệt độ cao
hơn nhiệt độ TB của tuần.
TB = 18.7
Dem=0
7654321
i

19171921182017
A[i]
0 1 1 2
3
3 4
20 21 19 19
+1 +1 +1+1
à 1;
;

: [1 366] ;
,,à: ;
, : ;

;
( : ) ;
() ;
:= 0 ;
:= 1

( ,, : ) ;
([]) ;
:=+[] ;
;
:= / ; à := 0 ;
:= 1
[]> à := à+1;
( ,, = , : 6 : 2) ;
( : , à) ;
;

.
Khai báo mảng 1 chiều
Nhập mảng 1 chiều
Tính tổng
Đếm số phần tử thoả
mãn điều kiện
Nhap vao so ngay :
7
Nhap nhiet do ngay thu 1 :
17
Nhap nhiet do ngay thu 2 :
20
Nhap nhiet do ngay thu 3 :
18
Nhap nhiet do ngay thu 4 :
21
Nhap nhiet do ngay thu 5 :
19
Nhap nhiet do ngay thu 6 :
17
Nhap nhiet do ngay thu 7 :
19
Nhiet do trung binh 7 ngay = 18.70
So ngay co nhiet do cao hon nhiet do TB la: 4
BFH+IJ"5KF.6
#LFM>"C7+"0NEOPQRP
A#7S+""0E"+FG
VÝ dô: TÝnh tæng c¸c phÇn tö trong
m¶ng chia hÕt cho 3.
S :=0;

For i :=1 to n do
IF A[i] mod 3 = 0 then S:=S+A[i];
19121825162015
LEF
Hãy nhớ!
Mảng một chiều là một dãy hữu
hạn các phần tử cùng kiểu.
!"6 tên mảng, chỉ số đầu,
chỉ số cuối, kiểu phần tử.

#56
Tên biến mảng[chỉ số phần tử]
Nhiều thao tác xử lí mảng dùng
cấu trúc lặp FOR TO DO.
15 20 19 25 18 12 16
Var A:ARRAY[1 100] OF integer;
A[5] = 18
TiÕt häc h«m nay ®Õn ®©y lµ hÕt råi!

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

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