Это код, который я создал, чтобы найти наибольшую мощность в 2 фактора. Я не думаю, что это на 100% правильно, потому что я получаю 2 ответа. Мне нужна помощь в этом. Я совершенно новый в программировании.Поиск наибольшей мощности 2?
МОЙ КОД:
def largestPowerOfTwoThatIsAFactorOf(num):
factor = 2
while not(num > 0):
factor = factor + 1
return factor
print(largestPowerOfTwoThatIsAFactorOf(4))
print(largestPowerOfTwoThatIsAFactorOf(15))
print(largestPowerOfTwoThatIsAFactorOf(120))
#For any odd integer, largest power of 2 that’s a factor is 1.
'while not (num> 0)' означает: «запустить цикл, если число равно 0 или меньше». Это не приведет к запуску цикла для положительных чисел. Для 0 он выполнит цикл один раз и вернет функцию 3. Это не сила двух. Вы должны ** подумать о ** алгоритме ** перед тем, как ** закоротить код вслепую в компьютер. –
не начинайте с 'factor = 2' – hjpotter92
сложно, когда вы полный новичок, я стараюсь изо всех сил @ TheParamagneticCroissant –