кодесурса
«Python

Python: восстановить исходную строку, введя сжатую строку с указанным правилом

script1adsense2code
script1adsense3code

Python Basic - 1: Упражнение-58 с решением

Когда символ является последовательным в строке, можно сократить строку символов, заменив символ определенным правилом. Например, в случае строки символов YYYYY, если она выражена как # 5 Y, она сжимается одним символом.

Напишите программу на Python для восстановления исходной строки, введя сжатую строку с этим правилом. Однако символ # не отображается в восстановленной строке символов.

Примечание. Исходные предложения состоят из прописных букв, строчных букв, цифр, символов, не более 100 букв, а последовательные буквы - не более 9 букв.

Входные данные :
Несколько строк символов приведены. Одна строка дается на строку.
Выход:
Восстановленная строка символов для каждого символа в одной строке.

Пример решения :

Код Python:

def restore_original_str(a1):
  result = ""
  ind = 0
  end = len(a1)
  while ind < end:
    if a1[ind] =="#":
      result += a1[ind + 2] * int(a1[ind + 1])
      ind += 3
    else:
      result += a1[ind]
      ind += 1
  return result
print("Original text:","XY#6Z1#4023")
print(restore_original_str("XY#6Z1#4023"))
print("Original text:","#39+1=1#30")
print(restore_original_str("#39+1=1#30"))

Пример вывода:

 Оригинальный текст: XY # 6Z1 # 4023
XYZZZZZZ1000023
Оригинальный текст: # 39 + 1 = 1 # 30
999 + 1 = 1000

Блок - схема:

«Блок-схема:

Редактор кода Python:

Есть другой способ решить это решение? Внесите свой код (и комментарии) через Disqus.

Предыдущий: Напишите программу на Python для суммирования всех числовых значений (положительных целых чисел), встроенных в предложение.
Далее: Напишите программу на Python, которая вычисляет площадь многоугольника. Вершины имеют имена вершина 1, вершина 2, вершина 3, ... вершина n в соответствии с порядком соединения ребер.

Каков уровень сложности этого упражнения?

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code