Input/Output Programm terminiert nicht -> stürzt ab, wo Fehler?

T

tumprogrammer

Mitglied
Ich wollte folgende Aufgabe lösen:

Implementieren Sie ein MiniJava-Programm namens GGTTable.java, das eine Tabelle
der ggTs für alle Kombinationen von Zahlen zwischen 1 und x ausgibt (für positive x).
Dabei soll x vom Benutzer eingegeben werden. Für x = 10 ist die Ausgabe folgende:
1 2 3 4 5 6 7 8 9 10
1 1 1 1 1 1 1 1 1 1 1
2 1 2 1 2 1 2 1 2 1 2
3 1 1 3 1 1 3 1 1 3 1
4 1 2 1 4 1 2 1 4 1 2
5 1 1 1 1 5 1 1 1 1 5
6 1 2 3 2 1 6 1 2 3 2
7 1 1 1 1 1 1 7 1 1 1
8 1 2 1 4 1 2 1 8 1 2
9 1 1 3 1 1 3 1 1 9 1
10 1 2 1 2 5 2 1 2 1 10
Dazu habe ich folgenden Code geschrieben:

Java:
package blatt2_SS16;

import java.util.Scanner;

public class GGTTable {
  
    static int x;

    public static void main(String[] args) {
      
        //Nutzereingabe
        boolean passt = false ;
        while (! passt ) {
        System .out. println("Zahl > 1 eingeben : ");
        Scanner in=new Scanner(System.in);
        x=in.nextInt();
        passt = ( x > 1);
        }
      
        //Konsolenausgabe
        int zeile=1;
        int spalte;
        for(int i=0; i<x; i++){
            System.out.print(i);
            System.out.print('\t');
        }
        System.out.println();
        while(zeile<=x){
            //System.out.print(zeile);
            //System.out.print('\t');
            spalte =1;
            while(spalte<=x){
              
                //Berechnung des ggT
                while(zeile!=spalte){
                    if(zeile<spalte)
                        spalte=spalte-zeile;
                    else
                        zeile=zeile-spalte;
                }
                    //Ausgabe des ggT
                    System.out.print(zeile);
                    System.out.print('\t');
                spalte=spalte+1;
            }
            System.out.println();
            zeile=zeile+1;
        }
      
      
  
    }

}

Wieso terminiert das Programm nicht? Ich finde den Fehler nicht.

Vielen Dank für eure Hilfe!
 
M

Meniskusschaden

Top Contributor
In der inneren while-Schleife reduzierst den Wert von spalte durch deine Berechnung, so dass die Abbruchbedingung der mittleren while-Schleife niemals zutreffen kann.
 
T

tumprogrammer

Mitglied
Für alle interessierten: Das ist der komplett korrekte Code:

Java:
package blatt2_SS16;

import java.util.Scanner;

public class GGTTable {
   
    static int x;

