У меня встал вопрос как сделать так чтобы эта программа выводила цифры из числа с последней
a = int(input())
def d30():
global a
k = len(str(abs(a)))
while k > 0:
x = a%(10**k) // (10**((k-2))
k = k-1
Print (x)
d30()
Ответы (1 шт):
Автор решения: Алексей Р
→ Ссылка
Если не требуется решение именно с циклом и операциями с целыми числами, то проще это сделать, оперируя текстовым представлением числа.
def d30(a): # в функцию передаем аргумент вместо использования глобальной переменной
try:
int(a) # проверяем, что введенный текст конвертируется в целое число. Сам результат преобразования нам не нужен
return a[::-1] # если ошибки в предыдущей строке не возникает, реверсим строку и возвращаем
except ValueError:
return f'{a} не является записью целого числа' # если ошибка при конвертации, то сообщаем
print(d30(input()))
print(d30(input()))
-14587
78541-
3.1415
3.1415 не является записью целого числа