BÀI 11: MẢNG TRONG ARDUINO
GIỚI THIỆU
Mảng là một tập hợp tuần tự các phần tử có cùng kiểu dữ liệu và các phần tử được lưu trữ trong một dãy các ô nhớ liên tục trên bộ nhớ. Các phần tử của mảng được truy cập bằng cách sử dụng “chỉ số”. Mảng có kích thước N sẽ có chỉ số từ 0 tới N – 1.
II. Cú pháp
Khai báo mảng 1 chiều
Có các cách sau để ta khai báo 1 mảng 1 chiều:
int mang1[5] = {01,02,03,04,05}; (1)
<Kiểu DL><tên mảng>[]= {<các phần tử của mảng>}
hoặc
int mang1[] = {01,02,03,04,05}; (2)
hoặc
int mang1[5];
mang1[0] = 01;
mang1[1] = 02;
mang1[2] = 03;
mang1[3] = 04;
mang1[4] = 05;
Trong việc khai báo mảng, vấn đề tiên quyết là chúng ta cần khai báo số lượng phần tử mảng cụ thể để tránh lỗi.
Ở (1) chúng ta khai báo rõ số phần tử của mảng là 5.
Ở (2) Compiler sẽ tự tính toán giúp chúng ta số phần tử của mảng là 5.
Kiểu dữ liệu khi khai báo mảng sẽ quyết định kiểu dữ liệu của các phần tử trong mảng.
Ví dụ:
char mang1[5] nghĩa là ta có 5 phần tử của mảng có kích thước char (1 byte).
int mang1[5] nghĩa là ta có 5 phần tử của mảng có kích thước int (2 byte).
float mang1[5] nghĩa là ta có 5 phần tử của mảng có kích thước float (4 byte).
double mang1[5] nghĩa là ta có 5 phần tử của mảng có kích thước double (8 byte).
Ví dụ 1: https://wokwi.com/projects/391952110332647425
2. Truy cập các phần tử của mảng
Chúng ta truy cập vào các phần tử của mảng thông qua chỉ số. Chỉ số của mảng bắt đầu từ 0 và kết thúc tại phần tử thứ N-1 nếu như mảng có N phần tử. Tại sao chỉ số của mảng lại bắt đầu từ 0 thay vì bắt đầu từ 1 ?
Cú pháp
ten_mang[chi_so]
3. In các phần tử trong mảng
Ví du 2: Cho danh sách mảng A[]= {2,3,6,9,4,1,7,12,20,12,15,30}; tính tổng các phần tử trong mảng A[] chia hết cho 2.
Ví dụ 3: Cho danh sách mảng A[]= {2,3,6,9,4,1,7,12,20,12;15,30}; tìm số lớn nhất và nhỏ nhất trong mảng nêu trên.
Ví dụ 4: Cho danh sách mảng A[]= {2,3,6,9,4,1,7,12,20,12;15,30}; tính tổng các phần tử chia hết cho 3 và 5
Ví dụ 5: https://wokwi.com/projects/389778460247078913