    public static void main(String[] args) {
       
        //Nutzereingabe
        boolean passt = false ;
        while (! passt ) {
        System .out. println("Zahl > 1 eingeben : ");
        Scanner in=new Scanner(System.in);
        x=in.nextInt();
        passt = ( x > 1);
        }
       
        //Konsolenausgabe
        int zeile=1;
        int spalte;
        System.out.print('\t');
        for(int i=1; i<=x; i++){
            System.out.print(i);
            System.out.print('\t');
        }
        System.out.println();
        while(zeile<=x){
            System.out.print(zeile);
            System.out.print('\t');
            spalte =1;
            while(spalte<=x){
               
                //Mehr Variablen verwenden, da while Schleifen sonst nicht durchlaufen werden
                int a=zeile;
                int b=spalte;
               
                //Berechnung des ggT
                while(a!=b){
                    if(a<b)
                        b=b-a;
                    else
                        a=a-b;
                }
                    //Ausgabe des ggT
                    System.out.print(a);
                    System.out.print('\t');
                spalte=spalte+1;
            }
            System.out.println();
            zeile=zeile+1;
        }
       
       
   
    }

}
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
N Warum terminiert mein Programm nicht? Java Basics - Anfänger-Themen 13
O Warum terminiert mein Programm nicht!? Java Basics - Anfänger-Themen 15
A Wieso terminiert das Programm nicht? Java Basics - Anfänger-Themen 4
S Programm terminiert nicht Java Basics - Anfänger-Themen 2
S Threads Programm terminiert statt zu warten Java Basics - Anfänger-Themen 20
J Programm beenden ohne System.exit() oder Runtime.exit() Java Basics - Anfänger-Themen 5
F Java Programm, das kleine Buchstaben in einem String zählen soll und bei großen Buchstaben oder Sonderzeichen abbrechen soll. Java Basics - Anfänger-Themen 5
A Programm Histogram Java Basics - Anfänger-Themen 2
C Was ist nötig für ein Java-Programm auf Server für Website Java Basics - Anfänger-Themen 18
CT9288 Interaktion mit laufendem Programm -Fachbegriffe Java Basics - Anfänger-Themen 2
Gaudimagspam Assertions im Programm hinzufügen Java Basics - Anfänger-Themen 4
G Weiß jemand wie man dieses Programm schreibt? Java Basics - Anfänger-Themen 84
C Programm ausführen ohne JRE? Java Basics - Anfänger-Themen 3
justemii Gehalt berechnen - Aufgabe Java-Programm Java Basics - Anfänger-Themen 9
N Best Practice How can I creat a programm with java under windows 10 in order to open an spreadsheet in libreoffice calc format Java Basics - Anfänger-Themen 11
W Programm dass Palindrome erkennt Java Basics - Anfänger-Themen 6
K Erste Schritte Programm geht aus Schleife, warum? Java Basics - Anfänger-Themen 2
P Wie für EIN Java Programm von 64bit Java (=Standard) auf 32bit Java Installation (Windows) umschalten? Java Basics - Anfänger-Themen 6
K Programm stoppt einfach ohne Grund Java Basics - Anfänger-Themen 4
M Rekursives Programm zum Anzeigen von Primzahlen Java Basics - Anfänger-Themen 3
X Kurzes Java-Programm, das sich komisch verhält Java Basics - Anfänger-Themen 6
Zrebna Programm kann aus der Konsole nicht gestartet werden (in der IDE läuft es) Java Basics - Anfänger-Themen 2
K Error bei meinem Programm - Hilfe Java Basics - Anfänger-Themen 8
J Programm schreiben Java Basics - Anfänger-Themen 5
T Kann jemand kurz das Programm testen? Java Basics - Anfänger-Themen 13
T Programm Schleife/if Java Basics - Anfänger-Themen 2
T Mein Programm hat Fehler Java Basics - Anfänger-Themen 4
G While/If Programm Java Basics - Anfänger-Themen 2
G Java-Programm Terminal Java Basics - Anfänger-Themen 2
Dimax Java Programm mit exec starten Java Basics - Anfänger-Themen 5
I Java Programm sieht wie exe aus. Java Basics - Anfänger-Themen 3
J Programm vereinfachen Java Basics - Anfänger-Themen 5
G Java-Programm weitergeben Java Basics - Anfänger-Themen 14
Kirby.exe Programm startet nachdem es compiled wurde nicht Java Basics - Anfänger-Themen 17
T Programm effizienter gestalten Java Basics - Anfänger-Themen 17
M Ein Programm erweitern, wie? Java Basics - Anfänger-Themen 3
J Fehler in Programm: Index -1 out of bounds for length 0 Java Basics - Anfänger-Themen 5
M Programm per Nutzereingabe ändern Java Basics - Anfänger-Themen 3
G Programm mit Schleife funktioniert nicht Java Basics - Anfänger-Themen 5
G If / While Programm (Datei auslesen) Java Basics - Anfänger-Themen 6
G Dezimal zu Binärcode Programm Java Basics - Anfänger-Themen 9
G Programm schreiben: Zahl (n) eingeben, 1+1/n+2/n+3/n+....+n/n Java Basics - Anfänger-Themen 8
M Problem mit meinem Programm Java Basics - Anfänger-Themen 6
L Wie teilt man ein Programm in vernünftige Klassen ein? Java Basics - Anfänger-Themen 10
R Compiler-Fehler HalloWelt-Programm korrekt abgeschrieben, trotzdem Fehlermeldungen Java Basics - Anfänger-Themen 2
W Hilfe beim Chat Programm Java Basics - Anfänger-Themen 14
A Java-Programm läuft bei installierter JDK aber nicht mit JRE? Java Basics - Anfänger-Themen 5
J Mein Programm beendet sich ohne mein Zutun Java Basics - Anfänger-Themen 9
I Datei in Programm speichern Java Basics - Anfänger-Themen 3
H Programm compilieren Java Basics - Anfänger-Themen 10
W Java Programm mit API Anbindung Java Basics - Anfänger-Themen 2
D Java Programm mit JavaScript einbinden Java Basics - Anfänger-Themen 8
O Erstes Programm: Matrizen Multiplikation Java Basics - Anfänger-Themen 10
K Programm ausführen Java Basics - Anfänger-Themen 2
X Java Programm MacOS Java Basics - Anfänger-Themen 1
O Programm verstehen :D Java Basics - Anfänger-Themen 4
A Programm in Konsole Java Basics - Anfänger-Themen 4
S Programm als Daemon ausfuehren - wie rufe ich es auf..? Java Basics - Anfänger-Themen 3
A Wie gebe ich bei android eine string im programm aus? Java Basics - Anfänger-Themen 4
A Erklärung Programm zur Kreisberechnung Java Basics - Anfänger-Themen 43
L Fehler im Programm bei Ausgabe Java Basics - Anfänger-Themen 21
F Array-Programm Java Basics - Anfänger-Themen 10
Koookie Kleines Frage - Antwort Programm (Anfänger) Java Basics - Anfänger-Themen 5
V Vererbung Eclipse startet das Programm nicht und rechnet nicht Java Basics - Anfänger-Themen 6
R Primzahlen Zähler Programm / Benachbarte Primzahlen Java Basics - Anfänger-Themen 30
N Verbesserungsvorschläge zu Wegfinder Programm Java Basics - Anfänger-Themen 26
D Warum gibt mir das Programm nicht den Array invertiert an ? Java Basics - Anfänger-Themen 1
J Zugriff auf Variable in anderem Programm Java Basics - Anfänger-Themen 5
L Programm lässt sich nicht starten! Java Basics - Anfänger-Themen 1
Z Montageberechnungs programm, finde leider den Fehler nicht Java Basics - Anfänger-Themen 13
J Mehrere paintComponenten in einem Programm Java Basics - Anfänger-Themen 0
K Probleme beim Programm schreiben - Lesen von Dateiinhalten -zaehlen von Wörtern/ Buchstaben Java Basics - Anfänger-Themen 4
B Tic Tac Toe - Programm Java Basics - Anfänger-Themen 2
N BitFlags Programm (switch on/off , swap und isSet) Java Basics - Anfänger-Themen 7
T Woher nimmt das Programm die Variablenwerte???? Java Basics - Anfänger-Themen 2
Hanschyo Programm schließt sich einfach Java Basics - Anfänger-Themen 2
A Shopping Cart Programm. Verstehe einige Zusammenhänge nicht Java Basics - Anfänger-Themen 1
T Brauche Hilfe um ein Programm zu verstehe Java Basics - Anfänger-Themen 4
L Programm zur Codieren nach Rotx Java Basics - Anfänger-Themen 1
x-tshainge Mein Programm lässt sich nicht Starten Java Basics - Anfänger-Themen 8
A Erste Schritte Bitte helfen sie mir diese Programm zu schreiben Java Basics - Anfänger-Themen 12
M Programm, das ein Wort einliest Java Basics - Anfänger-Themen 3
W Warum läuft mein Programm nicht? Java Basics - Anfänger-Themen 14
D Auswahl und Ausgabe erstes Programm Java Basics - Anfänger-Themen 8
x-tshainge Schleife für ein Würfel Programm Java Basics - Anfänger-Themen 2
N Passwort Anfrage vor Programm start Java Basics - Anfänger-Themen 1
W Dezimalzahl in Binär umwandeln - Was sollte ich an meinem Programm verbessern? Java Basics - Anfänger-Themen 5
I Programm tut nicht was es soll :) Java Basics - Anfänger-Themen 5
B Programm erwartungswert Java Basics - Anfänger-Themen 16
F Java Programm schließen Java Basics - Anfänger-Themen 1
M Java Methode editierbar machen im Programm Java Basics - Anfänger-Themen 62
W Warum funktioniert mein Programm nicht ? Java Basics - Anfänger-Themen 12
B Mit Java anderes Java Programm starten Java Basics - Anfänger-Themen 3
A Kann mir jemand dieses Programm erklären? Java Basics - Anfänger-Themen 1
J Java Programm Java Basics - Anfänger-Themen 29
C Programm dreht extra Schleife, warum? Java Basics - Anfänger-Themen 6
K Armstrong Programm geht nur bis 1000, aber nicht weiter Java Basics - Anfänger-Themen 2
B Java Eclipse Programm in einer Batch ausführen Java Basics - Anfänger-Themen 3
W Warum funktioniert mein Programm nicht ? Java Basics - Anfänger-Themen 6
P SystemTray: Programm sol im Hintergrund weiter laufen Java Basics - Anfänger-Themen 30

Ähnliche Java Themen

Anzeige

Neue Themen


Oben