39 lines
1.0 KiB
Plaintext
39 lines
1.0 KiB
Plaintext
|
/******************************************************/
|
|||
|
/* This program evaluates a polynomial expression */
|
|||
|
/* using FLOAT BINARY data. It also traps the end-of */
|
|||
|
/* file condition for the file SYSIN. */
|
|||
|
/******************************************************/
|
|||
|
fltpoly2:
|
|||
|
procedure options(main);
|
|||
|
%replace
|
|||
|
false by '0'b,
|
|||
|
true by '1'b;
|
|||
|
declare
|
|||
|
(x,y,z) float binary(24),
|
|||
|
eofile bit(1) static initial(false),
|
|||
|
sysin file;
|
|||
|
|
|||
|
on endfile(sysin)
|
|||
|
eofile = true;
|
|||
|
|
|||
|
do while(true);
|
|||
|
put skip(2) list('Type x,y,z: ');
|
|||
|
get list(x,y,z);
|
|||
|
|
|||
|
if eofile then
|
|||
|
stop;
|
|||
|
|
|||
|
put skip list(' 2');
|
|||
|
put skip list(' x + 2y + z =',P(x,y,z));
|
|||
|
end;
|
|||
|
|
|||
|
P:
|
|||
|
procedure (x,y,z) returns (float binary(24));
|
|||
|
declare
|
|||
|
(x,y,z) float binary(24);
|
|||
|
return (x * x + 2 * y + z);
|
|||
|
end P;
|
|||
|
|
|||
|
end fltpoly2;
|
|||
|
|
|||
|
|