Как вывести цифры числа в порядке слева направо?
Нужно для задаваемого натурального числа вывести цифры в порядке слева направо (от старших разрядов к младшим). Написал вот такой код:
n = int(input("Введите натуральное число: "))
while n > 0:
digit = n % 10
n = n // 10
print (digit, end='')
Но есть две проблемы: во первых цифры выводятся в порядке справа налево, а во вторых они выводится не через пробел. Задачу нужно решить математическим способом, и вроде функцию str и списки мы еще не изучали, поэтому их нельзя использовать.
Дополнительно:
тег code (< / >)? не, не слышал.
Через реверс цифр в числе
n = 59621113332281337 tmp = 0 while n > 0: tmp = (tmp * 10) + (n % 10) n //= 10 n = tmp while n > 0: print(n % 10, end=" ") n //= 10 |
n = 59621113332281337 tmp = 0 while n > 0: tmp = (tmp * 10) + (n % 10) n //= 10 n = tmp while n > 0: print(n % 10, end=" ") n //= 10
Через степени
import math n = 59621113332281337 power = math.floor(math.log10(n)) rank = 10 ** power while n > 0: digit = n // rank print(digit, end=" ") n -= digit * rank rank //= 10 |
import math n = 59621113332281337 power = math.floor(math.log10(n)) rank = 10 ** power while n > 0: digit = n // rank print(digit, end=" ") n -= digit * rank rank //= 10
Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.
Пока нет других ответов. Будьте первым, кто поможет автору.
Ответить на вопрос
Для того чтобы вывести цифры числа в порядке слева направо, можно воспользоваться следующим подходом:
1. Преобразовать число в строку.
2. Пройтись по каждому символу строки и вывести его.
Пример на PHP:
$num = 12345; $strNum = (string)$num; for ($i = 0; $i < strlen($strNum); $i++) { echo $strNum[$i] . " "; }
В этом примере мы сначала преобразуем число 12345 в строку с помощью (string)$num. Затем с помощью цикла for проходим по каждому символу строки и выводим его на экран с пробелом.
Таким образом, данный код выведет на экран цифры числа 12345 в порядке слева направо: 1 2 3 4 5.
Если вам нужно вывести цифры числа в порядке справа налево, то можно изменить цикл следующим образом:
for ($i = strlen($strNum) - 1; $i >= 0; $i--) { echo $strNum[$i] . " "; }
Этот код выведет на экран цифры числа 12345 в порядке справа налево: 5 4 3 2 1.
Надеюсь, это поможет вам решить задачу вывода цифр числа в нужном порядке!