summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorErich Eckner <git@eckner.net>2019-01-18 10:48:29 +0100
committerErich Eckner <git@eckner.net>2019-01-18 10:48:29 +0100
commit522c964264fc686d3c7d8258f343953f53cdc996 (patch)
tree880ae8af847cee6e37aab5d239b3f7a1013b898a
parent9c1573fcacb80ec59e4dc16734b2d05259897354 (diff)
downloadepost-522c964264fc686d3c7d8258f343953f53cdc996.tar.xz
epostunit.pas: faktorisiere(): output Format geändert - sind jetzt 2 Dateien
-rw-r--r--epost.lps107
-rw-r--r--epostunit.pas71
2 files changed, 98 insertions, 80 deletions
diff --git a/epost.lps b/epost.lps
index 3d65582..018c65d 100644
--- a/epost.lps
+++ b/epost.lps
@@ -22,16 +22,16 @@
<Unit2>
<Filename Value="epostunit.pas"/>
<IsPartOfProject Value="True"/>
+ <IsVisibleTab Value="True"/>
<EditorIndex Value="1"/>
- <TopLine Value="4096"/>
- <CursorPos X="27" Y="4124"/>
+ <TopLine Value="4040"/>
+ <CursorPos X="24" Y="4019"/>
<UsageCount Value="201"/>
<Loaded Value="True"/>
</Unit2>
<Unit3>
<Filename Value="werteunit.pas"/>
<IsPartOfProject Value="True"/>
- <IsVisibleTab Value="True"/>
<EditorIndex Value="3"/>
<TopLine Value="1487"/>
<CursorPos X="74" Y="1513"/>
@@ -42,8 +42,8 @@
<Filename Value="typenunit.pas"/>
<IsPartOfProject Value="True"/>
<EditorIndex Value="7"/>
- <TopLine Value="4"/>
- <CursorPos Y="20"/>
+ <TopLine Value="3640"/>
+ <CursorPos X="47" Y="3670"/>
<UsageCount Value="200"/>
<Loaded Value="True"/>
</Unit4>
@@ -207,122 +207,127 @@
<DefaultSyntaxHighlighter Value="XML"/>
</Unit26>
</Units>
- <JumpHistory Count="29" HistoryIndex="28">
+ <JumpHistory Count="30" HistoryIndex="29">
<Position1>
<Filename Value="werteunit.pas"/>
+ <Caret Line="1472" Column="14" TopLine="1457"/>
</Position1>
<Position2>
<Filename Value="werteunit.pas"/>
- <Caret Line="81" Column="115" TopLine="63"/>
+ <Caret Line="1480" Column="31" TopLine="1463"/>
</Position2>
<Position3>
<Filename Value="werteunit.pas"/>
- <Caret Line="1470" Column="120" TopLine="1454"/>
+ <Caret Line="1483" Column="29" TopLine="1464"/>
</Position3>
<Position4>
<Filename Value="werteunit.pas"/>
- <Caret Line="1475" Column="35" TopLine="1455"/>
+ <Caret Line="1470" Column="97" TopLine="1458"/>
</Position4>
<Position5>
- <Filename Value="werteunit.pas"/>
- <Caret Line="1473" Column="16" TopLine="1456"/>
+ <Filename Value="epostunit.pas"/>
+ <Caret Line="4093" Column="82" TopLine="4067"/>
</Position5>
<Position6>
- <Filename Value="werteunit.pas"/>
- <Caret Line="1472" Column="14" TopLine="1457"/>
+ <Filename Value="epostunit.pas"/>
+ <Caret Line="4115" Column="82" TopLine="4083"/>
</Position6>
<Position7>
<Filename Value="werteunit.pas"/>
- <Caret Line="1480" Column="31" TopLine="1463"/>
+ <Caret Line="1491" Column="33" TopLine="1466"/>
</Position7>
<Position8>
<Filename Value="werteunit.pas"/>
- <Caret Line="1483" Column="29" TopLine="1464"/>
+ <Caret Line="81" Column="16" TopLine="56"/>
</Position8>
<Position9>
<Filename Value="werteunit.pas"/>
- <Caret Line="1470" Column="97" TopLine="1458"/>
+ <Caret Line="1507" Column="69" TopLine="1476"/>
</Position9>
<Position10>
- <Filename Value="epostunit.pas"/>
- <Caret Line="4093" Column="82" TopLine="4067"/>
+ <Filename Value="werteunit.pas"/>
+ <Caret Line="82" Column="86" TopLine="66"/>
</Position10>
<Position11>
- <Filename Value="epostunit.pas"/>
- <Caret Line="4115" Column="82" TopLine="4083"/>
+ <Filename Value="werteunit.pas"/>
+ <Caret Line="1513" Column="93" TopLine="1481"/>
</Position11>
<Position12>
- <Filename Value="werteunit.pas"/>
- <Caret Line="1491" Column="33" TopLine="1466"/>
+ <Filename Value="epostunit.pas"/>
+ <Caret Line="3947" Column="13" TopLine="3934"/>
</Position12>
<Position13>
- <Filename Value="werteunit.pas"/>
- <Caret Line="81" Column="16" TopLine="56"/>
+ <Filename Value="epostunit.pas"/>
+ <Caret Line="3951" Column="17" TopLine="3924"/>
</Position13>
<Position14>
- <Filename Value="werteunit.pas"/>
- <Caret Line="1507" Column="69" TopLine="1476"/>
+ <Filename Value="epostunit.pas"/>
+ <Caret Line="4046" Column="10" TopLine="4024"/>
</Position14>
<Position15>
- <Filename Value="werteunit.pas"/>
- <Caret Line="82" Column="86" TopLine="66"/>
+ <Filename Value="epostunit.pas"/>
+ <Caret Line="4049" Column="18" TopLine="4031"/>
</Position15>
<Position16>
- <Filename Value="werteunit.pas"/>
- <Caret Line="1513" Column="93" TopLine="1481"/>
+ <Filename Value="epostunit.pas"/>
+ <Caret Line="4082" Column="17" TopLine="4065"/>
</Position16>
<Position17>
- <Filename Value="epostunit.pas"/>
- <Caret Line="3947" Column="13" TopLine="3934"/>
+ <Filename Value="werteunit.pas"/>
+ <Caret Line="1499" Column="96" TopLine="1482"/>
</Position17>
<Position18>
- <Filename Value="epostunit.pas"/>
- <Caret Line="3951" Column="17" TopLine="3924"/>
+ <Filename Value="werteunit.pas"/>
+ <Caret Line="82" Column="25" TopLine="65"/>
</Position18>
<Position19>
- <Filename Value="epostunit.pas"/>
- <Caret Line="4046" Column="10" TopLine="4024"/>
+ <Filename Value="werteunit.pas"/>
+ <Caret Line="1513" Column="86" TopLine="1488"/>
</Position19>
<Position20>
<Filename Value="epostunit.pas"/>
- <Caret Line="4049" Column="18" TopLine="4031"/>
+ <Caret Line="4065" Column="11" TopLine="4036"/>
</Position20>
<Position21>
<Filename Value="epostunit.pas"/>
- <Caret Line="4082" Column="17" TopLine="4065"/>
+ <Caret Line="4040" Column="11" TopLine="4038"/>
</Position21>
<Position22>
- <Filename Value="werteunit.pas"/>
- <Caret Line="1499" Column="96" TopLine="1482"/>
+ <Filename Value="../units/matheunit.pas"/>
+ <Caret Line="70" Column="11" TopLine="52"/>
</Position22>
<Position23>
- <Filename Value="werteunit.pas"/>
- <Caret Line="82" Column="25" TopLine="65"/>
+ <Filename Value="epostunit.pas"/>
+ <Caret Line="4040" Column="11" TopLine="4038"/>
</Position23>
<Position24>
- <Filename Value="werteunit.pas"/>
- <Caret Line="1513" Column="86" TopLine="1488"/>
+ <Filename Value="epostunit.pas"/>
+ <Caret Line="4102" Column="27" TopLine="4074"/>
</Position24>
<Position25>
- <Filename Value="epostunit.pas"/>
- <Caret Line="4065" Column="11" TopLine="4036"/>
+ <Filename Value="typenunit.pas"/>
+ <Caret Line="20" TopLine="4"/>
</Position25>
<Position26>
<Filename Value="epostunit.pas"/>
- <Caret Line="4040" Column="11" TopLine="4038"/>
+ <Caret Line="4124" Column="27" TopLine="4096"/>
</Position26>
<Position27>
- <Filename Value="../units/matheunit.pas"/>
- <Caret Line="70" Column="11" TopLine="52"/>
+ <Filename Value="epostunit.pas"/>
+ <Caret Line="2349" Column="21" TopLine="2292"/>
</Position27>
<Position28>
<Filename Value="epostunit.pas"/>
- <Caret Line="4040" Column="11" TopLine="4038"/>
+ <Caret Line="4089" Column="24" TopLine="4078"/>
</Position28>
<Position29>
<Filename Value="epostunit.pas"/>
- <Caret Line="4102" Column="27" TopLine="4074"/>
+ <Caret Line="5817" Column="10" TopLine="5789"/>
</Position29>
+ <Position30>
+ <Filename Value="epostunit.pas"/>
+ <Caret Line="169" Column="26" TopLine="153"/>
+ </Position30>
</JumpHistory>
</ProjectSession>
<Debugging>
diff --git a/epostunit.pas b/epostunit.pas
index 7f190c8..f66f3d0 100644
--- a/epostunit.pas
+++ b/epostunit.pas
@@ -3946,7 +3946,7 @@ var
bekannteBefehle: tMyStringList;
Zeit,tmpE: extended;
anzahl,i,j: longint;
- s,datei: string;
+ s,aDatei,iDatei: string;
pDatei: textFile;
lineOut,tmpEA: tExtendedArray;
maxima,maxima2: tLongintArray;
@@ -3960,7 +3960,8 @@ begin
bekannteBefehle:=tMyStringList.create;
Zeit:=now;
anzahl:=1;
- datei:='';
+ aDatei:='';
+ iDatei:='';
residuenBerechnen:=false;
auszenHorizontal:=false;
repeat
@@ -3978,13 +3979,22 @@ begin
residuenBerechnen:=true;
continue;
end;
- if istDasBefehl('Datei:',s,bekannteBefehle,true) then begin
- if datei<>'' then begin
- gibAus('Habe bereits eine Zieldatei beim Fitten eines 2d-Gaußes!',3);
+ if istDasBefehl('äußere Datei:',s,bekannteBefehle,true) then begin
+ if aDatei<>'' then begin
+ gibAus('Habe bereits eine äußere Zieldatei beim Faktorisieren!',3);
bekannteBefehle.free;
exit;
end;
- datei:=s;
+ aDatei:=s;
+ continue;
+ end;
+ if istDasBefehl('innere Datei:',s,bekannteBefehle,true) then begin
+ if iDatei<>'' then begin
+ gibAus('Habe bereits eine innere Zieldatei beim Faktorisieren!',3);
+ bekannteBefehle.free;
+ exit;
+ end;
+ iDatei:=s;
continue;
end;
if istDasBefehl('äußere Dimension:',s,bekannteBefehle,true) then begin
@@ -4006,7 +4016,7 @@ begin
until false;
bekannteBefehle.free;
- if (datei='') and not residuenBerechnen then begin
+ if (aDatei='') and (iDatei='') and not residuenBerechnen then begin
gibAus('Keine Ausgaben beim Faktorisieren!',3);
exit;
end;
@@ -4084,12 +4094,12 @@ begin
formen[i,j]:=formen[i,j] * tmpE;
end;
- if datei<>'' then begin
- gibAus('... speichern ...',3);
- assignFile(pDatei,datei);
+ if aDatei<>'' then begin
+ gibAus('... speichere äußere Dimension ...',3);
+ assignFile(pDatei,aDatei);
rewrite(pDatei);
+ writeln(pDatei,'# Topf, Koordinate der äußeren Dimension, Integral');
if auszenHorizontal then begin
- writeln(pDatei,'Töpfe');
for i:=0 to length(toepfe)-1 do
for j:=toepfe[i]['x'] to toepfe[i]['y'] do
writeln(
@@ -4098,40 +4108,43 @@ begin
myFloatToStr(transformationen.positionAufAchseZuWert(lOben,j/_xSteps)) + #9 +
myFloatToStr(lineOut[j])
);
- writeln(pDatei);
- for i:=0 to length(toepfe)-1 do begin
- writeln(pDatei,'Topf '+intToStr(i));
- for j:=0 to length(formen[i])-1 do
+ end
+ else
+ for i:=0 to length(toepfe)-1 do
+ for j:=toepfe[i]['x'] to toepfe[i]['y'] do
writeln(
pDatei,
+ intToStr(i) + #9 +
myFloatToStr(transformationen.positionAufAchseZuWert(lLinks,j/_tSiz)) + #9 +
- myFloatToStr(formen[i][j])
+ myFloatToStr(lineOut[j])
);
- writeln(pDatei);
- end;
- end
- else begin
- writeln(pDatei,'Töpfe');
+ closeFile(pDatei);
+ end;
+
+ if iDatei<>'' then begin
+ gibAus('... speichere innere Dimension ...',3);
+ assignFile(pDatei,iDatei);
+ rewrite(pDatei);
+ writeln(pDatei,'# Topf, Koordinate der inneren Dimension, Integral');
+ if auszenHorizontal then begin
for i:=0 to length(toepfe)-1 do
- for j:=toepfe[i]['x'] to toepfe[i]['y'] do
+ for j:=0 to length(formen[i])-1 do
writeln(
pDatei,
intToStr(i) + #9 +
myFloatToStr(transformationen.positionAufAchseZuWert(lLinks,j/_tSiz)) + #9 +
- myFloatToStr(lineOut[j])
+ myFloatToStr(formen[i][j])
);
- writeln(pDatei);
- for i:=0 to length(toepfe)-1 do begin
- writeln(pDatei,'Topf '+intToStr(i));
+ end
+ else
+ for i:=0 to length(toepfe)-1 do
for j:=0 to length(formen[i])-1 do
writeln(
pDatei,
+ intToStr(i) + #9 +
myFloatToStr(transformationen.positionAufAchseZuWert(lOben,j/_xSteps)) + #9 +
myFloatToStr(formen[i][j])
);
- writeln(pDatei);
- end;
- end;
closeFile(pDatei);
end;