Forum: Sonstige Fragen zu Delphi
Delphi
by fiasko,
15. Jun 2004
Achso, ja, wer lesen kann ist klar im Vorteil :wall: ...
Das ist aber auch ganz einfach, man ersetzt die for-Schleife durch:
for i:=l to ((z-n+k) div k)+1 do
zahl(n,k-1,z,s+i,i+1,str+inttostr(i)+' ');
Forum: Sonstige Fragen zu Delphi
Delphi
by fiasko,
15. Jun 2004
das kann man eigentlich nur bei der letzten Spalte (also der Ersten) optimieren: testen ob i>z-s wenn k=1 ist... dürfte aber nicht viel bringen da der nächste Aufruf von zahl eh abbricht.
Das mit dem wiederholen habe ich so verstanden das die Reihenfolge der Zahlen egal ist, also 1 1 1 16 und 1 1 16 1 zusammengefaßt werden sollen :gruebel:.
Forum: Sonstige Fragen zu Delphi
Delphi
by fiasko,
15. Jun 2004
Das wäre dann:
zahl(3,3,8,0,1,'');
1tl1@home2:~/tmp$ ./test
1 1 6
1 2 5
1 3 4
Forum: Sonstige Fragen zu Delphi
Delphi
by fiasko,
15. Jun 2004
Man kann das noch ein bißchen optimieren. Idee:
z=20 ; Zahl X
n= 5 ; Summanden
k=1 k=2 k=3 k=4 k=5
16
14
13