22.02 Программирование - циклы, условия
Ошибка.
Попробуйте повторить позже
Укажите наибольшее десятичное значение при котором программа печатает
и
.
x=i
L=0
M=0
while x>0:
L=L+1
if x%2==0:
M=M+1
x=x//10
if L==4 and M==2:
maxim=i
print(maxim)
Ошибка.
Попробуйте повторить позже
Укажите наименьшее из таких чисел, при вводе которых алгоритм печатает сначала , а потом
.
for i in range(10000): x = i L = 0 M = 0 while x > 0: L = L + 1 if x % 2 == 0: M = M + (x % 10) x = x//10 if L == 3 and M == 0: print(i) break
Ошибка.
Попробуйте повторить позже
Ниже на трёх языках программирования записана программа. Получив на вход число , этот алгоритм печатает
и
. Укажите наименьшее число
, при вводе которого алгоритм печатает
и
.
for i in range(100000): x = i l = 0 m = 0 while x > 0: l += 1 if x % 2 == 1: m = m + (x % 10) x //= 10 if l == 5 and m == 13: print(i) break
Ошибка.
Попробуйте повторить позже
Укажите минимальное натуральное число, при вводе которого этот алгоритм напечатает число, сумма цифр которого
равна .
for i in range(100000): s = 0 x = i L, M = 0, 1 while x > 0: L = x%8 * M + L x //= 8 M *= 10 a = [int(j) for j in str(L)] for j in range(len(a)): s += a[j] if s == 15: print(i) break
Ошибка.
Попробуйте повторить позже
Укажите наибольшее из таких чисел , при вводе которых алгоритм печатает сначала
, а потом
.
for i in range(10000000): x = i a, b = 0, 1 while x > 0: a += 2 b *= (x%1000) x //= 1000 if a == 4 and b == 13: maxim = i print(maxim)
Ошибка.
Попробуйте повторить позже
Ниже записана программа, которая получает натуральное число , выполняет преобразования, а затем выводит
два числа. Укажите наибольшее возможное значение
, при вводе которого программа выведет
и
, а также
будет
являться числом-палиндромом.
x = int(input()) a, b = 0, 0 while x > 0: if x % 11 == 0: a += 1 else: b += x % 5 x = x // 11 print(a, b)
Напишем программу, которая методом перебора подберет нужное значение:
for i in range(89999, 1, -1): x = i a, b = 0, 0 while x > 0: if x % 11 == 0: a += 1 else: b += x % 5 x = x // 11 if a == 3 and b == 4: c = 0 x = i while x > 0: c = c*10 + (x % 10) x = x // 10 if c == i: print(i) break
Ошибка.
Попробуйте повторить позже
Ниже записана программа, которая получает пятизначное натуральное число , выполняет преобразования,
затем
выводит два числа. Укажите наименьшее возможное значение
, при вводе которого программа выведет
и нечетное
число.
x = int(input()) a, b = 0, 0 while x > 0: if x % 16 == 0: a += 1 else: b += x % 8 x = x // 16 print(a, b)
Напишем программу, которая методом перебора подберет нужное значение:
for i in range(10000, 100000): x = i a, b = 0, 0 while x > 0: if x % 16 == 0: a += 1 else: b += x % 8 x = x // 16 if a == 2 and b % 2 != 0: print(i) break
Ошибка.
Попробуйте повторить позже
Ниже записана программа, которая получает натуральное число , выполняет преобразования, а затем выводит два
числа. Укажите значение
, при вводе которого программа выведет
и
.
x = int(input()) a, b = 0, 0 while x > 0: if x % 16 == 0: a += x else: b += a % 8 + x % 16 x = x // 16 print(a, b)
Напишем программу, которая методом перебора подберет нужное значение:
for i in range(1, 100000): x = i a, b = 0, 0 while x > 0: if x % 16 == 0: a += x else: b += a % 8 + x % 16 x = x // 16 if a == 8096 and b == 26: print(i)
Ошибка.
Попробуйте повторить позже
Найдите наименьшее натуральное число , для которого существует такое неотрицательное значение
, чтобы
. Для найденного значения
найдите наименьшее значение
такое, что
. В
ответ запишите найденное значение
.
def magic(a, n): q = 1 t = 1 while(q < 100000): if(t <= q): q, t = t, q q += 1 t += 1 r = q while(n != 0): if(n % 2 == 1): r *= a n //= 2 a *= a return r // q
Заметим, что функции это бинарное возведение числа
в степень
. Поэтому наименьшее натуральное
число, для которого существует такое неотрицательное число
, что
— это число
. А тогда
минимальное значение
, такое что
— это
.