Напишите программу в синтаксисе free pascal или turbo pascal, которая вычисляет выражение, состоящее из чисел и знаков (допускаются только знаки «+» или «–», количество чисел и знаков не ограничено). выражение вводится как символьная строка, все числа целые. ввод: 12+42-44-12-13+1-23 вывод: -37 ввод: 12-53-2+23+0-25 вывод -45
S, chislo: string;
i,A,B,C,E: integer;
Begin
B := 0;
WriteLn('Введите выражение: ');
ReadLn(S);
i := S.length;
While (i > 0) do
begin
Case S[i] of
'+':
begin
val(chislo,A,E);
B := B + A;
chislo := '';
end;
'-':
begin
val(chislo,A,E);
B := B - A;
chislo := '';
end;
else
chislo := S[i] + chislo;
End;
i := i - 1;
end;
if (chislo <> '') then
begin
val(chislo,A,E);
B := B + A;
end;
WriteLn(B);
End.