Mô tả bài toán
Tạo ứng dụng Console, cho trước 1 mảng 2 chiều A 3x5 (2D array) như sau:10 | 50 | 13 | 80 | 40 |
1 | 250 | 65 | 28 | 15 |
12 | 17 | 45 | 20 | 6 |
Cách giải quyết
Tạo biến tạm với:min = A[0,0]
max = A[0,0]
A[i,j] > max
=> set lại giá trịmax = A[i,j]
A[i,j] < min
=> set lại giá trịmin = A[i,j]
Source code
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace FindMaxAndMinMatrix2D { class Program { static void Main(string[] args) { const int x = 3, y = 5; int min, max; int[,] arr = new int[x, y] { { 10, 50, 13, 80, 40 }, { 1, 250, 65, 28, 15 }, { 12, 17, 45, 20, 6 } }; //Declare two variables max and min to store maximum and minimum. //Assume first array element as maximum and minimum both, say max = arr[0,0] and min = arr[0,0] min = arr[0, 0]; max = arr[0, 0]; // Iterate through array to find maximum and minimum element in array. //Inside loop for each array element check for maximum and minimum. for (int i = 0; i < x; i++) { for (int j = 0; j < y; j++) { //Assign current array element to max, if (arr[i,j] > max) if (arr[i, j] > max) { max = arr[i, j]; } //Assign current array element to min if if (arr[i,j] < min) if (arr[i, j] < min) { min = arr[i, j]; } } } //Print Array Elements Console.Write("Array Elements\n"); for (int i = 0; i < x; i++) { for (int j = 0; j < y; j++) { Console.Write(arr[i, j] + ", "); } Console.WriteLine(); } Console.WriteLine(); //Print max and min number Console.WriteLine("Maximum element:" + max); Console.WriteLine("Minimum element:" + min); Console.ReadLine(); } } }
Github
https://github.com/kellyfire611/learning.nentang.vn-csharp/blob/master/src/FindMaxAndMinMatrix2D/Program.csMục lục
Chương trình học
- Cài đặt môi trường Lập trình C# 2
-
Nhập môn Lập trình C#
18
- Giới thiệu ngôn ngữ lập trình C# #323
- Cấu trúc chương trình C# #166
- Cú pháp cơ bản C# #238
- Các kiểu dữ liệu trong C# #240
- Chuyển đổi kiểu dữ liệu trong C# #245
- Khởi tạo biến trong C# #247
- Hằng số trong C# #249
- Toán tử trong C# #251
- Điều kiện trong C# #253
- Vòng lặp trong C# #262
- Tính bao đóng trong C# #274
- Tạo phương thức/hàm trong C# #276
- Đối tượng Nullable trong C# #280
- Mảng trong C# #283
- Chuỗi trong C# #349
- Cấu trúc trong C# #351
- Enums trong C# #353
- Truyền Tham số Reference hay Tham trị (Value) trong C# #10172
-
Hướng đối tượng trong C#
12
- Class trong C# #355
- Kế thừa trong C# #359
- Tính đa hình trong C# #361
- Nạp chồng toán tử trong C# #534
- Giao diện (Interface) trong C# #537
- Namespace trong C# #540
- Các lệnh tiền xử lý trong C# #543
- Biểu thức chính quy (Regular) trong C# #726
- Bắt các lỗi/ngoại lệ (Exception) trong C# #730
- Xử lý Đọc/Ghi File trong C# #732
- LINQ trong C# #7805
- Mã hóa (Encryption) và Giải mã (Decryption) trong C# #11880
- Các kỹ thuật nâng cao trong C# 2
-
Bài tập thực hành
28
- Khai báo các Kiểu dữ liệu cho Mẫu Lý lịch A2 và Mẫu Hóa đơn Bán hàng #7703
- Sử dụng các Toán tử cơ bản trong C# #7704
- Kiểm tra số chẵn hay lẻ #171
- Thay đổi vị trí của 2 phần tử #175
- Tính tổng các kí tự số #224
- Đảo ngược con số #229
- Tạo chương trình ATM đơn giản #466
- Tạo chương trình ATM đơn giản với các phương án rút tiền theo các mệnh giá #477
- Tìm số Max, Min trong mảng 2 chiều #480
- Tạo cấu trúc lưu trữ thông tin Nhân viên #654
- Làm quen Hướng đối tượng trong C# #661
- Mã hóa chuỗi với Hacker Speak (H4ck3rSp34k) #681
- Mã hóa chuỗi với Alternating Captions (AlTeRnAtInG_CaPs) #683
- Tính tổng 2 số nhỏ nhất trong danh sách #689
- Trích xuất thông tin từ dữ liệu trong FILE TEXT #760
- In bảng cửu chương #7747
- In tam giác Nhị phân #7749
- In tam giác Số ký tự #7751
- Đếm số 1 #7754
- Sử dụng Mảng 2 chiều để in tên dạng Asterisk ra màn hình #7761
- Sử dụng Mảng 1 chiều để phân tách Tên với khoảng cách #7765
- Bài tập Biểu thức Chính quy (Regular Expression) #7779
- Ghi log lỗi với File và Try Catch #7795
- Ghi Access log #7796
- LINQ group by tên tập tin #7812
- LINQ với collection #7822
- Tạo chương trình Quản lý Danh sách Sinh viên và Giảng viên #8554
- Bài tập tạo các CLASS OOP C# căn bản 1 #11842
- Kiểm tra kiến thức 1
- Kiểm tra kiến thức - Đồ án 4
Các bài học
Bài học trước Bài học tiếp theo
Chương trình học
Bao gồm Module, Chương, Bài học, Bài tập, Kiểm tra...Chương trình học
- Cài đặt môi trường Lập trình C# 2
-
Nhập môn Lập trình C#
18
- Giới thiệu ngôn ngữ lập trình C# #323
- Cấu trúc chương trình C# #166
- Cú pháp cơ bản C# #238
- Các kiểu dữ liệu trong C# #240
- Chuyển đổi kiểu dữ liệu trong C# #245
- Khởi tạo biến trong C# #247
- Hằng số trong C# #249
- Toán tử trong C# #251
- Điều kiện trong C# #253
- Vòng lặp trong C# #262
- Tính bao đóng trong C# #274
- Tạo phương thức/hàm trong C# #276
- Đối tượng Nullable trong C# #280
- Mảng trong C# #283
- Chuỗi trong C# #349
- Cấu trúc trong C# #351
- Enums trong C# #353
- Truyền Tham số Reference hay Tham trị (Value) trong C# #10172
-
Hướng đối tượng trong C#
12
- Class trong C# #355
- Kế thừa trong C# #359
- Tính đa hình trong C# #361
- Nạp chồng toán tử trong C# #534
- Giao diện (Interface) trong C# #537
- Namespace trong C# #540
- Các lệnh tiền xử lý trong C# #543
- Biểu thức chính quy (Regular) trong C# #726
- Bắt các lỗi/ngoại lệ (Exception) trong C# #730
- Xử lý Đọc/Ghi File trong C# #732
- LINQ trong C# #7805
- Mã hóa (Encryption) và Giải mã (Decryption) trong C# #11880
- Các kỹ thuật nâng cao trong C# 2
-
Bài tập thực hành
28
- Khai báo các Kiểu dữ liệu cho Mẫu Lý lịch A2 và Mẫu Hóa đơn Bán hàng #7703
- Sử dụng các Toán tử cơ bản trong C# #7704
- Kiểm tra số chẵn hay lẻ #171
- Thay đổi vị trí của 2 phần tử #175
- Tính tổng các kí tự số #224
- Đảo ngược con số #229
- Tạo chương trình ATM đơn giản #466
- Tạo chương trình ATM đơn giản với các phương án rút tiền theo các mệnh giá #477
- Tìm số Max, Min trong mảng 2 chiều #480
- Tạo cấu trúc lưu trữ thông tin Nhân viên #654
- Làm quen Hướng đối tượng trong C# #661
- Mã hóa chuỗi với Hacker Speak (H4ck3rSp34k) #681
- Mã hóa chuỗi với Alternating Captions (AlTeRnAtInG_CaPs) #683
- Tính tổng 2 số nhỏ nhất trong danh sách #689
- Trích xuất thông tin từ dữ liệu trong FILE TEXT #760
- In bảng cửu chương #7747
- In tam giác Nhị phân #7749
- In tam giác Số ký tự #7751
- Đếm số 1 #7754
- Sử dụng Mảng 2 chiều để in tên dạng Asterisk ra màn hình #7761
- Sử dụng Mảng 1 chiều để phân tách Tên với khoảng cách #7765
- Bài tập Biểu thức Chính quy (Regular Expression) #7779
- Ghi log lỗi với File và Try Catch #7795
- Ghi Access log #7796
- LINQ group by tên tập tin #7812
- LINQ với collection #7822
- Tạo chương trình Quản lý Danh sách Sinh viên và Giảng viên #8554
- Bài tập tạo các CLASS OOP C# căn bản 1 #11842
- Kiểm tra kiến thức 1
- Kiểm tra kiến thức - Đồ án 4
Bài học trước Bài học tiếp theo
Menu Tiện ích
Menu Hướng dẫn Học tập
❤🧡💛💚💙💜 Học là phải THỰC HÀNH ❤🧡💛💚💙💜
Thực hiện các bước tuần tự theo nội dung Bài học nhé!