URL: https://www.overclockers.at/coding-stuff/c_gcc_segmentation_fault_core_dump_186732/page_2 - zur Vollversion wechseln!
nageh, und ich dachte ich komm komplett ohne array aus. um mir das zu merken brauch ich wieder datenhaltung.. naja, was bleibt mir übrig.
thx
Du könntest auch das n am Anfang auf einen heuristischen Wert setzen, z.B. 1000 oder 100. Ich denke in 100 Zügen kann man mit dem Springer jedes Feld erreichen (Beweis: trivial ).
Btw ist das was du da schreibst C++
na is net c++
das bool hab ich ma selbst gemacht im c
wie von that schon gesagt - ohne ne liste zu führen wo du schon warst kann zu einer endlosschleife führen und da hilft der grösste stackspeicher nix mehr
oh schön, der segmentation fault freunde dich mit ihm an, du wirst ihn noch _oft_ zu sehen bekommen (ich sprech aus 3. semester erfahrung...)
nope, geht auch ohne liste
das problem war, durchs return ... || .... ; ist er natürlich rausgegangen sobald er das erste true hatte, und hat die anderen möglichkeiten nicht aufgerufen.
hab die rekursionen jetzt in if gepackt, und siehe da, funktioniert einwandfrei.
komplett ohne datenhaltung ausgekommen
danke trotzdem
@ semtex, ja, das 3. semester is schon ein bissl anders als das erste jahr. die nächste übung is auch lustig... dynamisches baumsuchen/optimieren.. pft. bis jetzt warn die übungen ja eh human (leicht)
naja, thx, solved.
del
Hm? Hast du sonst noch was verändert oder nur die bool'schen durch binäre ORs ersetzt?
er hat nicht die boolschen durch binäre ersetzt sondern die boolschen durch ein if konstrukt...
Zitat von Neo-=IuE=-er hat nicht die boolschen durch binäre ersetzt sondern die boolschen durch ein if konstrukt...
ich würde sagen es ist eine funktionierende lösung. die schöne lösung hat gue angeboten, denn ein binäres or hat doch um einiges mehr sex:Zitat von Uncle****agenau das. schaut zwar brutal aus, ist aber eine sehr schöne lösung.
hier wird die funktion 4x aufgerufen und wenn eine funktion true zurückgibt, dann returned er das auch.Code:return func(1) | func(2) | func(3) | func(4);
und wenn zwei true returnen? dann verodert er wieder auf false oder?
nein, nur wenn alle false returnen.
bäm!
danke, wieder was gelernt.
so gehts auch
Aber das allein verhindert nicht für alle Belegungen die unendliche Rekursion, denke ich (hab's jetzt nicht überprüft). Hast du es ausreichend (= alle möglichen Ziele auf dem Schachbrett) getestet? Speziell müsste es zu einer unendlichen Rekursion kommen, wenn die Lösung nicht im Baum mit den ersten 3 Horsejump Varianten auftritt, dann springt er nämlich wieder zurück an die Ausgangsposition. Hast du zusätzlich das n am Anfang auf eine maximale Grenze gesetzt, wie ich vorgeschlagen hab?
overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2025