Это - для домашнего задания, но я вложил работу в свое решение и не уверен, где я получаю ошибку. Вот что я должен сделать:
- Добавьте 1 к числовому значению ASCII каждого символа.
- Преобразуйте его в битовую строку.
- Сдвиньте биты строки на одно место влево.
Вот код, который у меня есть:
message = input("Enter a message: ")
ordstore = 0
for ch in message:
ordstore = ord(ch) + 1
bstring = ""
while ordstore > 0:
remainder = ordstore % 2
ordstore = ordstore // 2
bstring = str(remainder) + bstring
#print(bstring)
if(len(bstring) > 0):
move1 = bstring[0]
new_string = bstring[1:]
new_string += move1
print(new_string)
Моя проблема в том, что я перезаписываю значения, которые я храню в первом цикле for. Моя первоначальная мысль, чтобы исправить это было использовать:
ordstore = ord(ch) += 1
Однако это тоже не решает мою проблему.
Любая помощь или руководство очень ценится!