Постфиксное выражение – это числовое выражение, в котором сначала записываются операнды,...

0 голосов
53 просмотров
Постфиксное выражение – это числовое выражение, в котором сначала записываются операнды, а затем знак операции. Например: 3 5 + означает 3+5. Особенностью постфиксных выражений является то, что при их записи скобки не нужны. Например, выражение (3+4*2)/3-1 можно записать так: 3 4 2 * + 3 / 1 -. Написать программу вычисления постфиксного выражения, содержащего цифры и знаки арифметических операций. Операнды и операции разделяются пробелами.

Информатика (545 баллов) | 53 просмотров
0

паскаль пойдет?

0

пойдет

Дано ответов: 2
0 голосов
Правильный ответ

Программа написана на паскале авс. Считывает из файла строку (выражение в постфиксальной форме), после чего спрашивает пользователя счтать значение выражения или нет. Если вводишь "д" (то есть для программы это да), то она просит ввести значения для переменных х и у, которые могут быть задействованы в выражении и считает значение

(52 баллов)
0 голосов

Var
  stack : array [1..1000] of double;
  op1, op2 : double;
  i : integer;
  c : char;
begin
  i := 0;
  while not eoln do
  begin
    read (c);
    if c in ['0'..'9'] then
    begin
      inc (i);
      stack[i] := ord (c) - ord ('0');
    end
    else if c <> ' ' then
    begin
      if i < 2 then
      begin
        writeln ('Error!'); halt;
      end;
      op2 := stack[i];
      dec (i);
      op1 := stack[i];
      case c of
        '+' : stack[i] := op1 + op2;
        '-' : stack[i] := op1 - op2;
        '*' : stack[i] := op1 * op2;
        '/' : stack[i] := op1 / op2;
      end;
    end;
  end;
  if i <> 1 then
    writeln ('Error!')
  else
    writeln (stack[i]);
end.

(4.6k баллов)