Programmierübung zur Collatz-Folge mit textueller und grafischer Ausgabe.
Für eine beliebige natürliche Zahl n gilt:
- Ist n gerade → halbiere sie: n / 2
- Ist n ungerade → verdreifache und addiere 1: 3n + 1
Die Vermutung (bisher unbewiesen) besagt, dass jede Startszahl schließlich bei 1 endet.
Beispiel für n = 6: 6 → 3 → 10 → 5 → 16 → 8 → 4 → 2 → 1 (8 Schritte)
| Datei | Beschreibung |
|---|---|
Collatz/src/Collatz.java |
Textuelle Ausgabe: Collatz-Folgen, Fibonacci, Fakultät |
Collatz/src/CollatzViz.java |
Grafische Visualisierung der Folgenlängen |
# Kompilieren
javac -encoding UTF-8 Collatz/src/Collatz.java Collatz/src/CollatzViz.java -d bin
# Textausgabe
java -cp bin Collatz
# Grafische Visualisierung
java -cp bin CollatzVizZeigt für jeden Startwert im gewählten Bereich die Anzahl der Collatz-Schritte als Balken:
- Farbe: blau = kurze Folge, gelb = mittel, rot = lange Folge
- Gelbe Linie: Gleitender Durchschnitt (Fenster: 20) — hebt Häufungsgebiete hervor
- Blaue gestrichelte Linie: Gesamtdurchschnitt des Bereichs
- Hover: Maus über einen Balken → zeigt Startzahl und genaue Schrittanzahl
- Bereich: frei wählbar (1 bis 100.000 Werte)
| Bereich | Auffälligkeit |
|---|---|
| 25–28 | lokale Spitze (27 braucht 111 Schritte) |
| 54–56 | Nachfolger der 27-Gruppe |
| 703–871 | ausgeprägte Häufung langer Folgen |
| 6171 | 261 Schritte — auffälliger Einzelausreißer |
- Java 8+
- Swing (in Standard-JDK enthalten)
