Trong bài viết này mình sẽ hướng dẫn các bạn cách tìm số lớn nhất trong mảng C#. Đây là một dạng bài tập cơ bản khi làm quen với mảng trong C#, các bạn cần biết cách nhập, xuất và thao tác với mảng mới có thể làm được.
Mình sẽ thực hiện hai chương trình để tìm số lớn nhất trong mảng. Chương trình thứ nhất sẽ tìm số lớn nhất của mảng có sẵn và chương trình hai sẽ do người dùng nhập vào mảng đó.
Tìm số lớn nhất của mảng đã khởi tạo sẵn trong C#
Đầu tiên ta cần khai báo và khởi tạo một mảng các số thực double. Sau đó sử dụng vòng lặp for để hiển thị các phần tử ra màn hình.
Tiếp đến ta khai báo một biến max rồi gán giá trị của phần từ đầu tiên cho nó. Sở dĩ làm như vậy là lát nữa ta sẽ sử dụng max để so sánh với các phần tử còn lại trong mảng và tìm ra số lớn nhất.
Bài viết này được đăng tại [kiso.vn]
//khai báo và gán giá trị đầu tiên trong mảng cho biến max //biến này đưuọc dùng để so sánh với các phần tư khác trong mảng để tìm ra phần tử lớn nhất double max = arr[0];
Bây giờ chỉ cần sử dụng vòng lặp for để lặp từ đầu đến cuối mảng, mỗi lần lặp ta so sánh giá trị của phần tử với max. Kết thúc vòng lặp ta được max chính là giá trị lớn nhất trong mảng
using System; namespace BaiTapCSharp { class Program { static void Main(string[] args) { //khai báo một mảng arr kiểu int với số phần tử là n được nhập ở trên double[] arr = { 12.3, -4, 10, 4.24, 2, 71, -2, -6 }; //sử dụng vòng lặp for để hiển thị các phần tử trong mảng ra màn hình Console.Write("n Cac phan tu trong mang la: "); for (int i = 0; i < arr.Length; i++) { Console.Write(arr[i] + " "); } //khai báo và gán giá trị đầu tiên trong mảng cho biến max //biến này đưuọc dùng để so sánh với các phần tư khác trong mảng để tìm ra phần tử lớn nhất double max = arr[0]; //sử dụng vòng lặp for để lặp từ đầu đén cuối mảng //mỗi lần lặp so sánh phần tử đó với max, nếu số đó lớn hơn max thì gán cho max for(int i = 0; i < arr.Length; i++) { if (max < arr[i]) max = arr[i]; } //cứ như vậy cho đến cuối mảng thì ta được max chính là phần tử lớn nhất trong mảng Console.WriteLine("nn So lon nhat trong mang la: {0}", max); Console.WriteLine("n-----Chuong trinh nay duoc dang tai Kiso.vn---"); } } }
Kết quả:
Tìm số lớn nhất của mảng được nhập từ bàn phím trong C#
Việc tím số lớn nhất trong mảng được nhập từ bàn phím cũng được thực hiện tương tự. Tuy nhiên ta cần phải yêu cầu người dùng nhập vào một mảng. Cụ thể là nhập vào số lượng phần tử của mảng và các giá trị cho phần tử trong mảng.
Dưới đây là chương trình mình đã viết sẵn, bên trong có viết chú thích rõ ràng, các bạn có thể tham khảo nhé !!!
using System; namespace BaiTapCSharp { class Program { static void Main(string[] args) { //khai báo biến n kiểu int là số phần tử của mảng. //sau đó yêu cầu người dùng nhập giá trị cho n Console.Write("n Nhap vao so phan tu cua mang: "); int n = Convert.ToInt32(Console.ReadLine()); //khai báo một mảng arr kiểu double với số phần tử là n được nhập ở trên int[] arr = new int[n]; //sử dụng vòng lặp for để lặp và yêu cầu người dùng nhập vào từng giá trị cho từng phần tử for (int i = 0; i < arr.Length; i++) { Console.Write("n Nhap vao gia tri cho phan tu thu {0}: ", i + 1); arr[i] = Convert.ToInt32(Console.ReadLine()); } //sử dụng vòng lặp for để hiển thị các phần tử trong mảng ra màn hình Console.Write("n Cac phan tu trong mang la: "); for(int i = 0; i < n; i++) { Console.Write(arr[i] + " "); } //khai báo và gán giá trị đầu tiên trong mảng cho biến max //biến này đưuọc dùng để so sánh với các phần tư khác trong mảng để tìm ra phần tử lớn nhất int max = arr[0]; //sử dụng vòng lặp for để lặp từ đầu đén cuối mảng //mỗi lần lặp so sánh phần tử đó với max, nếu số đó lớn hơn max thì gán cho max for(int i = 0; i < n; i++) { if (max < arr[i]) max = arr[i]; } //cứ như vậy cho đến cuối mảng thì ta được max chính là phần tử lớn nhất trong mảng Console.WriteLine("nn So lon nhat trong mang la: {0}", max); Console.WriteLine("n-----Chuong trinh nay duoc dang tai Kiso.vn---"); } } }
Kết quả:
Như vây là chúng ta đã thực hiện xong chương trình tìm số lớn nhất trong mảng C#. Đây là dạng bài tập để làm quen với mảng một chiều trong C#, hãy luyện tập thật nhiều nhé. Chúc các bạn thành công !!!
Bài viết liên quan
[CSF-2] Một số thiết lập CSF, LFD
Hôm nay mình sẽ thực hiện một số thiết lập trên CSF Mở file config để sửa đổi một số tính năng dưới /etc/csf/csf.conf Nội dung chínhTìm số lớn nhất của mảng đã khởi tạo...
[CSF-1] Tăng bảo mật Server với ConfigServer Firewall (CSF)
Nội dung chínhTìm số lớn nhất của mảng đã khởi tạo sẵn trong C#Tìm số lớn nhất của mảng được nhập từ bàn phím trong C#1. Khái niệm CSF: CSF (ConfigServer & Firewall) là một...
Sử dụng SSH Key với Gitlab và Github
Bài viết này mình sẽ hướng dẫn các bạn tạo ssh key cho Gitlab và Github SSH là gì? Secure Socket Shell là một giao thức mạng dùng để thiết lập kết nối mạng một...
Directory traversal vulnerabilities (phần 4)
Nội dung chínhTìm số lớn nhất của mảng đã khởi tạo sẵn trong C#Tìm số lớn nhất của mảng được nhập từ bàn phím trong C#V. Phân tích và khai thác các lỗ hổng Directory...
Directory traversal vulnerabilities (phần 3)
Nội dung chínhTìm số lớn nhất của mảng đã khởi tạo sẵn trong C#Tìm số lớn nhất của mảng được nhập từ bàn phím trong C#V. Phân tích và khai thác các lỗ hổng Directory...
Directory traversal vulnerabilities (phần 2)
Nội dung chínhTìm số lớn nhất của mảng đã khởi tạo sẵn trong C#Tìm số lớn nhất của mảng được nhập từ bàn phím trong C#III. Vì sao lỗ hổng Directory traversal xuất hiện? Với...