samirmajbubi
?>

Phyton Вывести на экран число, большее из двух, которые ввел пользователь

Информатика

Ответы

ryazantseva

x = int(input())

y = int(input())

if x > y:

   print(x)

if x == y:

   print('Числа равны')

if y > x:

   print(y)

Lyalikova

Такие задания со сложными условиями легче всего решать программой на питоне:

for n in range(1, 10000000):  # Грубый перебор

   n -= n % 4  # 1. Из числа N вычитается остаток от деления N на 4.

   n = bin(n)[2:]  # 2. Строится двоичная запись полученного результата. + срез "0b"

   n = n + str(n.count('1') % 2)  # 3. a)

   n = n + str(n.count('1') % 2)  # 3. б)

   r = int(n, 2)  # Перевод в 10 с.с.

   if r > 56:

       print(r)  

       break

ответ: 66

Если всё же рассуждать, то опять перебором:

Возьмём, например, число 5 и выполним алгоритм:

1. 5 - 5 % 4 = 4

2. 4 -> 100

3. a) 1001

   б) 10010

R = 18, очень мало

Возьмём, например, 14:

1. 12  

2. 1100

3. a) 11000

   б) 110000

R = 48, маловато, но близко

Возьмём, например, 15:

1. 12

Видим, будет тоже, что и 14

Возьмём, например, 16:

1. 16

2. 10000

3. a) 100001

   б) 1000010

R = 66, то, что нам нужно.

ответ: 66

mustaev

Вот вариант без использования встроенных кэшей, только рекурсивная функция и словарь, всё как положено:

def pow(number, power):

   powers = {0: 1, 1: number}

   def rec(p):

       if p in powers:

           # уже вычисляли эту степень

           return powers[p]

       elif p % 2 == 0:

           # чётный случай

           result = rec(p//2) * rec(p//2)

           powers[p] = result

           return result

       else:

           # нечётный случай

           result = rec(p-1) * number

           powers[p] = result

           return result

   return rec(power)

print(pow(1.253, 25))

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Phyton Вывести на экран число, большее из двух, которые ввел пользователь
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

market-line5260
Yevgenevich775
mashumi2170
topshopnails
nastyakrokhina87
Nikolaevna382
tagirova1
saryba
denisov4
generallor3
Rustamov741
Boss5519
Александрович686
miss1380
kush-2640