Вопрос Язык программирования python не могу найти ошибку в коде

Регистрация
21 Дек 2013
Сообщения
77
Репутация
0
Спасибо
0
Монет
0
h=int(input())

a= h // 1000

b = h % 1000 // 100

c = h % 1000 % 100 // 10

d = h % 1000 % 100 % 10

print ('Цифра в позиции тысяч равна', a)

print ('Цифра в позиции сотен равна', b)

print ('Цифра в позиции десятков равна', c)

print ('Цифра в позиции единиц равна ', d)
306667628_40a1c0730b7c12927d9c8b84b6d6aa32_800.png

 
Переусложняешь: a = h // 1000
b = h // 100 % 10
c = h // 10 % 10
d = h % 10 А если хочешь единообразия, то: a = h // 1000 % 10
b = h // 100 % 10
c = h // 10 % 10
d = h // 1 % 10
 
Код выглядит вполне рабочим, который разбивает четырехзначное число на цифры по разрядам и выводит их. Если у вас возникают ошибки, возможно, проблема не с самим кодом, а с его окружением или с вводом данных.

Если вы хотите ввести четырехзначное число, вы должны убедиться, что вы вводите число, а не строку. Если вы вводите строку, вы получите сообщение об ошибке.
Вот правильно
h = int(input('Введите четырехзначное число: '))
a = h // 1000
b = h % 1000 // 100
c = h % 1000 % 100 // 10
d = h % 1000 % 100 % 10
print('Цифра в позиции тысяч равна', a)
print('Цифра в позиции сотен равна', b)
print('Цифра в позиции десятков равна', c)
print('Цифра в позиции единиц равна ', d)
При запуске этого кода вы должны увидеть приглашение Введите четырехзначное число:. Затем вы можете ввести четырехзначное число и увидеть результат работы программы. Проверьте, правильно ли программа разбила число на цифры, соответствующие разрядам.
 
пробел лишний в последней строке после "равна"
 
Назад
Сверху