এই বিভাগে আমরা দেখব কিভাবে একটি প্রদত্ত সংখ্যা অ্যাডাম সংখ্যা (Adam Number) কিনা তা যাচাই করার প্রোগ্রাম লিখা যায়। প্রথমে জানি অ্যাডাম সংখ্যা কী।
একটি সংখ্যা n যদি অ্যাডাম সংখ্যা হয়, তবে n-এর বর্গ এবং n-এর বিপরীত (reverse) সংখ্যার বর্গ পরস্পর বিপরীত হয়। উদাহরণস্বরূপ, ১৩ কে নিই। এর বিপরীত ৩১। ১৩-এর বর্গ ১৬৯, আর ৩১-এর বর্গ ৯৬১। ১৬৯ এবং ৯৬১ পরস্পর বিপরীত, তাই ১৩ একটি অ্যাডাম সংখ্যা।
অ্যাডাম সংখ্যা যাচাই করার ধাপসমূহ:
- সংখ্যা n নিন
- সংখ্যাটি বিপরীত করুন এবং m-এ সংরক্ষণ করুন
- n-এর বর্গ নিয়ে sq_n-এ রাখুন
- m-এর বর্গ নিয়ে sq_m-এ রাখুন
- যাচাই করুন sq_n এবং sq_m-এর বিপরীত সমান কিনা
উদাহরণ কোড
#include <iostream>
using namespace std;
int reverseNumber(int num) {
int res = 0;
while (num != 0) {
res = res * 10 + num % 10; // শেষ ডিজিট কেটে রেজাল্টে যোগ
num /= 10; // সংখ্যা কমানো
}
return res;
}
bool checkAdamNumber(int num) {
int rev_num = reverseNumber(num);
int sq_num = num * num;
int sq_rev_num = rev_num * rev_num;
// যদি sq_num এবং sq_rev_num পরস্পর বিপরীত হয়, তবে অ্যাডাম সংখ্যা
if (sq_num == reverseNumber(sq_rev_num)) {
return true;
}
return false;
}
int main() {
int num;
cout << "Enter a number to check whether it is Adam number or not: ";
cin >> num;
if (checkAdamNumber(num)) {
cout << "The number is an Adam number";
} else {
cout << "The number is not an Adam number";
}
return 0;
}
আউটপুট
Enter a number to check whether it is Adam number or not: 13 The number is an Adam number
Enter a number to check whether it is Adam number or not: 25 The number is not an Adam number