


Информатика, нужно создать программу на Паскаль, помогите пожалуйста
Выражение состоит только из цифр и знаков +, -и *. В выражении цифры и знаки чередуются. Дано одно длинное арифметическое выражение и Вам нужно его вычислить, соблюдая при этом порядок действий.
Пример:
Входные данные Выходные данные
5+2-3+6*4 28
Входные данные- 5+2-3+6*4
Выходные данные- 28
На почту чаще заглядывай.
function calc(instr:string):integer;
begin
if(instr.indexof('*')>0) then
begin
calc:=calc(instr.substring(0,instr.indexof('*')))*calc(instr.substring(instr.indexof('*')+1));
exit;
end;
if(instr.indexof('/')>0) then
begin
calc:=calc(instr.substring(0,instr.indexof('/'))) div calc(instr.substring(instr.indexof('/')+1));
exit;
end;
if(instr.indexof('+')>0) then
begin
calc:=calc(instr.substring(0,instr.indexof('+')))+calc(instr.substring(instr.indexof('+')+1));
exit;
end;
if(instr.indexof('-')>0) then
begin
calc:=calc(instr.substring(0,instr.indexof('-')))+calc(instr.substring(instr.indexof('-')+1));
exit;
end;
calc:=integer.Parse(instr);
end;
begin
writeln(calc('5+2-3+6*4'));
end.
Я же уже привёл: https://otvet.mail.ru/question/184873481
