Bài tập c++ về mảng có lời giải năm 2024
Trước khi đi vào danh sách các bài tập mảng hai chiều, mình xin nhắc lại một số khái niệm về mảng hai chiều trong C#. Mảng hai chiều trong C#Mẫu đơn giản nhất của mảng đa chiều là mảng hai chiều. Một mảng hai chiều về bản chất là danh sách của các mảng một chiều. Một mảng 2 chiều có thể được nghĩ như là một bảng, có x hàng và y cột. Dưới đây là một mảng hai chiều có 3 hàng và 4 cột. Như vậy, mỗi phần tử trong mảng a được định danh bởi một tên phần tử trong mẫu a[i][j], với a là tên mảng và i, j là các subscript – chỉ số được xác định duy nhất mỗi phần tử trong a. Khởi tạo mảng hai chiều trong C#Các mảng đa chiều có thể được khởi tạo bởi xác định các giá trị trong dấu móc vuông cho mỗi hàng. Sau đây là một hàng với 3 hàng và mỗi hàng chứa 4 cột. int [,] a = int [3,4] = { {0, 1, 2, 3} , / Khởi tạo cho hàng được đánh chỉ mục là 0 / {4, 5, 6, 7} , / Khởi tạo cho hàng được đánh chỉ mục là 1 / {8, 9, 10, 11} / Khởi tạo cho hàng được đánh chỉ mục là 2 / }; Bạn có thể tham khảo thêm về mảng đa chiều trong C# bằng cách click chuột VÀO ĐÂY. Quảng cáo Bài tập mảng hai chiều trong C#Dưới đây là danh sách các bài tập về mảng hai chiều trong C#. Mời bạn click vào link để theo dõi bài tập cũng như chương trình C# minh họa lời giải cho bài tập.
Quảng cáo Đã có app VietJack trên điện thoại, giải bài tập SGK, SBT Soạn văn, Văn mẫu, Thi online, Bài giảng....miễn phí. Tải ngay ứng dụng trên Android và iOS. Theo dõi chúng tôi miễn phí trên mạng xã hội facebook và youtube: Các bạn có thể mua thêm khóa học JAVA CORE ONLINE VÀ ỨNG DỤNG cực hay, giúp các bạn vượt qua các dự án trên trường và đi thực tập Java. Khóa học có giá chỉ 300K, nhằm ưu đãi, tạo điều kiện cho sinh viên cho thể mua khóa học. Nội dung khóa học gồm 16 chuơng và 100 video cực hay, học trực tiếp tại https://www.udemy.com/tu-tin-di-lam-voi-kien-thuc-ve-java-core-toan-tap/ Bạn nào có nhu cầu mua, inbox trực tiếp a Tuyền, cựu sinh viên Bách Khoa K53, fb: https://www.facebook.com/tuyen.vietjack Follow facebook cá nhân Nguyễn Thanh Tuyền https://www.facebook.com/tuyen.vietjack để tiếp tục theo dõi các loạt bài mới nhất về Java,C,C++,Javascript,HTML,Python,Database,Mobile.... mới nhất của chúng tôi. Dạng bài tập liệt kê và đếm khá đơn giản, đề bài thường yêu cầu các bạn đếm hoặc liệt kê các phần tử trong mảng thỏa mãn tính chất cho trước. Ví dụ như số nguyên tố, thuận nghịch, số chẵn, lẻ... Để giải bài tập này bạn cần chuẩn bị hàm kiểm tra tính chất mà đề bài yêu cầu, việc cần làm còn lại chỉ cần duyệt qua từng phần tử trong mảng và kiểm tra thỏa mãn yêu cầu thì sẽ đếm hoặc liệt kê Bài 1 : Liệt kê các số nguyên tố trong mảng include "iostream"include "math.h"using namespace std; bool nt(int n){ if(n < 2) for(int i = 2; i <= sqrt(n); i++){ }
return true;
}
int main(){
int n = 10;
int a[10] = {2, 3, 19, 88, 100, 28, 47, 31, 14, 25};
cout << "Cac so nguyen to trong day : ";
for(int i = 0; i < n; i++){ }
return 0;
}Output : Cac so nguyen to trong day : 2 3 19 47 31 Ví dụ 2 : Đếm và liệt kê các số thuận nghịch trong mảng include "iostream"include "math.h"using namespace std; bool tn(int n){ int rev = 0, tmp = n; while(n != 0){ }
return rev == tmp;
}
int main(){
int n = 10;
int a[10] = {2222, 3, 19, 88, 12321, 28, 4774, 31, 141, 25};
int dem = 0;
for(int i = 0; i < n; i++){
if(tn(a[i])){ }
cout << "So luong so thuan nghich : " << dem << endl;
cout << "Danh sach so thuan nghich : ";
for(int i = 0; i < n; i++){ }
return 0;
}Output : So luong so thuan nghich : 6 Danh sach so thuan nghich : 2222 3 88 12321 4774 141 2.Tìm Max, Min Để tìm phần tử lớn nhất (nhỏ nhất) trong mảng ta có thể làm như sau :
Code : include "iostream"include "math.h"using namespace std; int main(){ }Output : So lon nhat : 12321 So nho nhat : 3 Bạn cũng có thể tìm max bằng cách khởi tạo giá trị cho biến max_val một giá trị rất nhỏ (-109) để khi duyệt qua phần tử đầu tiên trong mảng thì giá trị của biến max_val sẽ được cập nhật ngay. Ngược lại khi tìm min bạn sẽ khởi tạo giá trị của min_val là một số rất lớn (109). Tùy thuộc vào giới hạn của đề bài để bạn có thể quyết định khởi tạo giá trị phù hợp cho max_val và min_val, max_val sẽ khởi tạo nhỏ hơn giá trị nhỏ nhất mà đề bài cho, min_val sẽ khởi tạo là số lớn hơn giá trị lớn nhất mà đề bài cho. Ví dụ đề bài cho các phần tử trong mảng thuộc [0, 106] thì max_val bạn cần khởi tạo nhỏ hơn 0 và min_val bạn cần khởi tạo lớn hơn 106. Code : include "iostream"include "math.h"using namespace std; define MIN -1000000000define MAX 1000000000int main(){ }Output : So lon nhat : 12321 So nho nhat : 3 3. Mảng Đối Xứng Kiểm tra mảng đối xứng Để kiểm tra mảng đối xứng bạn cần xét các cặp phần tử đối xứng với nhau, nếu 2 phần tử này có giá trị khác nhau có thể kết luận luôn mảng không đối xứng. Xét thấy phần tử có chỉ số i thì phần tử đối xứng với nó sẽ có chỉ số n - i - 1, số cặp mà bạn cần phải xét sẽ là N / 2 với N là số lượng phần tử trong mảng. Ví dụ với mảng có 6 phần tử bạn cần xét 3 cặp, 5 phần tử bạn cần xét 2 cặp vì phần tử chính giữa sẽ đối xứng với chính nó nên không cần kiểm tra. a102030302010i012345n - i - 1543210 Code : include "iostream"include "math.h"using namespace std; bool doixung(int a[], int n){ }
int main(){ }Output : Mang a doi xung : true Mang b doi xung : false Lật ngược mảng Bạn cũng có thể sử dụng code trên để lật ngược một mảng, bạn sẽ xét từng cặp phần tử trong mảng và hoán đối giá trị. Code : Cac so nguyen to trong day : 2 3 19 47 31 0 Output : Cac so nguyen to trong day : 2 3 19 47 31 1 4. Đếm Cặp Phần Tử Dạng bài tập này sẽ yêu cầu các bạn xét tất cả các cặp phần tử trong mảng A[] có N phần tử và kiểm tra tính chất của các cặp này, ví dụ đếm số cặp phần tử nguyên tố cùng nhau trong mảng, đếm cặp số có tổng bằng K ... |