for a in range (1,43):
    k=a
    if k%2==0:
         k=k/2
    else:
         k=k-1
    if k%3==0:
         k=k/3
    else:
         k=k-1
    if k%7==0:
         k=k/7
    else:
         k=k-1
    if k==1:
         print(a)

for x in range(2,1000):

    n=bin(x)[2:]

    k1=0

    k0=0

    for i in range(1,len(n), 2):

        k1+=int(n[i])

    for i in range (0,len(n), 2):

        if n[i]='0':

            k0+=1

    if abs(k1-k0)==5:

        print(x)

Алгоритм получает на вход натуральное число ?>1 и строит по нему новое число ? следующим образом:

  1. Строится двоичная запись числа ?.
  2. Подсчитывается количество нулей и единиц в полученной записи. Если их количество одинаково, в конец записи добавляется её последняя цифра. В противном случае в конец записи добавляется та цифра, которая встречается реже.
  3. Шаг 2 повторяется ещё два раза.
  4. Результат переводится в десятичную систему счисления.

Пример. Дано число ? =19. Алгоритм работает следующим образом:

  1. Двоичная запись числа N: 10011.
  2. В полученной записи нулей меньше, чем единиц, в конец записи добавляется 0. Новая запись: 100110.
  3. В текущей записи нулей и единиц поровну, в конец записывается последняя цифра, это 0. Получается 1001100. В этой записи единиц меньше, в конец добавляется 1: 10011001.
  4. Результат работы алгоритма ? =153.

При каком наименьшем исходном числе?>99 в результате работы алгоритма получится число, кратное 4?

 

def modify(st):

    (k0, k1)  = (st.count('0'), st.count('1'))

    if k0 == k1:

        st = st + st[-1]

    elif k0 > k1:

        st = st + '1'

    else:

        st = st + '0'

    return st

N = 99

while True:

    strN = bin(N)[2:]

    for _ in range(3):

        strN = modify(strN)

    R = int(strN, 2)

    if N > 99 and R % 4 == 0:

        print(N);

        break

    N += 1

Материалы ученикам

ЕГЭ. Информатика. 5 задание. Зойкин Максим Валерьевич

ЕГЭ. Информатика. 2 задание.

Построение таблиц истинности логических выражений
ЕГЭ. Информатика. 5 задание. Зойкин Максим Валерьевич

ЕГЭ. Информатика. 11 задание.

Сколько байтов потребуется для хранения данных?
ЕГЭ. Информатика. 5 задание. Зойкин Максим Валерьевич

ЕГЭ. Информатика. 14 задание.

Подсчет цифр в системе счисления
ЕГЭ. Информатика. 5 задание. Зойкин Максим Валерьевич

ЕГЭ. Информатика. 4 задание

Кодирование
ЕГЭ. Информатика. 5 задание. Зойкин Максим Валерьевич

ОГЭ. Информатика. 12 задание.

Исполнитель Редактор
ЕГЭ. Информатика. 5 задание. Зойкин Максим Валерьевич

ЕГЭ. Информатика. 1 задание.

Соотнесение графа и таблицы.
ЕГЭ. Информатика. 5 задание. Зойкин Максим Валерьевич

Объяснения материала. Информатика 10-11 класс.

ЕГЭ. Информатика. 5 задание. Зойкин Максим Валерьевич

Объяснения материала. Информатика 9 класс.

ЕГЭ. Информатика. 5 задание. Зойкин Максим Валерьевич

Объяснения материала. Информатика 7 класс.

ЕГЭ. Информатика. 5 задание. Зойкин Максим Валерьевич

Объяснения материала. Информатика 6 класс.

ЕГЭ. Информатика. 5 задание. Зойкин Максим Валерьевич

Объяснения материала. Информатика. 8 класс.

В 8 классе идет основной упор на «математическую информатику». Это системы счисления, алгебра логики и, естественно,...
ЕГЭ. Информатика. 5 задание. Зойкин Максим Валерьевич

Объяснения материала. Финансовая грамотность 5 класс.

Очень мало материала, сделанного в этой программе, потому что в 5 классе в основном задания творческие,...
ЕГЭ. Информатика. 5 задание. Зойкин Максим Валерьевич

Объяснения материала. Информатика 5 класс.

Некоторые объяснения по информатике. 5 класс. Очень мало материала, сделанного в этой программе, потому что в 5...
ЕГЭ. Информатика. 5 задание. Зойкин Максим Валерьевич

Объяснения материала. Математика 5 класс.

Естественно, что без объяснения учителя, к сожалению, материал могут взять в современном мире не более 15% учеников,...
ЕГЭ. Информатика. 5 задание. Зойкин Максим Валерьевич

ЕГЭ. Информатика. 6 задание.

Определение результатов работы простейших алгоритмов.