Top.Mail.Ru
Ответы
Аватар пользователя
9лет
Изменено
Аватар пользователя
Аватар пользователя
Аватар пользователя
Программирование
+4

Проверка Палиндромом C++

Добрый вечер. Как написать программу для проверки числа на палиндромом? Примерно суть ясна, через остаток на деление, но с кодом у меня проблемы. Натолкните на мысль. Спасибо

По дате
По рейтингу
Аватар пользователя
Оракул
9лет

#include<stdio.h
#include<string.h
#include p1; ++p1, --p2)
{
*p1 ^= *p2;
*p2 ^= *p1;
*p1 ^= *p2;
}
return str;
}

int main()
{
char a[100], b[100];

//Get the number from user.
printf("Enter the string to check if it is a palindrome\n");
gets(a);

//copy input to another array b
strcpy(b,a);

//Reverse it.
strrev(b);

/*Compare it with the number entered by the user.If both are same then print palindrome number*/
if( strcmp(a,b) == 0 )
printf("\nEntered string is a palindrome.\n");
else
printf("\nEntered string is not a palindrome.\n");
getch();
return 0;
}

Аватар пользователя
Просветленный
9лет

Ужас... Еще и цикл до середины числа предлагают.

int z,y,x=0;
cin >> y; z = y;
while (y > 0) { x *= 10; x += y % 10; y /= 10; }
if (z == x)cout << "yes"; else cout << "no";

Аватар пользователя
Знаток
8лет

Хорошо рассказано, что такое палиндром и как проверить, является ли число палиндромом [ссылка заблокирована по решению администрации проекта] А так же приведен код программы, использующий эту функцию.

Источник: Записки информационщика
Аватар пользователя
Высший разум
9лет

Выше идеальный вариант подсказали.
Можно без превращения прочитать, как строку. Сделать цикл до половины числа и сравнивать 1 символ с последним, второй с предпоследним и т. д.
Это как один из вариантов