Bài viết hôm nay mình sẽ hướng dẫn các bạn cách kiểm tra các chữ số của một số có tăng dần từ trái sang phải bằng code C++
Giới thiệu bài toán kiểm tra số tăng giảm
Đề bài: Nhập vào một số nguyên dương n. Hãy kiểm tra xem các chữ số của số nguyên n có tăng dần từ trái sang phải hay không.
Ví dụ:
12346
là số có các chữ số tăng dần từ trái sang phải.12245
không là số thỏa mãn yêu cầu bài toán.
Ý tưởng:
- Ý tưởng của mình là mình sẽ lưu các chữ số của số nguyên
n
vào một mảngarr
sau đó tiến hành kiểm tra xem các số trong mảngarr
có giảm dần hay không. Vì ta lấy các chữ số của số nguyên n theo chiều đằng sau tới. Nên ta phải kiểm tra điều kiện ngược lại, tức số sau phải lớn hơn số trước. - Các bạn tiến hành lấy từng chữ số của một số nguyên
n
sau đó tiến hành lưu vào mảngarr
. Lưu ý phải dùng một biếnj
để làm chỉ số của mảng, sau mỗi lần lưu vào mảngarr
thì ta tăng giá trị của j lên một đơn vị. - Sau khi lưu các chữ số của số nguyên n vào
arr
thì các chữ số này sẽ được sắp xếp từ sau tới trước. Vì khi các bạn lấy số ra các bạn lấy từ đằng sau tới. - Kiểm tra xem các số trong mảng
arr
có giảm dần hay không, nếu có thì in ra"YES"
nếu không thì in ra"NO"
.
Code bài giải bằng C++
#include<iostream> using namespace std; int main(){ int n; int arr[20]; int j = 0; cout<<"Nhap vao so nguyen n: "; cin>>n; while(n!=0){ arr[j] = n % 10; n/=10; j++; } bool isbool = true; for(int i = 0; i< j; i++){ if(arr[i] <= arr[i+1] ) isbool = false; } if(isbool) cout<<"YES"; else cout<<"NO"; return 0; }
Sau khi chương trình chạy ta có các kết quả sau
Nhap vao so nguyen n: 123 YES
Nhap vao so nguyen n: 1234566 NO
Nhap vao so nguyen n: 321 NO
Bài viết mình đến đây là kết thúc. Cám ơn các bạn đã theo dõi !
Để lại một bình luận