Предмет: Информатика, автор: Аноним

100 БАЛЛОВ! Решите составив программу на питоне пожалуйста. только давайте обойдемся простыми функциями. Ну там else, in range, break, bin, int, replace, str. Если что-то еще нужно использовать для задания, то используйте. Но пожалуйста не сложные конструкции и не в одну строчку, а чтоб было понятно!

Приложения:

Ответы

Автор ответа: mirageKZ
1

внутри кода оставил пометки, что и где делается

Python

# в этой функции будем производить перевод и расчёт чисел по алгоритму

def getaction(a):

   aBinStr=str(bin(a)[2:]) # переводим число в двоичный вид

   b=aBinStr.count('1') # считаем количество единиц

   b=b%2 # находим остаток от деления на 2

   ostBinStr=str(bin(b)[2:]) # переводим остаток в двоичный вид

   c=aBinStr+ostBinStr # объединяем первоначальное число и остаток дописываем

   d=c.count('1') # считаем количество единиц

   d=d%2 # находим остаток от деления на 2

   return int(c+str(bin(d)[2:]),2) # объединяем и всё это переводим в целое

n=0;

for a in range (1,13):

   z=getaction(a)

   print(a, '  Action  ', z)

   if z > 50:

       break

   n+=1

print('Число чисел < 50   =',n)

Похожие вопросы
Предмет: Английский язык, автор: sutorminaiv22gmail
Предмет: География, автор: daniyar36