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

tiet 56: lam viec voi day so (cuc hay)

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 (1012.29 KB, 15 trang )


Kiểm tra bài cũ
Em hãy viết cấu trúc câu lệnh khai báo biến mảng và
cho biết lợi ích của việc sử dụng biến mảng?


2. Ví dụ về biến mảng:

Ví dụ 2: Tiếp tục với ví dụ 1
giả sử chúng ta cần nhập
điểm kiểm tra môn tin học
của 1 lớp gồm 40 học sinh!


Var Diem1, Diem2, Diem3, …, Diem40: Real;

Readln(Diem1); Readln(Diem2); … ; Readln(Diem40);
Khi sử dụng biến
mảng thì nhập dữ
liệu cho biến như thế
nào?

Var Diem: array[1..40] of Real;

For i:= 1 to 40 do Readln(Diem[i]) ;


Em hãy viết câu lệnh: Nếu điểm
Khi sử dụng8biếnlên thì in ra màn
kiểm tra từ trở mảng thì các
hình là “giỏi” bằng cáchdụng báo


câu lệnh này được sử khai
biến thôngnào?
như thế thường ?

IF Diem1 >= 8 then writeln(‘ gioi ’) ;
IF Diem2 >= 8 then writeln(‘ gioi ’) ;
…….
IF Diem40 >= 8 then writeln(‘ gioi ’) ;

For i: =1 to 40 do If Diem[i] >=8 then Writeln(‘ gioi ‘) ;
Sử dụng biến mảng rất hiệu quả trong việc sử lý dữ liệu


Ví dụ 3: Viết chương trình
nhập điểm kiểm tra của 3
mơn tốn, lý, văn sau đó
tính điểm trung bình của 3
môn

DiemToan
8
6
7
… … … …
Var DiemToan, DiemVan, DiemLi,6
DiemTB: array[1..40] of real;
DiemVan
7
8
6

9
… … … …

9
7
8
7
… … … …
Diemtoan
For i:= 1 to 40 do
1
2
3
4
… … … 40
chỉ số
DiemTB[i]:=(DiemToan[i]+DiemVan[i]+DiemLi[i])/3;
Ta có thể đọc giá trị, tính tốn giá trị và gán giá trị cho
biến mảng giống như biến thông thường.


3. Tìm giá trị lớn nhất và nhỏ nhất của dãy số
Bài tốn: Viết chương trình nhập N số ngun từ bàn
phím và in ra màn hình số nhỏ nhất và số lớn nhất.

Input:: Dãy số A gồm N số

Output: Max, Min của dãy số

Hãy nêu ý tưởng tìm

số lớn nhất và nhỏ
nhất của dãy số


* ý tưởng tìm max:
- Đặt giá trị Max = a1.
- Lần lượt cho i chạy từ 2 đến N, so sánh
giá trị ai với giá trị Max, nếu ai > Max thì
Max nhận giá trị mới là ai.
* Đoạn chương trình
Max:=A[1];
For i:=2 to N do IF (A[i] > Max) Then Max:=A[i];


thuật toán tìm max
Số này
mới lớn
nhất. Ha
ha!

Số này
lớn nhất

7

MAX

4

8


ồ! Sốra số
Tìm này
hơn
lớn nhất
rồi. Hi hi!

9

6


Program vd1;
Uses crt;
Var
i, n, Max, Min: integer ;
A: Array[1..100] of Integer ;
BEGIN

END.

Clrscr;
write(‘ Nhap so phan tu cua day so: n= ’) ; readln(n) ;
For i := 1 to n do
Begin
write(‘ Nhap so thu ‘,i,’ : ‘) ;
readln(A[i]) ;
End;
Max:=A[1];
For i := 2 to n do

If A[i]>Max Then Max := A[i];
Writeln(‘ So lon nhat la max = ', Max) ;
Min:=A[1];
For i := 2 to n do
If A[i]Writeln(‘ So nho nhat la Min = ', Min) ;
Readln ;

Khai b¸o biến mảng

Nhập vào biến mảng

Tìm số lớn nhất và số
nhỏ nhÊt


Chương trình chạy và cho kết quả như sau:
Nhap so phan tu cua day so: n= 7
Nhap so thu 1 : 7
Nhap so thu 2 : 9
Nhap so thu 3 : 4
Nhap so thu 4 : 6
Nhap so thu 5 : 9
Nhap so thu 6 : 8
Nhap so thu 7 : 5
So lon nhat la Max = 9
So nho nhat la Min = 4


TỔNG KẾT


Sử dụng biến mảng rất hiệu quả trong việc sử lý dữ liệu
Ta có thể đọc giá trị, tính toán giá trị và gán giá trị cho
biến mảng giống như biến thơng thường.
Thuật tốn tìm Max, Min


Ghi nhớ!
Dữ liệu kiểu mảng là một tập hợp hữu
hạn các phần tử được xắp xếp theo
dÃy và mọi phần tử đều có cùng một
kiểu dữ liệu.
Việc gán giá trị, đọc giá trị và tính
toán với các giá trị của một phần tử
trong biến mảng được thực hiện thông
qua chỉ số tương ứng của phần tử đó.
Sử dụng các biến kiểu mảng và câu
lệnh lặp giúp cho việc viết chương
trình được ngắn gọn và dễ dàng hơn.


DẶN DÒ
- Xem trước bài thực hành 7sgk 80,81
- Viết chương trình cho ví dụ 1


Kính chào các thầy cơ
Chúc các em học giỏi




×