Прикрепляю файл с сохранением форматирования. Его же можно переименовать в файл с расширением .py и запустить в интерпретаторе, проверить работо .
И да, единица тоже является степенью двойки, так что checkBy2(1) выдаст "да"
def reverseNumber(x, n=0):
s = list(str(x)) if type(x) == int else x
if n*2 >= len(s):
return int(''.join(s))
else:
s[n],s[len(s)-n-1] = s[len(s)-n-1],s[n]
return reverseNumber(s, n+1)
# Сложность O(n), где n - количество символов в строковом представлении x
# либо, если n воспринимать как число, O(logn)
print(reverseNumber(12345))
def printBelow(x, current=1):
if x > 0 and current <= x:
print(current)
printBelow(x, current+1)
# Сложность O(n), если считать сложность перевода числа в строку константной
printBelow(10)
def checkBy2(x):
if x == 1:
print("Да")
elif x % 2 != 0 or x < 1:
print("Нет")
checkBy2(x//2)
# Сложность O(logn), если не используется длинная арифметика, т.к. в худшем случае
# для увеличения рекурсивных вызовов на n нужно увеличить число в 2^n раз
checkBy2(31)
checkBy2(32)
print ("Магазин мороженного")
typee = int (input("""
Выберите тип мороженного
1 - Шоколадное
2 - Фруктовое
3 - Пломбир
---
"""))
prisipka = int(input("""
1 - Шоколадная присыпка
2- Кокосовая струшка
if typee == 1 and prisipka == 1:
print("Шоколадное мороженое с шоколадной присыпкой")
if typee == 1 and prisipka == 2:
print("Шоколадное мороженое с кокосовой струшкой")
if typee == 2 and prisipka == 1:
print("Фруктовое мороженое с шоколадной присыпкой")
if typee == 2 and prisipka == 2:
print("Фруктовое мороженое с кокосовой струшкой")
if typee == 3 and prisipka == 1:
print("Пломбир с шоколадной присыпкой")
if typee == 3 and prisipka == 2:
print("Пломбир с кокосовой струшкой")
Объяснение:
Переведи на украинский сам
Прикрепляю файл с сохранением форматирования. Его же можно переименовать в файл с расширением .py и запустить в интерпретаторе, проверить работо .
И да, единица тоже является степенью двойки, так что checkBy2(1) выдаст "да"
def reverseNumber(x, n=0):
s = list(str(x)) if type(x) == int else x
if n*2 >= len(s):
return int(''.join(s))
else:
s[n],s[len(s)-n-1] = s[len(s)-n-1],s[n]
return reverseNumber(s, n+1)
# Сложность O(n), где n - количество символов в строковом представлении x
# либо, если n воспринимать как число, O(logn)
print(reverseNumber(12345))
def printBelow(x, current=1):
if x > 0 and current <= x:
print(current)
printBelow(x, current+1)
# Сложность O(n), если считать сложность перевода числа в строку константной
printBelow(10)
def checkBy2(x):
if x == 1:
print("Да")
elif x % 2 != 0 or x < 1:
print("Нет")
else:
checkBy2(x//2)
# Сложность O(logn), если не используется длинная арифметика, т.к. в худшем случае
# для увеличения рекурсивных вызовов на n нужно увеличить число в 2^n раз
checkBy2(31)
checkBy2(32)
print ("Магазин мороженного")
typee = int (input("""
Выберите тип мороженного
1 - Шоколадное
2 - Фруктовое
3 - Пломбир
---
"""))
prisipka = int(input("""
1 - Шоколадная присыпка
2- Кокосовая струшка
"""))
if typee == 1 and prisipka == 1:
print("Шоколадное мороженое с шоколадной присыпкой")
if typee == 1 and prisipka == 2:
print("Шоколадное мороженое с кокосовой струшкой")
if typee == 2 and prisipka == 1:
print("Фруктовое мороженое с шоколадной присыпкой")
if typee == 2 and prisipka == 2:
print("Фруктовое мороженое с кокосовой струшкой")
if typee == 3 and prisipka == 1:
print("Пломбир с шоколадной присыпкой")
if typee == 3 and prisipka == 2:
print("Пломбир с кокосовой струшкой")
Объяснение:
Переведи на украинский сам