Số Palindrome là số không thay đổi khi đảo ngược. Chương trình cho phép nhập số nguyên dương và kiểm tra có phải Palindrome hay không bằng while loop.
Ví dụ 1: Kiểm tra số Palindrome
#include <stdio.h>
int main() {
int num, temp, rem, rev = 0;
printf("Nhập số:\n");
scanf("%d", &num);
temp = num;
while (temp > 0) {
rem = temp % 10;
rev = rev * 10 + rem;
temp = temp / 10;
}
printf("Số đảo ngược = %d\n", rev);
if (num == rev)
printf("%d là số Palindrome.\n", num);
else
printf("%d không phải số Palindrome.\n", num);
return 0;
}
Kết quả chạy ví dụ 1
Nhập số: 1234
Số đảo ngược = 4321
1234 không phải số Palindrome.
Nhập số: 1221
Số đảo ngược = 1221
1221 là số Palindrome.
Ví dụ 2: Kiểm tra chuỗi Palindrome
#include <stdio.h>
#include <string.h>
void pal(char string[]);
int main() {
char string[100];
printf("Nhập chuỗi: ");
gets(string);
pal(string);
return 0;
}
void pal(char string[]) {
int i = 0;
int length = strlen(string) - 1;
while (length > i) {
if (string[i++] != string[length--]) {
printf("\n%s không phải chuỗi Palindrome\n", string);
return;
}
}
printf("\n%s là chuỗi Palindrome\n", string);
}
Kết quả chạy ví dụ 2
Nhập chuỗi: tutorial
tutorial không phải chuỗi Palindrome
Nhập chuỗi: saas
saas là chuỗi Palindrome