Trong bài viết này chúng ta sẽ thực hiện chương trình tìm chữ số nhỏ nhất trong số nguyên dương n bằng C / C++. Để hiểu được bài bài các bạn cần có kiến thức cơ bản về C và C++.
Mình sẽ thực hiện hai chương trình để tìm chữ số lớn nhất bằng hai ngôn ngữ khác nhau là C và C++.
Tìm chữ số nhỏ nhất trong số nguyên dương n bằng C
Sử dụng vòng lặp do..while để yêu cầu người dùng nhập vào số nguyên dương n, nếu n < 0 thì yêu cầu nhập lại.
do { printf("\nNhập vào số nguyên dương n: "); scanf("%d", &n); }while(n < 0 && printf("\nSố n phải lớn hơn hoặc bằng 0!!"));
Khởi tạo cho min bằng số nguyên dương n chia lấy dư cho 10.
min = n % 10;
Kiểm tra xem n = 0 hay không, nếu n bằng 0 thì số nhỏ nhất là min = 0.
if(n == 0) min = 0;
Tiếp đến sử dụng vòng lặp do..while với điều kiện n /= 10 để tìm chữ số nhỏ nhất trong n.
do { i = n % 10; if(i < min) { min = i; } }while(n /= 10);
Sau khi kết thúc vòng lặp ta được chữ số lớn nhất là max, khi đó chỉ cần hiển thị max ra màn hình bằng printf().
Code:
#include<stdio.h> int main() { int i, n, temp; int min; //sử dụng vòng lặp do..while để yêu cầu người dùng nhập vào số nguyen dương n //nếu n < 0 thì yêu cầu nhập lại do { printf("\nNhập vào số nguyên dương n: "); scanf("%d", &n); }while(n < 0 && printf("\nSố n phải lớn hơn hoặc bằng 0!!")); temp = n; //khởi tạo cho min min = n % 10; //nếu n = 0 thì min = 0 if(n == 0) min = 0; //sử dụng vòng lặp do..while để tìm chữ số nhỏ nhất trong n do { i = n % 10; if(i < min) { min = i; } }while(n /= 10); printf("\nChữ số lớn nhỏ trong %d là: %d",temp, min); printf("\n-----------------------------------\n"); printf("Chương trình này được đăng tại Freetuts.net"); }
Kết quả:
Tìm chữ số lớn nhất trong số nguyên dương n bằng C++
Việc tìm chữ số lớn nhất trong số nguyên dương n bằng C++ cũng tương tự như ngôn ngữ C. Về cơ bàn hai ngôn ngữ này khá tương đồng nhau.
Ta chỉ cần thay thế printf() và scanf() trong ngôn ngữ C bằng cout và cin trong ngôn ngữ C++. Nhớ khai báo thư viện trước khi sử dụng cout và cin nhé.
#include<iostream> using namespace std; int main() { int i, n, temp; int min; //sử dụng vòng lặp do..while để yêu cầu người dùng nhập vào số nguyen dương n //nếu n < 0 thì yêu cầu nhập lại do { cout<<"\nNhập vào số nguyên dương n: "; cin>>n; }while(n < 0 && cout<<"\nSố n phải lớn hơn hoặc bằng 0!!"); temp = n; //khởi tạo cho min min = n % 10; //nếu n = 0 thì min = 0 if(n == 0) min = 0; //sử dụng vòng lặp do..while để tìm chữ số nhỏ nhất trong n do { i = n % 10; if(i < min) { min = i; } }while(n /= 10); cout<<"\nChữ số nhỏ nhất trong "<<temp<<" là: "<<min; cout<<"\n-----------------------------------\n"; cout<<"Chương trình này được đăng tại Freetuts.net"; }
Kết quả:
Như vậy là chúng ta đã thực hiện xong chương trình tìm chữ số nhỏ nhất trong số nguyên dương n bằng C / C++. Các bạn có thể tham khảo các bài tập khác tại Tổng hợp 1000 bài tập C / C++ nhé, chúc các bạn thành công !!!
Nguồn: freetuts.net