ERLEDIGT
JA
JA
ANTWORTEN
3
3
ZUGRIFFE
525
525
EMPFEHLEN
-
Hallo,
Aufgabe ist die Berechnung der Collatz-Folge nach einem eingegebenen Startwert.
Nun zum Problem. Bei der void f(int n) Methode(ab Zeile 37) soll die Schleife eigentlich nur durchlaufen werden, bis das erste Mal die 1 auftritt. Jedoch rechnet mein Programm immer weiter.
Sieht vielleicht jemand den Fehler?
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74
class Folge { int a_0; int laenge; int max; Folge (int x) { a_0 = x; if (x <= 0) { a_0 = 1; } } void ausgeben(){ System.out.println("Der Startwert ist: "+a_0); System.out.println("Die gesamte Anzahl der Glieder ist: "+laenge); System.out.println("Die maximale Zahl der Folge ist: "+max); } int next (int a) { if (a % 2 == 0) { a = a/2; } else { a = 3*a+1; } return a; } void f(int n) { int folge = a_0; for ( int i= 0; i < n; i++) { folge = next(folge); System.out.println(folge); } } void f() { laenge = 1; int folge = a_0; while (folge > 1) { folge = next (folge); laenge ++; System.out.println(folge); max = Math.max(max, a_0); } } }Geändert von anni (14.12.10 um 10:31 Uhr)
-
Klar rechnet er immer weiter, du hast ja auch keine Abbruchbedingung in der for schleife

Falls dein Wert 1 erreicht, mach nen break;
Ich weiss einige finden Loesungen mit break nicht schoen, funktioniert jedoch
Waere super wenn ihr euren Code in dieser Form einfuegt:
[JAVA]System.out.println("Test :)");[/JAVA]
wird zu:
Tabs sind uebrigens keine Feinde :)Code java:1
System.out.println("Test :)");
Der "Erledigt Button" beisst net :) Und der "Danke Button" ist auch nicht nur zur zierde
Danke :D
-
Ja genau, hab ich dann auch gesehen. Jetzt funktioniert es.
Danke trotzdem.
-
Dann nutze doch bitte den Erledigt Button rechts von "Auf Thema antworten"
Waere super wenn ihr euren Code in dieser Form einfuegt:
[JAVA]System.out.println("Test :)");[/JAVA]
wird zu:
Tabs sind uebrigens keine Feinde :)Code java:1
System.out.println("Test :)");
Der "Erledigt Button" beisst net :) Und der "Danke Button" ist auch nicht nur zur zierde
Danke :D
Ähnliche Themen
-
Konvertierung: unsigned long -> Folge von Buchstaben.
Von KkTotheT im Forum C/C++Antworten: 11Letzter Beitrag: 24.11.10, 11:28 -
Fibinacci-Folge
Von chaosente im Forum PHPAntworten: 4Letzter Beitrag: 06.11.05, 16:12 -
Dropdown mit variierendem Folge-Dropdown
Von die_Ahnungslose im Forum Javascript & AjaxAntworten: 0Letzter Beitrag: 11.10.05, 18:22 -
verlangsamte bewegung bei mouseover auf eine bewegtes foto-folge
Von flash-maus im Forum Flash PlattformAntworten: 4Letzter Beitrag: 03.02.04, 12:50 -
String mit mehreren Zahlen in Folge finden?!
Von Ruediger im Forum PHPAntworten: 2Letzter Beitrag: 23.09.03, 10:56





Zitieren
Login





