Недавно я писал новый язык , чтобы избежать необходимости обрабатывать порядок операций , я просто заключил в скобки каждое выражение правильно, чтобы полностью избежать этого.
Поскольку круглые скобки находятся в кодировках 40-41, ваш код должен быть максимально коротким.
Примеры
1+2*3
(1+(2*3))
2*(3+4)
(2*(3+4))
2*3/4+3
(((2*3)/4)+3)
342*32/8
((342*32)/8)
правила
Единственные операции, которые вам нужно выполнить: *
(умножение), /
(деление), +
(сложение) и -
(вычитание).
- Порядок операций является:
- круглая скобка
- Умножение, деление
- Сложение, вычитание
- Вы должны предпочесть идти влево-вправо
- Входные числа всегда будут положительными целыми числами (см. Бонусы)
Бонусы
-20%, если вы справляетесь с отрицанием:
3+-5
(3+(-5))
-5%, если вы разрешаете размещать пробелы внутри ввода:
3 + 4
(3+4)
-10%, если вы можете обрабатывать десятичные дроби во входных данных:
1+.12
(1+.12)
1+0.21/3
(1+(0.21/3))
500 вознаграждений: если вам удастся написать ответ в Безымянный / Блоки
1+2+3+4
(какие решения могут быть заключены в скобки ((1+2)+(3+4))
)