В
Все
М
Математика
О
ОБЖ
У
Українська мова
Д
Другие предметы
Х
Химия
М
Музыка
Н
Немецкий язык
Б
Беларуская мова
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
Р
Русский язык
У
Українська література
Ф
Французский язык
П
Психология
А
Алгебра
О
Обществознание
М
МХК
В
Видео-ответы
Г
География
П
Право
Г
Геометрия
А
Английский язык
И
Информатика
Қ
Қазақ тiлi
Л
Литература
И
История
Злата168
Злата168
11.06.2022 04:24 •  Информатика

5. Задача №112416. Калькулятор: 4 действия Напишите программу, которая вычисляет арифметическое выражение, введённое в виде
символьной строки. Выражение содержит только целые числа и знаки арифметических
действий: сложения, вычитания, умножения и деления. Деление выполняется с отбрасыванием
остатка.
Входные данные
Входная строка содержит запись арифметического выражения.
Выходные данные
Программа должна вывести результат вычисления переданного ей выражения.
Примеры
входные данные
2+14*3-15/4*3
выходные данные
35

Показать ответ
Ответ:
Лёха1243232
Лёха1243232
16.01.2024 13:09
Хорошо, давайте разберемся, как решить данную задачу.

Сначала мы должны прочитать входную строку, которая содержит запись арифметического выражения. Для этого мы можем использовать функцию input() в Питоне:

expression = input("Введите арифметическое выражение: ")

Далее нам нужно разбить введенную строку на отдельные числа и операторы. Мы можем использовать функцию split() для этого:

tokens = expression.split()

Теперь у нас есть список tokens, который содержит все числа и операторы в том порядке, в котором они были введены. Например, для входной строки "2+14*3-15/4*3", tokens будет выглядеть так: ['2', '+', '14', '*', '3', '-', '15', '/', '4', '*', '3'].

Теперь мы можем начать вычислять выражение. Для этого мы будем использовать цикл while, который будет выполняться до тех пор, пока у нас остаются операторы.

result = int(tokens[0])

i = 1
while i < len(tokens):
operator = tokens[i]
i += 1
number = int(tokens[i])
i += 1

if operator == '+':
result += number
elif operator == '-':
result -= number
elif operator == '*':
result *= number
elif operator == '/':
result //= number

Начинаем с первого символа в списке tokens и проверяем, является ли этот символ оператором. Если является, то берем следующий символ в списке в качестве числа и выполняем соответствующую операцию с результатом. Затем продолжаем с следующим символом в списке.

По окончании цикла while переменная result будет содержать результат вычисления арифметического выражения.

Наконец, мы можем вывести результат:

print("Результат вычислений:", result)

То есть, чтобы решить данную задачу, мы должны выполнить следующие шаги:

1. Прочитать входную строку с помощью функции input().
2. Разбить введенную строку на отдельные числа и операторы с помощью функции split().
3. Начать вычислять выражение с первого элемента в списке tokens, используя цикл while.
4. Проверить каждый символ в списке tokens, выполнить соответствующую операцию и обновить результат.
5. Вывести результат вычислений.

Таким образом, если мы введем арифметическое выражение "2+14*3-15/4*3", программа должна вывести "35".
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота