Palindrome คือ คำ ตัวเลข ประโยค หรือลำดับอักขระที่อ่านจากหน้าหลังหรือหลังหน้าได้เหมือนกัน เช่น 121, 12321, "level"
หลักการทำงาน
- รับตัวเลขจากผู้ใช้
- เก็บค่าเดิมไว้ในตัวแปร
temp - วนลูปกลับตัวเลขโดยใช้สูตร:
while(n > 0) { r = n % 10; // หาหลักสุดท้าย sum = (sum * 10) + r; // สร้างตัวเลขกลับ n = n / 10; // ตัดหลักสุดท้ายออก } - เปรียบเทียบ
tempกับsumถ้าเท่ากัน = Palindrome
ตัวอย่างโปรแกรม
#include <stdio.h>
#include <conio.h>
int main() {
int n, r, sum = 0, temp;
printf("Enter a number: ");
scanf("%d", &n);
temp = n;
while(n > 0) {
r = n % 10;
sum = (sum * 10) + r;
n = n / 10;
}
if(temp == sum)
printf("It is a palindrome number!");
else
printf("It is not a palindrome number!");
getch();
return 0;
}
ผลลัพธ์
Enter a number: 12345 It is not a palindrome number
ตัวอย่างเพิ่มเติม
Enter a number: 12321 It is a palindrome number