Kiểm tra số đối xứng trong C++
Trong bài tập này chúng ta sẽ thực hiện chương trình C++ để kiểm tra số đối xứng. Qua bài tập này giúp các bạn luyện tập nhiều hơn về câu lệnh If, Else và cách sử dụng hàm trong C++.
Nếu một số vẫn giữ nguyên, ngay cả khi chúng ta đảo ngược các chữ số của nó thì số đó được gọi là số đối xứng. Ví dụ 12321 là một số đối xứng vì nó vẫn giữ nguyên nếu chúng ta đảo ngược các chữ số của nó.
Trong bài viết này, mình sẽ chia sẽ hai chương trình C++ để kiểm tra xem số đầu vào có phải là số đối xứng hay không:
- Sử dụng vòng lặp while
- Sử dụng đệ quy.
Ví dụ 1: Chương trình C++ để kiểm tra số đối xứng sử dụng vòng lặp While.
#include <iostream> using namespace std; int main() { int num, reverse_num=0, remainder,temp; cout<<"Nhập vào một số: "; cin>>num; temp=num; while(temp!=0) { remainder=temp%10; reverse_num=reverse_num*10+remainder; temp/=10; } if(reverse_num==num) cout<<num<<" là số đối xứng"; else cout<<num<<" không phải là số đối xứng"; cout<<"\n----------------------------\n"; cout<<"Chương trình này được đăng tại Freetuts.net"; }
Kết quả:
Bài viết này được đăng tại [free tuts .net]
Ví dụ 2: Chương trình kiểm tra số đối xứng sử dụng đệ quy.
#include <iostream> using namespace std; int check_palindrome(int num){ static int reverse_num=0,rem; if(num!=0){ rem=num%10; reverse_num=reverse_num*10+rem; check_palindrome(num/10); } return reverse_num; } int main(){ int num, reverse_num; cout<<"Nhập vào một số: "; cin>>num; reverse_num = check_palindrome(num); if(num==reverse_num) cout<<num<<" là số đối xứng"; else cout<<num<<" không phải là số đối xứng"; 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 kiểm tra số đối xứng. Chúc các bạn thực hiện thành công!!!