Tìm kiếm theo tiêu đề

Tin tức cộng đồng

5 điều đơn giản cha mẹ nên làm mỗi ngày để con hạnh phúc hơn

Tìm kiếm hạnh phúc là một nhu cầu lớn và xuất hiện xuyên suốt cuộc đời mỗi con người. Tác giả người Mỹ Stephanie Harrison đã dành ra hơn 10 năm để nghiên cứu về cảm nhận hạnh phúc, bà đã hệ thống các kiến thức ấy trong cuốn New Happy. Bà Harrison khẳng định có những thói quen đơn...
Xem tiếp

Tin tức thư viện

Chức năng Dừng xem quảng cáo trên violet.vn

12087057 Kính chào các thầy, cô! Hiện tại, kinh phí duy trì hệ thống dựa chủ yếu vào việc đặt quảng cáo trên hệ thống. Tuy nhiên, đôi khi có gây một số trở ngại đối với thầy, cô khi truy cập. Vì vậy, để thuận tiện trong việc sử dụng thư viện hệ thống đã cung cấp chức năng...
Xem tiếp

Hỗ trợ kĩ thuật

  • (024) 62 930 536
  • 0919 124 899
  • hotro@violet.vn

Liên hệ quảng cáo

  • (024) 66 745 632
  • 096 181 2005
  • contact@bachkim.vn

Bài 11. Kiểu mảng

Wait
  • Begin_button
  • Prev_button
  • Play_button
  • Stop_button
  • Next_button
  • End_button
  • 0 / 0
  • Loading_status
Tham khảo cùng nội dung: Bài giảng, Giáo án, E-learning, Bài mẫu, Sách giáo khoa, ...
Nhấn vào đây để tải về
Báo tài liệu có sai sót
Nhắn tin cho tác giả
(Tài liệu chưa được thẩm định)
Nguồn:
Người gửi: Hoàng Lê
Ngày gửi: 21h:00' 07-06-2020
Dung lượng: 4.1 MB
Số lượt tải: 210
Số lượt thích: 0 người
CHƯƠNG 4:
KIỂU DỮ LIỆU CÓ CẤU TRÚC
_⸙_ KIỂU MẢNG _⸙_
GV: Trần Thị Kim Cương
1. Kiểu Mảng 1 chiều
Khái niệm mảng 1 chiều
Cú pháp khai báo biến kiểu mảng 1 chiều
Một số ví dụ
- Khái niệm mảng 1 chiều
Mảng 1 chiều là một dãy hữu hạn các phần tử có cùng kiểu dữ liệu, mảng được đặt tên và mỗi phần tử trong mảng có 1 chỉ số để truy cập
Để mô tả mảng 1 chiều ta cần xác định:
Kiểu dữ liệu của các phần tử trong mảng
Cách đánh số các phần tử đó
- Khái niệm mảng 1 chiều
Tập hợp A gồm có 5 số nguyên
A = {15,4,231,25,9}
15
25
9
231
4
Mảng A gồm có 5 số nguyên
Mảng gồm 2 phần:
+ chỉ số: để xác định vị trí của số nguyên
+ Giá trị của các phần tử trong mảng
So sánh mảng và tập hợp

Trong đó:
- Kiểu chỉ số có dạng: n1..n2 (n1≤n2), giúp xác định chỉ số của phần tử đầu tiên và chỉ số của phần tử cuối của mảng, đồng thời xác định số lượng phần tử có thể chứa được trong mảng
- Kiểu phần tử: là kiểu dữ liệu chung của các phần tử trong mảng (các kiểu dữ liệu đã học ở bài 4)
- Cách truy xuất giá trị của phần tử trong mảng: tên biến mảng [chỉ số]
a. Khai báo mảng 1 chiều
Cú pháp:
Var tên biến mảng : Array[kiểu chỉ số] of kiểu phần tử;
Lưu ý:
- Sau bước khai báo thì ngôn ngữ lập trình sẽ tạo ra một mảng rỗng (các phần tử có giá trị là 0), giá trị của các phần tử chỉ có khi ta nhập vào ở phần thân chương trình
- Giả sử ta có 1 mảng A được nhập các giá trị sau:
Cách truy xuất giá trị của phần tử thứ 3 trong mảng A ta ghi là A[3],
và A[3] có giá trị là 55
ƯU ĐIỂM CỦA KIỂU MẢNG
Một biến kiểu mảng có thể được định nghĩa để lưu tùy ý một số lượng lớn các phần tử có chung kiểu dữ liệu
Do các phần tử đều có 1 chỉ số xác định, điều đó giúp chúng ta dễ dàng truy xuất giá trị của phần tử đó thông qua tên biến mảng và chỉ số của nó.
Do các phần tử trong mảng có chỉ số liên tục nhau nên chúng ta có thể sử dụng dễ dàng câu lệnh For – do để thực hiện việc nhập, xuất và tính toán mà không cần viết nhiều câu lệnh.
Ví dụ 1: Hãy khai báo một mảng A có thể chứa tối đa 100 số nguyên dương, giá trị mỗi số không vượt quá 255
Tên biến mảng:
kiểu chỉ số (n1..n2):
Kiểu phần tử: số nguyên dương, giá trị <=255
Var A : Array[1..100] of byte ;
a. Khai báo mảng 1 chiều
Cú pháp:
Var tên biến mảng : Array[kiểu chỉ số] of kiểu phần tử;
A
1..100
(ta chọn byte)
Ví dụ 2: Hãy khai báo 1 mảng số thực R, mảng có thể chứa tối đa 250 số thực

