Tin học đại cương - Bài 6: Giới thiệu mảng một và hai chiều
Tin học đại cương - Bài 6: Giới thiệu mảng một và hai chiều
Cách thực hiện
Đề nhập dữ liệu cho mảng hai chiều ta nhập dữ liệu từng phần của từng mảng
nhập dữ liệu cho phầ tử ở vị trí hàng thứ i, cột thứ j ta thực hiện câu lện cin
18 trang |
Chia sẻ: huyhoang44 | Lượt xem: 738 | Lượt tải: 0
Bạn đang xem nội dung tài liệu Tin học đại cương - Bài 6: Giới thiệu mảng một và hai chiều, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Đặt vấn đề Giới thiệu về mảng một chiều Nhập dữ liệu và in dữ liệu cho mảng một chiều Giới thiệu về mảng hai chiều Cách nhập và in dữ liệu mảng hai chiều Tóm tắt nội dung bài học
TIN HỌC ĐẠI CƯƠNG
BÀI 6: GIỚI THIỆU MẢNG MỘT VÀ HAI CHIỀU
Giảng Viên: ThS. Đinh Phú Hùng
Bộ môn: Khoa Học Máy Tính
Email: hungdp@tlu.edu.vn
1 / 18
Đặt vấn đề Giới thiệu về mảng một chiều Nhập dữ liệu và in dữ liệu cho mảng một chiều Giới thiệu về mảng hai chiều Cách nhập và in dữ liệu mảng hai chiều Tóm tắt nội dung bài học
Nội Dung
1 Đặt vấn đề
2 Giới thiệu về mảng một chiều
3 Nhập dữ liệu và in dữ liệu cho mảng một chiều
4 Giới thiệu về mảng hai chiều
5 Cách nhập và in dữ liệu mảng hai chiều
6 Tóm tắt nội dung bài học
2 / 18
Đặt vấn đề Giới thiệu về mảng một chiều Nhập dữ liệu và in dữ liệu cho mảng một chiều Giới thiệu về mảng hai chiều Cách nhập và in dữ liệu mảng hai chiều Tóm tắt nội dung bài học
Đặt vấn đề
Xét ví dụ sau:
Tính tổng của 100 số nguyên nhập từ bàn phím.
Nhận xét:
Chương trình sẽ có thể sẽ rất dài vì cần khai báo 100 biến
kiểu số nguyên.
Nếu đầu bài yêu cầu tính tổng của vài nghìn số hay một số
yêu cầu khác như sắp xếp, tính trung bình cộng thì cách này
sẽ không khả thi.
Như vậy cần thiết phải có cấu trúc giúp ta thực hiện việc này
đơn giản hơn.
3 / 18
Đặt vấn đề Giới thiệu về mảng một chiều Nhập dữ liệu và in dữ liệu cho mảng một chiều Giới thiệu về mảng hai chiều Cách nhập và in dữ liệu mảng hai chiều Tóm tắt nội dung bài học
Giới thiệu về mảng một chiều
Định nghĩa:
Mảng là một tập hợp các phần tử có cùng kiểu dữ liệu.
Cách khai báo mảng
Tên mảng [Số phần tử tối đa]
Trong đó:
Kiểu dữ liệu: Là các kiểu quy định trong c++, ví dụ như int,
float, double...
Tên mảng: Là một dãy kí tự liền nhau và không có dấu cách,
không chứa các kí tự đặc biệt.
Số phần tử tối đa: Là một số nguyên dương.
4 / 18
Đặt vấn đề Giới thiệu về mảng một chiều Nhập dữ liệu và in dữ liệu cho mảng một chiều Giới thiệu về mảng hai chiều Cách nhập và in dữ liệu mảng hai chiều Tóm tắt nội dung bài học
Giới thiệu về mảng một chiều
Ví dụ: int M[10];
Khai báo mảng một chiều tên M gồm 10 phần tử kiểu số
nguyên.
Chỉ số của mảng bắt đầu từ 0, kết thúc là 9.
Phần tử bắt đầu là M[0], kết thúc là M[9].
5 / 18
Đặt vấn đề Giới thiệu về mảng một chiều Nhập dữ liệu và in dữ liệu cho mảng một chiều Giới thiệu về mảng hai chiều Cách nhập và in dữ liệu mảng hai chiều Tóm tắt nội dung bài học
Nhập dữ liệu cho mảng một chiều
Cách thực hiện:
Để nhập dữ liệu cho mảng một chiều ta nhập dữ liệu cho
từng phần tử của mảng.
Nhập dữ liệu cho phần tử thứ i ta thực hiện câu lệnh cin»M[i]
Sử dụng cấu trúc vòng lặp
Câu lệnh minh họa
for (int i = 0; i<n; i++) //Giả sử cần nhập dữ liệu cho n phần tử
{
cin»M[i]; //Nhập dữ liệu cho phần tử thứ i của mảng
}
6 / 18
Đặt vấn đề Giới thiệu về mảng một chiều Nhập dữ liệu và in dữ liệu cho mảng một chiều Giới thiệu về mảng hai chiều Cách nhập và in dữ liệu mảng hai chiều Tóm tắt nội dung bài học
Nhập dữ liệu cho mảng một chiều
Ví dụ 1: Khai báo mảng và nhập dữ liệu cho mảng một chiều
Câu lệnh minh họa
#include
using namespace std;
main()
{
int M[100]; //Khai báo mảng gồm 100 phần tử (số nguyên)
int n; cin»n; //Nhập số phần tử thực tế cần dùng
for (int i = 0; i< n; i++)
{
cout«"Nhập phần tử M["«i«"]";
cin»M[i];
}
}
7 / 18
Đặt vấn đề Giới thiệu về mảng một chiều Nhập dữ liệu và in dữ liệu cho mảng một chiều Giới thiệu về mảng hai chiều Cách nhập và in dữ liệu mảng hai chiều Tóm tắt nội dung bài học
In dữ liệu cho mảng một chiều
Cách thực hiện:
Để in dữ liệu cho mảng một chiều ta in dữ liệu cho từng phần
tử của mảng.
Để in dữ liệu cho phần tử thứ i ta thực hiện câu lệnh
cout«M[i].
Có thể thực hiện cách in trên 1 dòng (mỗi phần tử cách nhau
1 khoảng trắng) hay cột (mỗi phần tử trên 1 dòng)
Sử dụng cấu trúc vòng lặp
Câu lệnh minh họa
for (int i = 0; i<n; i++) //Giả sử cần nhập dữ liệu cho n phần tử
{
cout«M[i]«" "; //in theo dòng
cout«M[i]«endl;//in theo cột
}
8 / 18
Đặt vấn đề Giới thiệu về mảng một chiều Nhập dữ liệu và in dữ liệu cho mảng một chiều Giới thiệu về mảng hai chiều Cách nhập và in dữ liệu mảng hai chiều Tóm tắt nội dung bài học
Một số bài toán trên mảng một chiều
Tính tổng các phần tử của mảng.
Tính tổng các phần tử của mảng thỏa mãn điều kiện nào đó
(chẵn, lẻ, chia k dư m).
Tính trung bình cộng các phần tử của mảng thỏa mãn điều
kiện nào đó (chẵn, lẻ, chia k dư m).
Tìm kiếm các phần tử của mảng thỏa mãn điều kiện nào đó
(bằng số k cho trước).
Sắp xếp các phần tử của mảng (tăng dần, giảm dần).
Kiểm tra các tính chất của mảng (toàn chẵn, lẻ, hay đối
xứng...).
Tìm phần tử lớn nhất, nhỏ nhất trên mảng cùng với vị trí
tương ứng.
9 / 18
Đặt vấn đề Giới thiệu về mảng một chiều Nhập dữ liệu và in dữ liệu cho mảng một chiều Giới thiệu về mảng hai chiều Cách nhập và in dữ liệu mảng hai chiều Tóm tắt nội dung bài học
Giới thiệu về mảng hai chiều
Định nghĩa: Là tập hợp các phần tử có cùng kiểu dữ liệu được tổ
chức dưới dạng bảng. Hay hiểu một cách đơn giản là một mảng
mà mỗi phần tử của nó là một mảng 1 chiều.
Minh họa mảng hai chiều:
M[0][0] M[0][1] M[0][2] M[0][3]
M[1][0] M[1][1] M[1][2] M[1][3]
M[2][0] M[2][1] M[2][2] M[2][3]
M[3][0] M[3][1] M[3][2] M[3][3]
10 / 18
Đặt vấn đề Giới thiệu về mảng một chiều Nhập dữ liệu và in dữ liệu cho mảng một chiều Giới thiệu về mảng hai chiều Cách nhập và in dữ liệu mảng hai chiều Tóm tắt nội dung bài học
Giới thiệu về mảng hai chiều
Cách khai báo mảng hai chiều
Tên mảng [Số hàng tối đa][Số cột tối đa]
Trong đó:
Kiểu dữ liệu: Là các kiểu quy định trong c++, ví dụ như int,
float, double...
Tên mảng: Là một dãy kí tự liền nhau và không có dấu cách,
không chứa các kí tự đặc biệt.
Số hàng tối đa: Là một số nguyên dương.
Số cột tối đa: Là một số nguyên dương.
11 / 18
Đặt vấn đề Giới thiệu về mảng một chiều Nhập dữ liệu và in dữ liệu cho mảng một chiều Giới thiệu về mảng hai chiều Cách nhập và in dữ liệu mảng hai chiều Tóm tắt nội dung bài học
Giới thiệu về mảng hai chiều
Ví dụ: int M[4][4];
Khai báo mảng hai chiều tên M gồm 4x4 phần tử kiểu số
nguyên.
Chỉ số theo hàng bắt đầu từ 0, kết thúc là 3.
Chỉ số theo cột bắt đầu từ 0, kết thúc là 3.
Phần tử của mảng bắt đầu từ M[0][0], kết thúc là M[3][3].
M[0][0] M[0][1] M[0][2] M[0][3]
M[1][0] M[1][1] M[1][2] M[1][3]
M[2][0] M[2][1] M[2][2] M[2][3]
M[3][0] M[3][1] M[3][2] M[3][3]
12 / 18
Đặt vấn đề Giới thiệu về mảng một chiều Nhập dữ liệu và in dữ liệu cho mảng một chiều Giới thiệu về mảng hai chiều Cách nhập và in dữ liệu mảng hai chiều Tóm tắt nội dung bài học
Cách nhập dữ liệu cho mảng hai chiều
Cách thực hiện:
Để nhập dữ liệu cho mảng hai chiều ta nhập dữ liệu cho từng
phần tử của mảng.
Nhập dữ liệu cho phần tử ở vị trí hàng thứ i, cột thứ j ta thực
hiện câu lệnh cin»M[i][j].
Sử dụng hai cấu trúc vòng lặp lồng nhau, một vòng lặp chạy
theo hàng i, một vòng lặp chạy theo cột j.
13 / 18
Đặt vấn đề Giới thiệu về mảng một chiều Nhập dữ liệu và in dữ liệu cho mảng một chiều Giới thiệu về mảng hai chiều Cách nhập và in dữ liệu mảng hai chiều Tóm tắt nội dung bài học
Cách nhập dữ liệu cho mảng hai chiều
Ví dụ 2: Khai báo mảng hai chiều và nhập dữ liệu cho mảng
Câu lệnh minh họa
#include
using namespace std;
main()
{
int M[100][100]; //Khai báo mảng kích thước 100x100
int m, n; cin»m»n; //Nhập số phần tử thực tế cần dùng
for (int i = 0; i < m; i++)
{
for (int j = 0; j < n; j++)
{ cout«"Nhap phần tử M["«i«"]["«j«"]"; cin»M[i][j];
}
}
}
14 / 18
Đặt vấn đề Giới thiệu về mảng một chiều Nhập dữ liệu và in dữ liệu cho mảng một chiều Giới thiệu về mảng hai chiều Cách nhập và in dữ liệu mảng hai chiều Tóm tắt nội dung bài học
Cách in dữ liệu cho mảng hai chiều
Cách thực hiện:
Để in dữ liệu cho mảng hai chiều ta in dữ liệu cho từng phần
tử của mảng.
In dữ liệu của phần tử ở vị trí hàng thứ i, cột thứ j ta thực
hiện câu lệnh cout«M[i][j].
Sử dụng hai cấu trúc vòng lặp lồng nhau, một vòng lặp chạy
theo hàng i, một vòng lặp chạy theo cột j.
15 / 18
Đặt vấn đề Giới thiệu về mảng một chiều Nhập dữ liệu và in dữ liệu cho mảng một chiều Giới thiệu về mảng hai chiều Cách nhập và in dữ liệu mảng hai chiều Tóm tắt nội dung bài học
Cách in dữ liệu cho mảng hai chiều
Ví dụ 3: In dữ liệu cho mảng hai chiều
Câu lệnh minh họa
#include
using namespace std;
main()
{
...//Sau khi đã nhập xong dữ liệu cho mảng hai chiều
for (int i = 0; i < m; i++)
{
for (int j = 0; j < n; j++)
{ cout« M[i][j] « " ";
}
cout«endl;
}
}
16 / 18
Đặt vấn đề Giới thiệu về mảng một chiều Nhập dữ liệu và in dữ liệu cho mảng một chiều Giới thiệu về mảng hai chiều Cách nhập và in dữ liệu mảng hai chiều Tóm tắt nội dung bài học
Một số bài toán trên mảng hai chiều
Tính trung bình cộng các phần tử trên đường chéo chính,
đường chéo phụ.
Tìm phần tử có giá trị lớn nhất, nhỏ nhất trên đường chéo
chính, đường chéo phụ.
17 / 18
Đặt vấn đề Giới thiệu về mảng một chiều Nhập dữ liệu và in dữ liệu cho mảng một chiều Giới thiệu về mảng hai chiều Cách nhập và in dữ liệu mảng hai chiều Tóm tắt nội dung bài học
Tóm tắt nội dung bài học
Mảng một chiều:
Cách khai báo mảng một chiều.
Cách nhập và in dữ liệu của mảng một chiều.
Một số bài toán trên mảng một chiều
Mảng hai chiều:
Cách khai báo mảng hai chiều.
Cách nhập và in dữ liệu của mảng hai chiều.
Một số bài toán trên mảng hai chiều
18 / 18
Các file đính kèm theo tài liệu này:
- tin_dai_cuong_bai_6_gi_i_thi_u_m_ng_m_t_va_hai_chi_u_4499.pdf