Задача на c++ Дано трехзначное число. Напишите программу определения, является ли оно палиндромом, т.е....

Тематика Информатика
Уровень 5 - 9 классы
C++ задача палиндром трехзначное число программирование алгоритмы проверка числа ввод вывод условия решение задачи
0

Задача на c++

Дано трехзначное число. Напишите программу определения, является ли оно палиндромом, т.е. числом, десятичная запись которого читается одинаково слева направо и справа налево.

Формат входных данных

Вводятся одно целое число aa (100≤a≤999) Формат выходных данных

Требуется вывести «YES», если число является палиндромом, и «NO» в противном случае.

avatar
задан месяц назад

2 Ответа

0

Для решения задачи нужно определить, является ли заданное трехзначное число палиндромом. Палиндром — это число, которое читается одинаково слева направо и справа налево. Например, числа 121, 131, 141 являются палиндромами, а числа 123, 456 — нет.

Подход к решению задачи

  1. Анализ числа:
    В трехзначном числе (например, 121) нас интересуют сотни (первая цифра) и единицы (последняя цифра). Если они равны, то число является палиндромом.

  2. Разделение цифр числа:
    Для извлечения отдельных цифр числа можно использовать целочисленное деление (/) и остаток от деления (%).

    • Первая цифра (сотни) получается делением числа на 100: a / 100.
    • Последняя цифра (единицы) находится с помощью операции остатка от деления на 10: a % 10.
  3. Сравнение:
    Если первая цифра равна последней, то число — палиндром, иначе нет.

Пример алгоритма

Для числа 121:

  • Первая цифра: 121 / 100 = 1.
  • Последняя цифра: 121 % 10 = 1.
  • Первая и последняя цифры равны, значит, это палиндром.

Для числа 123:

  • Первая цифра: 123 / 100 = 1.
  • Последняя цифра: 123 % 10 = 3.
  • Первая и последняя цифры не равны, значит, это не палиндром.

Реализация на C++

Вот пример программы на языке C++:

#include 
using namespace std;

int main() {
    int a;
    cin >> a; // Ввод числа

    // Проверяем, что число трехзначное (100 ≤ a ≤ 999)
    if (a < 100 || a > 999) {
        cout 

avatar
ответил месяц назад
0

Для решения задачи о проверке, является ли трехзначное число палиндромом, можно воспользоваться простым алгоритмом. Палиндром — это число, которое читается одинаково как слева направо, так и справа налево. Для трехзначного числа это означает, что первая и последняя цифры должны быть одинаковыми.

Алгоритм:

  1. Считываем трехзначное число.
  2. Извлекаем первую, вторую и третью цифры числа.
  3. Сравниваем первую и третью цифры. Если они равны, число является палиндромом, иначе — нет.

Пример:

Для числа 121:

  • Первая цифра: 1
  • Вторая цифра: 2
  • Третья цифра: 1 Поскольку первая и третья цифры равны, 121 является палиндромом.

Для числа 123:

  • Первая цифра: 1
  • Вторая цифра: 2
  • Третья цифра: 3 Поскольку первая и третья цифры не равны, 123 не является палиндромом.

Программа на C++

Вот пример реализации программы на C++:

#include 

int main() {
    int a;
    
    // Ввод числа
    std::cout > a;

    // Проверка диапазона
    if (a < 100 || a > 999) {
        std::cout 

avatar
ответил месяц назад

Ваш ответ

Вопросы по теме