Bài 9 Làm việc với dãy số TIN HỌC 8 TRẦM THANH ViỆT Trường THCS Tân Hiệp... While do ; Đầu tiên kiểm tra điều kiện, nếu điều kiện sai thì kết thúc, nếu điều kiện đúng thì thực hiện câu
Trang 1Bài 9
Làm việc với dãy số
TIN HỌC 8
TRẦM THANH ViỆT Trường THCS Tân Hiệp
Trang 2KIỂM TRA BÀI CŨ
Hãy ghi cú pháp của câu lệnh lặp với số lần chưa biết trước? Và giải thích
While <điều kiện> do <câu lệnh>;
Đầu tiên kiểm tra điều kiện, nếu điều kiện sai thì kết thúc, nếu điều kiện đúng thì thực hiện câu lệnh sau đó quay lại kiểm tra điều kiện, vòng lặp cứ thế tiếp tục.
Trang 31 Dãy số và biến mảng:
Làm việc với dãy số
Bài 9
Ví dụ 1: Giả sử ta cần viết một chương trình tính điểm kiểm tra của các học sinh trong một lớp sau đó in ra màn hình điểm cao nhất ? Var Diem_1, Diem_2, Diem_3,…:Real;
….
Readln(Diem_1); Readln(Diem_2);…
Em có nhận xét gì đoạn chương trình này ?
Những hạn chế:
- Phải khai báo quá nhiều biến.
- Chương trình tính toán phải viết quá dài.
Khắc phục những hạn chế trên:
- Ghép chung các biến trên thành một dãy.
- Đặt chung một tên và đặt cho một phần tử một chỉ số.
KIỂU DỮ LIỆU MẢNG
Dữ liệu kiểu mảng
là gì ?
- Dữ liệu kiểu mảng là một tập hợp hữu hạn các phần tử
có thứ tự, có cùng kiểu dữ liệu
- Mảng được đặt tên và mỗi phần tử mang một chỉ số
Trang 4Làm việc với dãy số
1 Dãy số và biến mảng:
Ví dụ:
A
Trong đó:
Tên mảng: A
Chỉ số: i
Ví dụ: A[5]=17
17
Bài 9
Trang 52 Ví dụ về biến mảng:
Làm việc với dãy số
Ví dụ:
Var Chieucao: Array[1 50] of real;
Var Tuoi: Array[1 80] of Integer;
Từ ví dụ trên em hãy nêu cấu trúc khai báo kiểu mảng
trong pascal ?
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: là các hằng hoặc biểu thức nguyên Chỉ số đầu <= chỉ số cuối
Giữa hai chỉ số là dấu
Ví dụ: Var Diem: Array[1 50] of Real;
Bài 9
Trang 6Làm việc với dãy số
2 Ví dụ về biến mảng:
For i:=1 to 50 do Readln(Diem[i]);
For i:=1 to 50 do
If Diem[i]>8.0 then Writeln(‘Gioi’);
Đoạn chương trình này có ưu điểm gì ?
Bài 9
Trang 73 Tìm giá trị lớn nhất và nhỏ nhất của dãy số:
Làm việc với dãy số
Program MaxMin;
Uses crt;
Var i, n, Max, Min: integer;
A: Array[1 100] of integer;
Begin
Clrscr;
Write('Hay nhap do dai cua day so, N = '); readln(n);
Writeln('Nhap cac phan tu cua day so:');
For i:=1 to n do Begin
Write('a[',i,']='); Readln(a[i]);
End;
Max:=a[1]; Min:=a[1];
For i:=2 to n do Begin if Max<a[i] then Max:=a[i];
If Min>a[i] then Min:=a[i]
End;
Write('So lon nhat la Max = ',Max);
Write('; So nho nhat la Min = ',Min);
Readln;
End.
Phần khai báo
Phần thân
Ví dụ 3:
Bài 9
Trang 8Làm việc với dãy số
GHI NHỚ:
1 Dữ liệu kiểu mảng là tập hợp hữu hạn các phần tử có thứ
tự và mọi phần tử đều có cùng một kiểu dữ liệu
2 Việc gán giá trị, nhập 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ử đó
3 Sử dụng các biến 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
Bài 9
Trang 9CỦNG CỐ
Câu 1: Hãy ghi cú pháp của kiểu mảng ? Câu 2: Câu lệnh khai báo biến mảng sau đây máy tính có thực hiện được không ? Nếu không thực hiện được thì hãy sửa lại cho máy tính thực hiện được ?
Var N:Integer;
A:Array[1 N] of Real;
Trang 10DẶN DÒ
- Về học bài này
- Trả lời các câu hỏi và bài tập trang 79 SGK
- Xem lại các bài 7, 8 và 9 tiết sau ôn tập chuẩn bị kiểm tra
1 tiết