Задача 7 урок 18

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


например:

1 +  3  или  2 - 12

Напишите программу, которая разбирает вычисляет результат
этого приложения (сделайте поддержку операций сложения и вычитания.

Задача 7 урок 18

type
  arrI = array [1..8] of integer;
  arrS = array [1..8] of string;
var
  a: arrI;
  b: arrS;
  i,j,Sum: integer;
  s,s1: string;
  z:char;

begin
    i:=1;
    j:=1;
    s1:='';
    writeln('vvedite stroku');
    //readln(s);
    s:= '120 + 10';
    for i:= 1 to (length(s)+1) do
    begin
      if (s[i]>='0')and(s[i]<='9') then
        s1:=s1+s[i]

      else if (s1<>'') then
      begin
        val(s1,a[j]);
        j:=j + 1;
        s1:=''
      end

      else if not(s[i] in ['0'..'9']) and (s[i] <> ' ') then  //если не число
      begin
        z:= s[i];
        writeln('z= ',z);
        end;

      if z = '+' then
        Sum := A[1] + A[2]
      else if z = '-' then
        Sum := A[1] - A[2];
    end;
    writeln(A[1],' ',z,' ', a[2], '  = ', Sum);
    readln();
end

.

консоль:

z= +
120 + 10  = 130
vedro-compota's picture

засчитано

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