%REAL %PROCEDURE POWER(X,Y); %VALUE X,Y;%REAL X;%INTEGER Y; %BEGIN %INTEGER DUM; %REAL Z; PRINTSTRING();NEWLINE; Z:=1; %FOR DUM:=1 %WHILE Y>0 %DO %BEGIN %FOR DUM:=2 %WHILE Y-(Y %DIV 2)*2=0 %DO %BEGIN Y:=Y %DIV 2; X:=X^2; %END; Y:=Y-1;Z:=X*Z %END; POWER:=Z %END;