- Tên biến mảng:
kiểu chỉ số (n1..n2):
Kiểu phần tử: số thực
Var R : Array[1..250] of real ;
Var tên biến mảng : Array[kiểu chỉ số] of kiểu phần tử;
R
1..250
(ta chọn real)
- Tên biến mảng:
kiểu chỉ số (n1..n2):
Kiểu phần tử: số thực
Var T : Array[1..366] of real ;
T
Ví dụ 3: Hãy khai báo 1 mảng nhiệt độ T, mảng này có thể lưu nhiệt độ trung bình của 366 ngày

1..366
(ta chọn real)
Ví dụ 4: Viết chương trình Nhập vào nhiệt độ của N ngày(N≤366), Tính và in ra màn hình cho biết nhiệt độ trung bình của N ngày đó, và cho biết có bao nhiêu ngày nhiệt độ cao hơn nhiệt độ trung bình
Bước 1: Xác định bài toán
Input: số ngày N và nhiệt độ của N ngày
Output: nhiệt độ trung bình và số ngày có nhiệt độ cao hơn nhiệt độ trung bình
Bước 2: Xác định biến
Var N : word;
T : array[1..366] of real;
TB : real;
Songay : word;
Program nhietdo;
Var N : word; TB : real; Songay : word;
T : array[1..366] of real;
i : word; Tong : real;
Begin
Write(‘ban muon nhap nhiet do cua bao nhieu ngay? ’); readln(N);
For i:=1 to N do
Begin
write(‘Nhap nhiet do ngay thu ’ , i , ‘: ’); readln(T[i]);
End;
For i:=1 to N do Tong := Tong + T[i]; {tính tổng nhiệt độ của N ngày}
TB := Tong/N;
Songay := 0;
For i:=1 to N do if T[i] > TB then songay := songay + 1;
Writeln(‘Nhiet do trung binh la: ’ , TB);
Writeln(‘so ngay co nhiet do cao hon nhiet do trung binh la: ’, songay);
Readln
End.
Demo chương trình
b. Một số ví dụ
Ví dụ 1: Viết chương trình Nhập vào một dãy A gồm N (N≤250) số nguyên dương (giá trị mỗi số không vượt quá 500). In ra màn hình vị trí của số nguyên có giá trị lớn nhất và giá trị của số nguyên lớn nhất
Ý tưởng:
- Giả sử số nguyên lớn nhất là số nguyên đầu tiên Max = A[1], vị trí = 1
- Lần lượt so sánh từ số nguyên thứ 2 cho đến cuối dãy số, nếu số nguyên nào có giá trị lớn hơn Max thì Max nhận giá trị mới là số nguyên đó, vị trí là vị trí của số nguyên có giá trị lớn hơn
Max := A[1] = 125, vị trí := 1;
So sánh A[2] với max (43 < max) nên Max vẫn là 125, vị trí = 1
So sánh A[3] với max (55 < max) nên Max vẫn là 125, vị trí = 1
So sánh A[4] với max (1 < max) nên Max vẫn là 125, vị trí = 1
So sánh A[5] với max (5 < max) nên Max vẫn là 125, vị trí = 1
So sánh A[6] với max (305 > max) nên Max nhận giá trị mới là 305, vị trí =6
So sánh A[7] với max (307 > max(305)) nên Max nhận giá trị mới là 307, vị trí = 7
So sánh A[8] với max (34 < max) nên Max vẫn là 307, vị trí số nguyên lớn nhất là 7
So sánh A[9] với max (34 < max) nên Max vẫn là 307, vị trí số nguyên lớn nhất là 7
So sánh A[10] với max (100 < max) nên Max vẫn là 307, vị trí số nguyên lớn nhất là 7
Bước 1: Xác định bài toán
Input: N và dãy gồm N số nguyên dương
Output: vị trí và giá trị của số nguyên lớn nhất
Bước 2: Xác định biến
Var N : byte;
A : array[1..250] of word;
vitri : byte;
Max : word;
Program tim_songuyen_lonnhat;
Var N, i , vitri : byte; Max: word;
A : array[1..366] of word;
Begin
Write(‘ban muon nhap bao nhieu so nguyen ’); readln(N);
For i:=1 to N do
Begin
write(‘Nhap so nguyen thu ’ , i , ‘: ’); readln(A[i]);
End;
Max := A[1] ; vitri :=1;
For i:=2 to N do if A[i] > Max then
begin
Max :=A[i];
vitri := i ;
end;
Writeln(‘ - vi tri so nguyen lon nhat la ’ , vitri);
Writeln(‘ - gia tri so nguyen lon nhat la ’, Max);
Readln
End.
 
Gửi ý kiến