Veröffentlicht 28. Oktober 201014 j Was macht dieser Algorithmus? Ich komme da immer auf einige unzusammenhängende Zahlen. TUTETWAS(a, if (a > then return PLUS_UNENDLICH else m := ((a+b)/2) if (A[m] < TUTETWAS(a,m-1)) then if (A[m] < TUTETWAS(m+1,) then return A[m] else return TUTETWAS(m+1, else if (TUTETWAS(a,m-1) < TUTETWAS(m+1,) then return TUTETWAS(a,m-1) else return TUTETWAS(m+1, [/code] hoffentlich könnt ihr mir helfen. mfg Astasor Bearbeitet 28. Oktober 201014 j von flashpixx Code-Tags
28. Oktober 201014 j Das hat nichts mit Java zu tun, deswegen habe ich es verschoben @Topic: Überlege Dir doch mal den Algorithmus für zwei natürliche Zahlen
29. Oktober 201014 j Fehlt da nicht nen Teil? In der 5. Zeile ist in der IF-Abfrage A[m] aber A[] wurde nirgends deklariert.
30. Oktober 201014 j Nach kurzem nicht gründlichen Überlegen bin ich zum Schluss gekommen, dass diese Funktionen den niedrigsten Funktionswert, den die endlichen Folge A[m] im Intervall [a,b] hat sucht. Es können im Endeffekt nur 2 Werte zurückgegeben werden: 1. A[m] (evtl. nach mehrmaligen rukursiven Aufruf) 2. PLUS_UNENDLICH letzteres ist nur dann der Fall wenn beim ersten Funktionsaufruf ein ungültiges Intervall [a,b] angegeben wurde -> die linke Intervallgrenze a ist größer als die rechte b. Desweiteren gilt IMMER a <= m <= b A[m] wird dann zurückgegeben wenn weder "links" noch "rechts" von m ein kleiner Wert der Folge existiert. Wenn A[m] kleiner als der niedrigste Wert "links" von m ist wird der kleinste Wert "rechts" von m zurückgegeben. Wenn A[m] kleiner als der niedrigste Wert "rechts" von m ist wird links nach dem kleinsten wert gesucht.
17. November 201014 j Autor Danke für die schnelle Antwort. (was man von meiner nicht gerade sagen kann :upps ) mfg Astasor
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.