Welche Bedingung meinst du ?
Diese ?
If Erbe > ErbHaelfte
So nun mein jetziger Stand (23:56) :
Delphi-Quellcode:
procedure SucheLoesung(i, Erbhaelfte, TErbe: Integer) ;
var j: Integer ;
begin
If i <= length(Feld) Then
begin
For j:= i To length(Feld) Do
begin
If (TErbe + Feld[j]) = Erbhaelfte Then
begin
Edit1.Text:= 'Gefunden _ ' + IntToStr(TErbe+Feld[j]) ;
end
Else If (TErbe + Feld[j]) < Erbhaelfte Then
begin
SucheLoesung(i+1, Erbhaelfte, TErbe+Feld[j]) ;
end
Else If (TErbe + Feld[j]) > Erbhaelfte Then
begin
//TErbe:= TErbe - tmp ;
end;
end;
end;
end;
begin
If (ErbeBerechnen mod 2) = 0 Then SucheLoesung(1, ErbeBerechnen div 2, 0)
Else Edit1.Text:= 'Erbe nicht teilbar!' ;
Für mich macht es so noch vel mehr Sinn und ich muss nichts addieren oder abziehen, wenn nicht absolut sicher ist, dass alles passt.
Nuuuur... 17,42,7,4,16 und 1,9,7,3,8 gibt er immer noch die Hälfte der Summe aus, obwohl er keine ausgeben sollte.
mfg und gute nacht