Palindrome (đối xứng) là từ, số, cụm từ đọc xuôi ngược giống nhau. Ví dụ: madam, racecar, 10801.
Kiểm tra: đảo chuỗi so với gốc. So sánh ký tự đầu với cuối, thứ hai với l倒数 thứ hai...
Input: naman Output: string is a palindrome Input: tutorials point Output: string is not a palindrome
Sao chép chuỗi, so sánh từng cặp ký tự đối xứng qua trung tâm. Nếu tất cả cặp giống nhau -> palindrome.
Ví dụ
#include <iostream>
#include <string.h>
using namespace std;
int main(){
char string1[]={"naman"};
int i, length;
int flag = 0;
length = strlen(string1);
for(i=0;i < length ;i++){
if(string1[i] != string1[length-i-1]) {
flag = 1;
break;
}
}
if (flag==1){
printf(" string is not a palindrome");
} else {
printf(" string is a palindrome");
}
return 0;
}
Kết quả
string is a palindrome
Lưu ý - Chương trình phân biệt chữ hoa/thường (case sensitive).