8 класс Python, как закодировать сообщение Гайри?

Обучение искусственного интеллекта: кодирование сообщения

Гайри пишет, что ИИ придумал алгоритм шифрования, который меняет коды символов каждую минуту. Прина и Шароми хотят проверить надёжность алгоритма. Нужно протестировать его на учебных данных, где мощность алфавита составляет два символа {A, B}.

Помоги ребятам написать программу, которая закодирует сообщение AABBABA, чтобы проверить результат, полученный ИИ.

В первой строке входных данных написан код буквы А, а на второй — код буквы В.

Вывести склейку строк a и b можно так:

print(a + b)

Ввод Вывод

1

0 1100101

?

! ??!!?!?

Как сделать?

тэги: python, информатика категория: образование ответить комментировать бонус 1 ответ: старые выше новые выше по рейтингу 1 vdtes­t [43.2K] 16 минут назад 

Самая простая программа должна ввести значения кодов для букв "A" и "B" в словарь code и распечатать каждый символ сообщения без перевода строки, указав в оператор print параметр end.

После окончания вывода просто перевести строку пустым оператором print:

code={"A":input(),"B":input()}

for i in "AABBABA":

​ ​ ​ ​ print(code[i],end="")

print()

Можно поместить кодируемую строку в переменную msg, чтобы можно было, при необходимости в дальнейшем, вводить другие примеры кодирования:

code={"A":input(),"B":input()}

msg="AABBABA"

for i in msg:

​ ​ ​ ​ print(code[i],end="")

print()

Но в этих вариантах никакой склейки не будет.

Можно сделать склейку результатов в переменную s:

code={"A":input(),"B":input()}

s=""

for i in "AABBABA":

​ ​ ​ ​ s+=code[i]

print(s)

Можно поместить кодируемую строку в переменную msg, чтобы можно было, при необходимости в дальнейшем, вводить другие строки для кодирования:

code={"A":input(),"B":input()}

msg="AABBABA"

s=""

for i in msg:

​ ​ ​ ​ s+=code[i]

print(s)

Но в этих вариантах не будет склейки a+b

Можно сделать программу и без использования словаря:

a=input()

b=input()

s=""

for i in "AABBABA":

​ ​ ​ ​ s+=a if i=="A" else b

print(s)

Можно написать и так (со склейкой):

a=input()

b=input()

print(a+a+b+b+a+b+a)

Источник: bolshoyvopros.ru

Читайте также  Мужчина предложил разъехаться, т. к. не хочет платить за квартиру, что это?
Гаджет битва