Разработать алгоритмы и программы для вычисления математических выражений на языке Turbo Pascal

6 Мая 2019 в 19:44
232 +1
0
Ответы
1

Для вычисления математических выражений на языке Turbo Pascal можно использовать следующие алгоритмы:

Алгоритм для вычисления выражения в обратной польской записи (Reverse Polish Notation, RPN):

Создать стек для хранения операндов.Считать выражение в обратной польской записи.Перебирать каждый символ выражения:Если символ - операнд, поместить его в стек.Если символ - оператор, извлечь два операнда из стека, применить оператор к ним и результат положить в стек.После обработки всех символов в стеке будет находиться результат вычисления выражения.

Пример программы для вычисления выражения в обратной польской записи на Turbo Pascal:

program CalculateRPNExpression;
const
operators = ['+', '-', '*', '/'];
function ApplyOperator(op: char; a, b: real): real;
begin
case op of
'+': ApplyOperator := a + b;
'-': ApplyOperator := a - b;
'*': ApplyOperator := a * b;
'/': ApplyOperator := a / b;
end;
end;
function CalculateRPNExpression(expr: string): real;
var
stack: array[1..100] of real;
top: integer;
i: integer;
begin
top := 0;
for i := 1 to Length(expr) do
begin
if expr[i] in operators then
begin
stack[top - 1] := ApplyOperator(expr[i], stack[top - 1], stack[top]);
Dec(top);
end
else
begin
Inc(top);
stack[top] := StrToFloat(expr[i]);
end;
end;
CalculateRPNExpression := stack[top];
end;
var
expr: string;
begin
Write('Enter the expression in RPN format: ');
Readln(expr);
Writeln('Result: ', CalculateRPNExpression(expr));
end.

Этот пример программы читает выражение в обратной польской записи, вычисляет его и выводит результат. Введите выражение в формате RPN, например 52+3*.

Это один из способов вычисления математических выражений на языке Turbo Pascal.

28 Мая в 16:48
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 93 100 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир