Дано натуральное число N. Получить новое число, удалив из записи числа все чётные цифры - C (СИ)

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

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

Помогите,пожалуйста,написать программу на Си. Задание: Дано натуральное число N. Получить новое число, удалив из записи числа все чётные цифры.

Решение задачи: «Дано натуральное число N. Получить новое число, удалив из записи числа все чётные цифры»

textual
Листинг программы
for(p=1,r=0; n>0; n/=10) {
  c = n%10;
  if (c%2) {
    r += c*p;
    p *= 10;
  }
}

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

В данном коде решатся задача получения нового числа, удалив из записи числа все чётные цифры.

  1. Переменная p инициализируется единицей.
  2. Переменная r инициализируется нулём.
  3. Переменная n содержит натуральное число, заданное в качестве входного параметра.
  4. Цикл выполняется до тех пор, пока n больше нуля.
  5. В каждой итерации цикла переменная c получает последнюю цифру числа n.
  6. Если c нечётная, то она добавляется к r, и переменная p умножается на 10.
  7. Если c чётная, то она не учитывается.
  8. В результате получается новое число, которое содержит только нечётные цифры исходного числа.

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

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