Уведомления

Группа в Telegram: @pythonsu

#1 Апрель 17, 2018 09:56:17

lada0807
Зарегистрирован: 2018-04-17
Сообщения: 19
Репутация: +  0  -
Профиль   Отправить e-mail  

Объясните каждую строчку кода

def digits(n):
i = 0
while n > 0:
n = n//10
i += 1
return i

num = abs(int(input('Введите число: ‘)))

print(’Количество разрядов:', digits(num))

Офлайн

#2 Апрель 17, 2018 14:25:59

driveman
Зарегистрирован: 2018-02-28
Сообщения: 20
Репутация: +  1  -
Профиль   Отправить e-mail  

Объясните каждую строчку кода

Дело в том, что вы ввели код без форматирования, а в python форматирование необходимо. Попытался догадаться, как код выглядел изначально, получилось примерно следующее:

 # создана функция digits с входным параметром n
def digits(n):
    # создана переменная i, ей присвоено значение 0
    i = 0
    #
    # Начинаем цикл while, который будет работать пока n будет больше 0
    while n > 0:
        # Делим n на 10. Применяется деление с округлением вниз (двойной слэш).
        # В результате этого, если, например, при обычном делении получилась бы десятичная дробь
        # в диапазоне от 0 до 1 - при данном виде деления получится 0.
        n = n//10
        # К переменной i прибавляем 1
        i += 1
    #
    # Прекращаем работу функции digits, возвращаем из нее переменную i
    return i
#
# Приглашаем пользователя ввести число, заносим его в переменную num
num = abs(int(input('Введите число: ‘)))
#
# Значение переменной num передаем в функцию digits()
# и печатаем возвращаемое ею значение
print(’Количество разрядов:', digits(num))

Отредактировано driveman (Апрель 17, 2018 14:39:11)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version