Задача 8 Урок 17

Задача 8 Урок 17

На вход вашей программы подается строка вида:

5 + 6 -34 + 56  - 7 + 2

("сколько угодно" чисел с операциями суммы и разности в любом порядке). Вычислите результат (пробелов между символом операции и числом может и не быть)

var i, Code, a, c: integer;
    s,  aStr: string;
begin
  writeln('vvedi stoky');
  readln(s);
  c:=0;
  for i := 1 to length(s) do
    begin
      if((s[i] >= '0') and (s[i] <= '9')) then
        aStr := aStr + s[i];
      if((s[i] = '+') or (s[i] = '-') or (i = length(s))) then //(i = length(s) для последнего числа тк оно ждет знака за ним для сложения
        begin
          Val(aStr, a, Code);
          aStr := '';
          aStr := s[i];
          c:= c + a;
        end;
    end;
  writeln(c);
  readln();
end.   
vedro-compota's picture

решение засчитано

_____________
матфак вгу и остальная классика =)