Выбросить из записи заданного числа указанные цифры, оставив прежним порядок остальных цифр - C (СИ)
Формулировка задачи:
Вот условие:
Выбросить из записи числа n цифры 0 и 5, оставив прежним порядок остальных цифр. Если из числа удалены все цифры, то вывести 0. Ввод В первой строке содержится натуральное число n (1≤n≤4294967295). Вывод Вывести измененное числоВот решение:
#include <math.h> #include <stdio.h> int main() { unsigned long int a, b, i, k; scanf("%d", &a); i = 0; b = a; while (b > 10) { b = b / 10; i++; }; k = pow(10, i); b = a; while (i > 0) { b = a / k; a = a % k; i--; if (b != 5 & b != 0) { printf("%d", b); }; }; }
Решение задачи: «Выбросить из записи заданного числа указанные цифры, оставив прежним порядок остальных цифр»
textual
Листинг программы
while (b > 10) { b = b / 10; i++; };
Объяснение кода листинга программы
В данном коде выполняется деление числа b на 10 в условии цикла while. Это приводит к тому, что число b уменьшается в 10 раз при каждой итерации цикла. Переменная i увеличивается на единицу после каждой итерации цикла. Код будет выполняться до тех пор, пока b не станет меньше или равным 10. В это время i будет содержать количество итераций, которые были выполнены.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д