Среди чисел 1....n найти числа, которые при умножении на 2 будут давать полиндром - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Добрый день!Помогите с лабороторной по программированию.Вот задача Среди чисел 1....n найдите числа которые при умножении на 2 будут давать полиндром. Не используя массива,и чтобы вид был примерно такой 1*2=2 палиндром 2*2=4 палиндром Помогите пожалуйсто отблагодарю по вебмани!

Решение задачи: «Среди чисел 1....n найти числа, которые при умножении на 2 будут давать полиндром»

textual
Листинг программы
#include <stdio.h>
 
int reverse(int number)
{
    int result = 0;
    int sign = number > 0 ? 1 : -1;
    do
    {
        result += number % 10;
        result *= 10;
    }
    while (number /= 10);
    return (result / 10) * sign;
}
 
int main(void)
{
    size_t n;
    size_t i;
    scanf("%u", &n);
    for (i = 0; i <= n; i++)
        if (i * 2 == reverse(i * 2))
            printf("%u * %d = %u\n", i, 2, i * 2);
    return 0;
}

Объяснение кода листинга программы

Вывод программы представляет собой последовательность чисел от 1 до n, которые при умножении на 2 дают полиндром. Код программы:

  1. В функции reverse(int number) выполняется перебор цифр числа в обратном порядке и суммирование их в переменную result.
  2. Затем результат умножается на 10.
  3. Если очередная цифра числа равна 0, то условие do завершается и функция возвращает полученный результат.
  4. В функции main(void) после ввода числа n с помощью scanf и вывода сообщения об ошибке в случае неверного ввода, программа выполняет цикл от 0 до n.
  5. Для каждого значения i выполняется проверка условия i2 == reverse(i2).
  6. Если условие выполняется, то выводится сообщение в формате i * 2 = reverse(i*2)
  7. Результатом работы программы будет последовательность чисел от 1 до n, которые при умножении на 2 дают полиндром.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 4.273 из 5
Похожие ответы