diff options
author | Erich Eckner <git@eckner.net> | 2019-01-18 10:48:29 +0100 |
---|---|---|
committer | Erich Eckner <git@eckner.net> | 2019-01-18 10:48:29 +0100 |
commit | 522c964264fc686d3c7d8258f343953f53cdc996 (patch) | |
tree | 880ae8af847cee6e37aab5d239b3f7a1013b898a | |
parent | 9c1573fcacb80ec59e4dc16734b2d05259897354 (diff) | |
download | epost-522c964264fc686d3c7d8258f343953f53cdc996.tar.xz |
epostunit.pas: faktorisiere(): output Format geändert - sind jetzt 2 Dateien
-rw-r--r-- | epost.lps | 107 | ||||
-rw-r--r-- | epostunit.pas | 71 |
2 files changed, 98 insertions, 80 deletions
@@ -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; |