Мне нужно написать функцию, которая принимает строку и возвращает строку с добавленными символами "звездочек" или "*" для умножения сигнала.
Как мы знаем, 4 (3) - это еще один способ показать умножение, а также 4 * 3 или (4) (3) или 4 * (3) et c. В любом случае, мой код должен решить эту проблему, добавив звездочку между 4 и 3 для случая, когда умножение отображается с PARENTHESIS, но без оператора умножения "*".
Некоторые примеры:
- "4 (3)" -> "4 * (3)"
- "(4) (3)" -> "(4) * (3)"
- " 4 * 2 + 9 -4 (-3) "->" 4 * 2 + 9 -4 * (- 3) "
- " (- 9) (- 2) (4) "->" (-9) * (2) * (4) "
- " 4 ^ (3) "->" 4 ^ (3) "
- " (4-3) (4+) 2) "->" (4-3) * (4 + 2) "
- " (Aflkdsjalkb) (g) "->" (Aflkdsjalkb) * (g) "
- " g (d) (f) "->" g * (d) * (f) "
- " (4) (3) "->" (4) * (3) "
Я не совсем уверен, как это сделать, я думаю о том, чтобы найти левую скобку и затем просто добавить «*» в этом месте, но это не сработает, поэтому начало моего третьего примера будет выводить «* (-9)» - это то, что я не хочу, или мой четвертый пример, который вывел бы «4 ^ * (3)». Есть идеи, как решить эту проблему? Спасибо.
Вот что я пробовал, и, очевидно, это не работает:
while index < len(stringtobeconverted)
parenthesis = stringtobeconverted[index]
if parenthesis == "(":
stringtobeconverted[index-1] = "*"