Уточнення алгоритму обчислення виразу, Детальна інформація

Уточнення алгоритму обчислення виразу
Тип документу: Реферат
Сторінок: 4
Предмет: Комп`ютерні науки
Автор: Олексій
Розмір: 8
Скачувань: 884
Реферат на тему:

Уточнення алгоритму обчислення виразу

Напишемо функцію llxval обчислення значення виразу за його ЗПЗ, що подається послідовністю лексем. У цій функції використовуються засоби з модуля SLlx:

- функція перевірки вичерпання послідовності лексем із заголовком

function isemllx ( Llx : Sqlx ) : boolean;

-процедура добування й вилучення першого елемента послідовності лексем із заголовком

procedure get ( var Llx : Sqlx; var lx : Tlx ).

Крім того, використовуються підпрограми обробки магазина лексем, про які сказано в попередньому підрозділі.

function llxval ( var Llx : Sqlx ) : real;

var Slx : Stlx; lx, lx1, lx2 : Tlx; ok : boolean;

begin

inits( Slx ); ok := true;

while not isemllx( Llx ) and ok do

begin

get( Llx, lx);

case lx.stl of

con : push( Slx, lx );

ops : begin

pop( Slx, lx2 ); pop( Slx, lx1 );

case lx.sig of

'+' : lx1.numb := lx1.numb + lx2.numb;

'-' : lx1.numb := lx1.numb - lx2.numb;

'*' : lx1.numb := lx1.numb * lx2.numb;

'/' : if lx2.numb <> 0 then

lx1.numb := lx1.numb / lx2.numb

else ok := false

end;

if ok then push( Slx, lx1 )

end;

nam : begin

The online video editor trusted by teams to make professional video in minutes