Помогите найти ошибку в программе стекового калькулятора

Тема в разделе "Delphi - FAQ", создана пользователем Night, 20 дек 2006.

Статус темы:
Закрыта.
  1. Night

    Night Гость

    Помогите, пожалуйста, написать программу на Турбо Паскале «стековый калькулятор» до 23.12.06. Моя программа почему-то не работает. Ответы и советы присылайте на irene_fox@inbox.ru Заранее большое СПАСИБО!

    Вот программа:
    Program calculator;

    Const
    maxStack = 250; {╛═╙А╗╛═╚Л╜К╘ Ю═╖╛╔Ю АБ╔╙═}
    c: Integer=0;

    Var
    stek: array [1..maxStack] of Integer; {АБ╔╙}
    x: integer;
    s: string;
    a, b: integer;

    Procedure Push; {╞╝╚╝╕╗БЛ ╜═ АБ╔╙}
    begin
    if c<>maxStack then
    begin
    inc &copy;;
    stek[c] := x;
    writeln('pushed ', stek[c]);
    end;
    end;

    Function Pop:integer; {╒КБ═И╗БЛ ╗╖ АБ╔╙═}
    begin
    if c<>0 then
    begin
    pop:=stek[c];
    dec&copy;;
    end;
    end;

    begin
    writeln('╒╒╔╓╗Б╔ ДЦ╜╙Ф╗Н ╓╚О ╙═╚Л╙Ц╚ОБ╝Ю═');
    write(':');
    readln(a);
    writeln('╒╒╔╓╗Б╔ ДЦ╜╙Ф╗Н ╓╚О ╙═╚Л╙Ц╚ОБ╝Ю═');
    write(':');
    readln:));
    val(s, a, ;);
    if (b=0) and ((length(s)>1) or(s[1]<> '-')) then
    push
    else
    case s[1] of
    '+':
    begin
    a:=pop;
    b:=pop;
    x:=a+b;
    push;
    { writeln(x);}
    end;
    '-':
    begin
    a:=pop;
    b:=pop;
    x:=a-b;
    push;
    { writeln(x);}
    end;
    '/':
    begin
    a:=pop;
    b:=pop;
    if a=0 then
    writeln ('╓╔╚╗БЛ ╜═ 0 █┘▀°┤÷')
    else
    begin
    x:=b div a;
    push;
    { writeln(x);}
    end;
    end;
    '*':
    begin
    a:=pop;
    b:=pop;
    x:=a*b;
    push;
    { writeln(x);}
    end;
    end;
    writeln('x=',x);
    readln;
    end.
     
Загрузка...
Похожие Темы - Помогите найти ошибку
  1. OlgaZag
    Ответов:
    1
    Просмотров:
    1.292
  2. OlgaZag
    Ответов:
    0
    Просмотров:
    523
  3. Google313
    Ответов:
    0
    Просмотров:
    1.000
  4. Marikd
    Ответов:
    2
    Просмотров:
    1.209
  5. ruivit
    Ответов:
    2
    Просмотров:
    1.329
Статус темы:
Закрыта.

Поделиться этой страницей