#include <iostream> // подключение библиотеки для ввода и вывода (cin, cout)
#include <clocale> // подключение библиотеки для настройки локали и вывода русского языка
using namespace std; // использование стандартного пространства имен
// прототип функции (объявление для main, так как функция расположена ниже)
bool is_palindrome(int n);
void main() // главная функция программы
{
/*предусловия: трехзначное число n вводится пользователем*/
/*постусловия: вывод на экран "Истина" или "Ложь"*/
setlocale(LC_ALL, "Russian"); // включение поддержки русского языка в консоли
int n; // объявление целочисленной переменной для исходного числа
cout << "Программа проверяет, является ли трехзначное число палиндромом\n"; // вывод поясняющего текста
cout << "Введите трехзначное число: "; // приглашение к вводу числа
cin >> n; // считывание числа с клавиатуры
// вызов функции проверки и ветвление по ее результату
if (is_palindrome(n)) // если функция вернула true
{
cout << "Истина\n"; // вывод сообщения "Истина"
}
else // если функция вернула false
{
cout << "Ложь\n"; // вывод сообщения "Ложь"
}
system("pause"); // задержка закрытия консоли до нажатия клавиши
}
// реализация функции после main
bool is_palindrome(int n) // заголовок функции с формальным параметром n
{
/*предусловия: n - целое трехзначное число*/
/*постусловия: функция вычисляет и возвращает true (истина), если палиндром, иначе false (ложь)*/
int d1 = n / 100; // выделение первой цифры числа через целочисленное деление
int d3 = n % 10; // выделение последней цифры числа через остаток от деления
if (d1 == d3) // сравнение первой и третьей цифр
return true; // возврат значения истина, если цифры совпали
else // если цифры не совпадают
return false; // возврат значения ложь
}