palindrome คือคำ ตัวเลข วลี หรือลำดับอักขระอื่นๆ ที่อ่านย้อนกลับเหมือนไปข้างหน้า คำต่างๆ เช่น มาดาม รถแข่ง หรือหมายเลข 10801 เป็นพาลินโดรม
สำหรับสตริงที่กำหนด หากการย้อนกลับสตริงให้สตริงเดียวกัน เราสามารถพูดได้ว่าสตริงที่กำหนดคือพาลินโดรม ซึ่งหมายถึงการตรวจสอบพาลินโดรม เราต้องหาว่าองค์ประกอบแรกและสุดท้าย วินาทีและสุดท้าย-1 และอื่นๆ เท่ากันหรือไม่
ป้อนข้อมูล − นามัน
ผลผลิต − string เป็นพาลินโดรม
ป้อนข้อมูล − จุดสอน
ผลผลิต − string ไม่ใช่ palindrome
ในโปรแกรม C ++ เพื่อตรวจสอบว่าสตริงที่ระบุเป็น Palindrome หรือไม่ สตริงที่ป้อนจะถูกคัดลอกไปยังสตริงใหม่ จากนั้นเราจะเปรียบเทียบตัวอักษรตัวแรกกับตัวอักษรตัวสุดท้ายของสตริง และตัวอักษรตัวที่สองกับตัวอักษรตัวสุดท้ายตัวที่สอง และอื่นๆ จนถึงจุดสิ้นสุดของสตริง หากตัวอักษรทั้งสองมีลำดับของอักขระเหมือนกัน กล่าวคือ ตรงกัน สตริงนั้นก็จะเป็นพาลินโดรม ไม่เช่นนั้นก็ไม่ใช่
ตัวอย่าง
#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; } }
ผลลัพธ์
string is a palindrome
หมายเหตุ - โปรแกรมคำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่