บทนำ
Adam Number: จำนวนที่กำลังสองของมัน เป็นตัวเลขกลับ (reverse) ของกำลังสองของตัวเลขกลับ
ตัวอย่าง
12: 12² = 144, reverse(12) = 21, 21² = 441, reverse(441) = 144 → 144 = 144 ✓ เป็น Adam Number
อัลกอริทึม
- คำนวณ n²
- หา reverse ของ n
- คำนวณ reverse(n)²
- หา reverse ของ reverse(n)²
- เปรียบเทียบกับ n²
ตัวอย่างโค้ด C++
#include <iostream>
using namespace std;
int reverseDigits(int num) {
int rev = 0;
while (num > 0) {
rev = rev * 10 + num % 10;
num /= 10;
}
return rev;
}
int main() {
int num = 31;
cout << num << " is ";
int rev = reverseDigits(num);
if ((num * num) == reverseDigits(rev * rev))
cout << "Adam Number";
else
cout << "not an Adam Number";
return 0;
}
ผลลัพธ์
31 is Adam Number