Bài 9. Làm việc với dãy số

Chia sẻ bởi Lương Thị Bích Ngọc | Ngày 24/10/2018 | 36

Chia sẻ tài liệu: Bài 9. Làm việc với dãy số thuộc Tin học 8

Nội dung tài liệu:

Bài 9
LÀM VIỆC VỚI DÃY SỐ
1. Dãy số và biến mảng.
Ví dụ:
Giả sử chúng ta cần viết chương trình nhập điểm kiểm tra của các học sinh trong một lớp sau đó in ra màn hình số điểm cao nhất.
Var Diem_1, Diem_2, Diem_3, .: real;
.
Read (Diem_1) ; Read (Diem_2) ;
Read (Diem_3) ; .
Khi dùng một biến duy nhất để lưu nhiều dữ liệu có liên quan với nhau (như Diem_1, Diem_2, .: real; .) và đánh "số thứ tự" cho các giá trị đó, ta có thể sử dụng quy luật tăng hay giảm của "số thứ thự" và một vài câu lệnh lặp để xử lý dữ liệu, chẳng hạn:
Với i=1 đến 50: hãy nhập Diem_i;
Với i=1 đến 50: hãy so sánh Max với Diem_i;
Để giải quyết vấn đề trên chúng ta cần có dữ liệu gì?
1. Dãy số và biến mảng.
Để giải quyết vấn đề trên, ngôn ngữ lập trình có một kiểu dữ liệu được gọi là kiểu mảng.
Dữ liệu kiểu mảng là gì?
Dữ liệu kiểu mảng là tập hợp hữu hạn các phần tử có thứ tự, mọi phần tử đều có cùng một kiểu dữ liệu, gọi là kiểu của phần tử.
1. Dãy số và biến mảng.
Việc sắp xếp thứ tự như thế nào?
Việc sắp thứ tự được thực hiện bằng cách gán cho mỗi phần tử một chỉ số:
1. Dãy số và biến mảng.
Khi khai báo một biến có kiểu dữ liệu là kiểu mảng, biến đó được gọi là biến mảng. Khi sử dụng biến mảng, chúng ta sắp thứ tự theo chỉ số các biến có cùng kiểu dưới một tên duy nhất.
Giá trị của biến mảng là một mảng, tức một dãy số (số nguyên, hoặc số thực) có thứ tự, mỗi số là giá trị của biến thành phần tương ứng.
Vậy giá trị của biến mảng như thế nào?
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
Chỉ số cuối
2. Ví dụ về biến mảng.
Cách khai báo mảng như sau:
Tên mảng: array [.. ] of
Trong đó chỉ số đầu và chỉ số cuối là hai số nguyên thỏa mãn chỉ số đầu ? chỉ số cuối và kiểu dữ liệu có thể là integer hoặc real.
Hãy nêu cách khai báo mảng?
2. Ví dụ về biến mảng.
Ví dụ 2:
Tiếp tục với ví dụ 1, thay vì khai báo các biến Diem_1, Diem_2, Diem_3,. để lưu điểm học sinh ta khai báo như sau:
Var Diem: array[1..50] of real;
Cách khai báo biến như trên có lợi ích gì?
Giúp tiết kiệm thời gian và công sức viết chương trình.
2. Ví dụ về biến mảng.
Mỗi học sinh có nhiều điểm theo từng môn học: điểm toán, điểm văn, điểm lý, . Vậy để xử lý các loại điểm này ta có thể khai báo nhiều biến mảng:
Var DiemToan: array[1..50] of real;
Var DiemVan: array[1..50] of real;
Var DiemLy: array[1..50] of real;
Var DiemToan, DiemVan, DiemLy: array[1..50] of real;
hay
2. Ví dụ về biến mảng.
Khi đó, ta cũng có thể xử lý điểm thi của một học sinh cụ thể
3. Tìm giá trị lớn nhất và 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 và in ra màn hình số nhỏ nhất và lớn nhất. N cũng được nhập từ bàn phím.
Ví dụ 3:
3. Tìm giá trị lớn nhất và nhỏ nhất của dãy số.
Thuật toán tìm Max của dãy số nguyên nhập vào từ bàn phím như sau:
Bước 1: Nhập N và dãy A1, ., An.
Bước 2: Max ? A1.
Bước 3: Lần lượt gán giá trị từ 2 đến N cho i. Với mỗi giá trị của i thì thực hiện. Nếu Max < Ai thì Max ? A1.
Bước 4: Đưa ra màn hình giá trị Max rồi kết thúc.
3. Tìm giá trị lớn nhất và nhỏ nhất của dãy số.
Ví dụ 3:
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, = `); 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 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.
BÀI TẬP VẬN DỤNG
Câu 1. Cách khai báo biến mảng sau đây trong pascal đúng hay sai? Giải thích?
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
Sai
"Có thể xem biến mảng là một biến được tạo từ nhiều biến có cùng kiểu nhưng chỉ dưới một tên duy nhất". Phát biểu đó đúng hay sai?
Đúng
Câu 2.
* Một số tài liệu cũ có thể bị lỗi font khi hiển thị do dùng bộ mã không phải Unikey ...

Người chia sẻ: Lương Thị Bích Ngọc
Dung lượng: | Lượt tài: 1
Loại file:
Nguồn : Chưa rõ
(Tài liệu chưa được thẩm định)