home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Turbo Toolbox
/
Turbo_Toolbox.iso
/
1991
/
07_08
/
tricks
/
det_bsp1.pas
< prev
next >
Wrap
Pascal/Delphi Source File
|
1991-02-21
|
2KB
|
83 lines
(* ------------------------------------------------------ *)
(* DET-BSP1.PAS *)
(* (c) 1991 Jens Burmeister & TOOLBOX *)
(* ------------------------------------------------------ *)
PROGRAM DetBeispiel1;
USES Crt, Dos, DetTool;
FUNCTION TimeStr : STRING;
VAR
Hour, Min,
Second, Sec100 : WORD;
Temp : STRING [2];
S : STRING;
BEGIN
GetTime(Hour, Min, Second, Sec100);
Str(Hour:2, Temp); S := Temp;
Str(Min:2, Temp); S := S + ':' + Temp;
Str(Second:2, Temp); S := S + ':' + Temp;
Str(Sec100:2, Temp); TimeSTR := S + '.' + Temp;
END;
VAR
FileName : PathStr;
FilVar : Text;
i, j, Dim : WORD;
Value : REAL;
A : RealMatrixPtr;
BEGIN
ClrScr;
WriteLn('Berechnung der Determinanten einer reell',
'wertigen Matrix:');
WriteLn('----------------------------------------',
'-----------------');
WriteLn('Die Dimension der Matrix und die Matrix',
'elemente werden');
WriteLn('aus einer Textdatei eingelesen. In der ersten ',
'Zeile');
WriteLn('steht die Dimension der Matrix. Danach folgen ',
'zeilenweise');
WriteLn('die Matrixelemente.');
WriteLn('----------------------------------------------',
'-----------');
Write ('Dateiname: '); ReadLn(FileName);
WriteLn('----------------------------------------------',
'-----------');
Assign(FilVar, FileName);
{$I-}
Reset(FilVar);
{$I+}
IF IOResult = 0 THEN BEGIN
ReadLn(FilVar, Dim);
WriteLn('Verfügbarer Arbeitsspeicher in Bytes : ',
MemAvail:8);
New(A, Init(Dim));
WriteLn('Platz für Matrix angefordert! Dimension: ',
A^.GetDimension:8);
WriteLn('Verbleibender Arbeitsspeicher in Bytes : ',
MemAvail:8);
FOR j := 1 TO A^.GetDimension DO BEGIN
FOR i := 1 TO A^.GetDimension DO BEGIN
Read(FilVar, Value);
A^.SetValue(i, j, Value);
END;
ReadLn(FilVar);
END;
Close(FilVar);
WriteLn('Uhrzeit: ', TimeStr, ' Bitte warten.');
WriteLn('Determinante: ', A^.Determinant);
WriteLn('Uhrzeit: ',TimeStr);
DISPOSE(A, Done);
END;
END.
(* ------------------------------------------------------ *)
(* Ende von DET-BSP1.PAS *)