Sponsor-Board.de
Java Syntaxfehler

+- Sponsor-Board.de (https://www.sponsor-board.de)
+-- Forum: Community (/forumdisplay.php?fid=56)
+--- Forum: Hilfe (/forumdisplay.php?fid=102)
+---- Forum: PC (/forumdisplay.php?fid=103)
+---- Thema: Java Syntaxfehler (/showthread.php?tid=49142)


Java Syntaxfehler - krayyzn - 25.06.2014 15:25

Hey,

habe zur Vorbereitung auf eine Java-Klausur eine Probeklausur bekommen, bei der die erste Aufgabe lautet, Syntaxfehler zu finden.

Zitat:
1. Der folgende Quellcode enthält 10 Syntax-Fehler. Finden und korrigieren Sie diese.
( / 7 Punkte)
class SiebDesEratosthenes {

public static main(String[] args) {

int[] zahlenfeld = int[100];

// Feldelementen Werte zuweisen
for (int i = 0; m<zahlenfeld.length; i++)
zahlenfeld[i] = i+1;

// Ausgabe Feldelemente in 10er Blöcken
for (int j = 0; j < 10Wink{
for (int k = 0 ; k < 9; k++){
System.out.print(zahlenfeld[j*10+k]);
System.out.print(", ");
}
System.out.println(zahlenfeld[j*10+9]);


// Bestimmung der Primzahlen mit dem Sieb des Eratosthenes
zahlenfeld[0] = 0;
for (int i = 2; i < 51; i++){
for (int k = 2; k < (zahlenfeld.length/i+1); k++){
zahlenfeld[i*k-1] = 0
}
}

/ Ausgabe der Primzahlen
System.out.println();
System.out.println( Die Primzahlen zwischen 1 und 100: );
for (int j = 0; j < 10; j++){
for (int k = 0 , k < 9; k++){
if (zahlenfeld[j*10+k] != 0){
System.out.print(zahlenfeld[j*10+k]);
System.out.print(", ");
}
}
System.out.println;
}

}

}


Leider bin ich damit nicht ganz so wirklich vertraut und habe in der Eile auch nichts auf Anhieb im Internet dazu gefunden.

Könnte mir nochmal jemand die Regeln von Java, also wann kommt bspw. ein ;, aufzeigen?

Danke!


RE: Java Syntaxfehler - webcraft - 25.06.2014 15:30

Wo zum Teufel bekommt man solche Idiotenaufgaben als Klausur...(das würde mich jetzt ernsthaft mal interessieren)? Und wenn es eben eine Klausur ist, musst du es schon alleine lösen. Du bekommst ja schließlich die Note und zum anderen hast du bestimmt bestätigt, dass alle Lösungen von deinen Arbeiten eigenständig erarbeitet wurden, was dann ja nicht der Fall wäre.

Edit Ich möchte jetzt nun kein Unmensch sein und helfe dir und falle mir damit selber in den Rücken bei meiner obigen Aussage.

Code:
for (int j = 0; j < 10; j++){
for (int k = 0 , k < 9; k++){

Müsste eig. heißen:

Code:
for (int j = 0; j < 10; j++){
for (int k = 0; k < 9; k++){


Dann wäre da noch:

Code:
for (int i = 0; m<zahlenfeld.length; i++)
zahlenfeld[i] = i+1;

Was sein müsste:

Code:
for (int i = 0; m < zahlenfeld.length; i++)
zahlenfeld[i] = i++;


Und das hier:

Code:
System.out.println( Die Primzahlen zwischen 1 und 100: );

...verpackste mal besser anders:

Code:
System.out.println("Die Primzahlen zwischen 1 und 100: ");




RE: Java Syntaxfehler - Ringelnatz - 25.06.2014 15:39

Naja, es ist ja nur eine Probleklausur, also nichts was Punkte gibt oder so. Aber im Ernst, die Fehler sind größtenteils so offensichtlich, wenn Du die nicht findest würde ich mir für die Klausur Sorgen machen. Zeile 3, 5, ...


RE: Java Syntaxfehler - krayyzn - 25.06.2014 15:43

webcraft schrieb:
Wo zum Teufel bekommt man solche Idiotenaufgaben als Klausur...(das würde mich jetzt ernsthaft mal interessieren)? Und wenn es eben eine Klausur ist, musst du es schon alleine lösen. Du bekommst ja schließlich die Note und zum anderen hast du bestimmt bestätigt, dass alle Lösungen von deinen Arbeiten eigenständig erarbeitet wurden, was dann ja nicht der Fall wäre.


Vielen Dank für deine Hilfe! Wie gesagt, ist eine "Probeklausur" - Gymnasium in Hessen =D


RE: Java Syntaxfehler - tkausl - 25.06.2014 15:48

Finde exakt 9 Syntaxfehler, sicher dass dort 10 drin sein sollen?

Code:
class SiebDesEratosthenes {

    public static main(String[] args) {                                                    //VOID

        int[] zahlenfeld = int[100];                                                    //new int[100]

        // Feldelementen Werte zuweisen
        for (int i = 0; m<zahlenfeld.length; i++)                                        //m -> i
            zahlenfeld[i] = i+1;

        // Ausgabe Feldelemente in 10er Blöcken
        for (int j = 0; j < 10;){
            for (int k = 0 ; k < 9; k++){
                System.out.print(zahlenfeld[j*10+k]);
                System.out.print(", ");
            }
            System.out.println(zahlenfeld[j*10+9]);
                                                                                        // }

            // Bestimmung der Primzahlen mit dem Sieb des Eratosthenes
            zahlenfeld[0] = 0;
            for (int i = 2; i < 51; i++){
                for (int k = 2; k < (zahlenfeld.length/i+1); k++){
                    zahlenfeld[i*k-1] = 0                                                // ;
                }
            }

            / Ausgabe der Primzahlen                                                    // //
            System.out.println();
            System.out.println( Die Primzahlen zwischen 1 und 100: );                    // "
            for (int j = 0; j < 10; j++){
                for (int k = 0 , k < 9; k++){                                            // , -> ;
                    if (zahlenfeld[j*10+k] != 0){
                        System.out.print(zahlenfeld[j*10+k]);
                        System.out.print(", ");
                    }
                }
                System.out.println;                                                        // ()
        }

    }

}


E: Sieht hier etwas komisch aus, kopier es dir in einen Editor, zieh ihn breit genug, dann sind die Kommentare auch in der richtigen Zeile.


RE: Java Syntaxfehler - krayyzn - 25.06.2014 15:51

tkausl schrieb:
Finde exakt 9 Syntaxfehler, sicher dass dort 10 drin sein sollen?

Code:
class SiebDesEratosthenes {

    public static main(String[] args) {                                                    //VOID

        int[] zahlenfeld = int[100];                                                    //new int[100]

        // Feldelementen Werte zuweisen
        for (int i = 0; m<zahlenfeld.length; i++)                                        //m -> i
            zahlenfeld[i] = i+1;

        // Ausgabe Feldelemente in 10er Blöcken
        for (int j = 0; j < 10;){
            for (int k = 0 ; k < 9; k++){
                System.out.print(zahlenfeld[j*10+k]);
                System.out.print(", ");
            }
            System.out.println(zahlenfeld[j*10+9]);
                                                                                        // }

            // Bestimmung der Primzahlen mit dem Sieb des Eratosthenes
            zahlenfeld[0] = 0;
            for (int i = 2; i < 51; i++){
                for (int k = 2; k < (zahlenfeld.length/i+1); k++){
                    zahlenfeld[i*k-1] = 0                                                // ;
                }
            }

            / Ausgabe der Primzahlen                                                    // //
            System.out.println();
            System.out.println( Die Primzahlen zwischen 1 und 100: );                    // "
            for (int j = 0; j < 10; j++){
                for (int k = 0 , k < 9; k++){                                            // , -> ;
                    if (zahlenfeld[j*10+k] != 0){
                        System.out.print(zahlenfeld[j*10+k]);
                        System.out.print(", ");
                    }
                }
                System.out.println;                                                        // ()
        }

    }

}


E: Sieht hier etwas komisch aus, kopier es dir in einen Editor, zieh ihn breit genug, dann sind die Kommentare auch in der richtigen Zeile.


ja, ganz sicher =D


RE: Java Syntaxfehler - tkausl - 25.06.2014 15:55

krayyzn schrieb:
ja, ganz sicher =D

Ich bin da anderer Meinung. Kompiliert und startet ohne Beanstandung, nachdem diese 9 Fehler korrigiert sind.


RE: Java Syntaxfehler - krayyzn - 25.06.2014 15:59

tkausl schrieb:

krayyzn schrieb:
ja, ganz sicher =D

Ich bin da anderer Meinung. Kompiliert und startet ohne Beanstandung, nachdem diese 9 Fehler korrigiert sind.


Dann ist die Aufgabenstellung wohl falsch, sry.


RE: Java Syntaxfehler - GGSeSports - 25.06.2014 16:52

tkausl schrieb:
Ich bin da anderer Meinung. Kompiliert und startet ohne Beanstandung, nachdem diese 9 Fehler korrigiert sind.


Liegt wohl daran, dass dies hier eher ein Logik Fehler ist:

Code:
for (int j = 0; j < 10;){