помогите срочно нужно. кто поможет дам 30 балов дан текст, имеющий вид: "d1-d2+d3- ...",...

0 голосов
106 просмотров
помогите срочно нужно. кто поможет дам 30 балов

дан текст, имеющий вид: "d1-d2+d3- ...", где di-цифры (n>1). вычислить записанную в тексте алгебрическую сумму

Информатика (12 баллов) | 106 просмотров
Дан 1 ответ
0 голосов

Если заработает, скажите, пожалуйста, хочется хоть что-нибудь отметить 

var

  a: string;
  i, j, g, err, res: integer;
  bo, ol: boolean;
begin
  readln(a);
  a := '+' + a + '=';
  for i := 1 to length(a) do
  begin
    val(a[i], g, err);
    if (err = 0) then
      j := j * 10 + g
    else
    begin
      if (ol) then
        if (bo) then
          res := res + j
        else
          res := res - j;
      bo := a[i] = '+';
      ol := true;
      j := 0;
    end;
  end;
  writeln(res);
end.

(16.9k баллов)