def russian (a,b):
x=a
y=b
z=0
while x>0:
if x % 2 == 1: z=z+y
y= y *2
x= x/2
return z
print russian(24,16)
Эта функция использует русский крестьянский алгоритм для умножения двух чисел вместе. Я ожидаю увидеть 384
в качестве вывода, но вместо этого получаю 0
. Что я делаю не так? Я использую Python 2.7.Почему мой вывод 0?
Это заявление о возвращении в правильном месте? Рассмотрим внимательно глядя на ваш отступ –
** Отступ важно Важно ** –
Спасибо! Глупая ошибка. – user2200497