Введение
В этом практическом занятии мы научимся писать программу на C для проверки, является ли число палиндромом. Мы выполним это, следуя следующим шагам.
Примечание: вам нужно самостоятельно создать файл
~/project/main.c, чтобы практиковаться в написании кода и узнать, как компилировать и запускать его с использованием gcc.
cd ~/project
## создать main.c
touch main.c
## скомпилировать main.c
gcc main.c -o main
## запустить main
./main
Понимание палиндрома
Палиндром — это число или строка, которая читается одинаково слева направо и справа налево. Например: 121 или "racecar".
Инициализация переменных
Начнем с инициализации необходимых переменных для программы. В данной программе мы использовали четыре переменные: a, b, c, s. Мы будем использовать эти переменные для выполнения необходимых операций.
#include<stdio.h>
int main()
{
int a, b, c, s = 0;
printf("Enter a number: ");
scanf("%d", &a);
c = a;
}
Разворот числа
Мы переворачиваем число, чтобы сравнить его с исходным числом и проверить, является ли оно палиндромом. Мы используем цикл while для переворачивания числа.
while(a > 0)
{
b = a % 10; //извлекаем последнюю цифру
s = (s * 10) + b; //добавляем последнюю цифру к перевернутому числу
a = a / 10; //удаляем последнюю цифру из исходного числа
}
Сравнение исходного числа с перевернутым числом
Наконец, мы сравниваем перевернутое число с исходным числом, чтобы проверить, является ли оно палиндромом.
if(s == c)
{
printf("%d is a Palindrome", c);
}
else
{
printf("%d is not a Palindrome", c);
}
Полный код
Вот полный код программы:
#include<stdio.h>
int main()
{
int a, b, c, s = 0;
printf("Enter a number: ");
scanf("%d", &a);
c = a;
while(a > 0)
{
b = a % 10;
s = (s * 10) + b;
a = a / 10;
}
if(s == c)
{
printf("%d is a Palindrome", c);
}
else
{
printf("%d is not a Palindrome", c);
}
return 0;
}
Резюме
В этом практическом занятии мы научились писать программу на C для проверки, является ли число палиндромом. Мы узнали логику проверки палиндромов и реализовали ее в программе. Теперь мы лучше понимаем этот концепт и можем его реализовать в более сложных программах.



