Data Update
This commit is contained in:
parent
e50b5c3114
commit
633b36288a
206 changed files with 4762 additions and 965 deletions
|
|
@ -0,0 +1,72 @@
|
|||
MODULE TrabbPardoKnuth;
|
||||
|
||||
FROM STextIO IMPORT
|
||||
SkipLine, WriteString, WriteLn;
|
||||
FROM SRealIO IMPORT
|
||||
ReadReal, WriteFixed;
|
||||
FROM SWholeIO IMPORT
|
||||
WriteInt;
|
||||
FROM RealMath IMPORT
|
||||
sqrt;
|
||||
|
||||
CONST
|
||||
Size = 11;
|
||||
|
||||
TYPE
|
||||
TSequence = ARRAY [1 .. Size] OF REAL;
|
||||
|
||||
VAR
|
||||
S: TSequence;
|
||||
I: CARDINAL;
|
||||
Result: REAL;
|
||||
|
||||
PROCEDURE ReverseSequence(VAR S: TSequence);
|
||||
VAR
|
||||
I: CARDINAL;
|
||||
Temp: REAL;
|
||||
BEGIN
|
||||
FOR I := 1 TO Size DIV 2 DO
|
||||
Temp := S[I];
|
||||
S[I] := S[Size - I + 1];
|
||||
S[Size - I + 1] := Temp;
|
||||
END;
|
||||
END ReverseSequence;
|
||||
|
||||
PROCEDURE RealAbs(Item: REAL): REAL;
|
||||
BEGIN
|
||||
IF Item < 0.0 THEN
|
||||
RETURN -Item
|
||||
ELSE
|
||||
RETURN Item
|
||||
END
|
||||
END RealAbs;
|
||||
|
||||
PROCEDURE DoOperation(Item: REAL): REAL;
|
||||
BEGIN
|
||||
RETURN sqrt(RealAbs(Item)) + 5.0 * Item * Item * Item;
|
||||
END DoOperation;
|
||||
|
||||
BEGIN
|
||||
WriteString("Enter 11 numbers.");
|
||||
WriteLn;
|
||||
FOR I := 1 TO Size DO
|
||||
WriteInt(I, 2);
|
||||
WriteString(": ");
|
||||
ReadReal(S[I]);
|
||||
SkipLine
|
||||
END;
|
||||
ReverseSequence(S);
|
||||
WriteLn;
|
||||
FOR I := 1 TO Size DO
|
||||
Result := DoOperation(S[I]);
|
||||
WriteString("f(");
|
||||
WriteFixed(S[I], 3, 8);
|
||||
WriteString(") = ");
|
||||
IF Result > 400.0 THEN
|
||||
WriteString("overflow");
|
||||
ELSE
|
||||
WriteFixed(Result, 3, 8)
|
||||
END;
|
||||
WriteLn;
|
||||
END;
|
||||
END TrabbPardoKnuth.
|
||||
Loading…
Add table
Add a link
Reference in a new issue