Registrierung Kalender Mitgliederliste Teammitglieder Suche Häufig gestellte Fragen Zur Startseite

Informatiker Board » Themengebiete » Praktische Informatik » Java Programm » Hallo Gast [Anmelden|Registrieren]
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | An Freund senden | Thema zu Favoriten hinzufügen
Neues Thema erstellen Antwort erstellen
Zum Ende der Seite springen Java Programm
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
InformatikJava12
unregistriert
Java Programm Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Hallo, ich habe folgenden Javacode gegeben:
Ich soll dieses compilieren und die Fehlermeldungen erklären und warum das auftrat:
Also als erstes fehlt das Semikolon bei




code:
1:
2:
3:
4:
5:
6:
7:
public class Test {
 public static void main(String[] args) { 
int zahl1 = 2;
 int zahl2 = 21; 
int antwort = zahl2 * zahl2
System.out.println("Antwort : " + antwort; } 
}


Also als erstes fehlt das Semikolon bei int antwort = zahl2 * zahl2. Die Begründung für den Fehler ist, dass Java auf eineVariablenzuweisung wartet.
Der 2. Fehler ist das Fehlen der runden Klammer am Ende von antwort. Die Begründung für den Fehler ist, dass Java eine Ausgabe erwartet zwischen 2 runden Klammern
Kann man insgesamt diese Fehler so begründen oder ist das zu schwammig?
15.10.2017 10:03
Karlito Karlito ist männlich
Kaiser


Dabei seit: 11.04.2011
Beiträge: 1.461

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Deine Antwort ist ist nicht vollständig. Hast Du mal versucht das Programm zu kompilieren und auszuführen?

Gruß,

Karlito
15.10.2017 17:45 Karlito ist offline E-Mail an Karlito senden Beiträge von Karlito suchen Nehmen Sie Karlito in Ihre Freundesliste auf
InformatikJava12
unregistriert
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Ja wenn ich die 2 Fehler verbessere, geht das
Ich soll als 2.teil einen Blackbox test machen. Dieser gibt einen Wert von -441 aus. Warum?
Was sehe ich in meinem Code nicht Zunge raus
15.10.2017 19:44
Karlito Karlito ist männlich
Kaiser


Dabei seit: 11.04.2011
Beiträge: 1.461

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Schau dir Zeile 5 mal genau an und poste auch mal deinen geänderten Quelltext.

Gruß,

Karlito
15.10.2017 19:48 Karlito ist offline E-Mail an Karlito senden Beiträge von Karlito suchen Nehmen Sie Karlito in Ihre Freundesliste auf
InformatikJava12
unregistriert
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

aso großes Grinsen großes Grinsen
Zahl 1 wird nicht verwendet:
Neuer code:
code:
1:
2:
3:
4:
5:
6:
7:
8:
public class Test {
 public static void main(String[] args) {
 int zahl1 = 2;
 int zahl2 = 21;
 int antwort = zahl1 * zahl2;
 System.out.println("Antwort : " + antwort);
 } 
}
15.10.2017 19:52
InformatikJava12
unregistriert
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Deshalb kommt bei dem BlackBox Test 441 raussmile

Wie kann ich das ordentlich begründen, was Java erwartet bei Aufgabe 1. Also das fehlende Semikolon und die runde Klammer?
15.10.2017 19:54
InformatikJava12
unregistriert
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Kann mir jmd bei der Beantwortung helfen?
16.10.2017 09:45
Karlito Karlito ist männlich
Kaiser


Dabei seit: 11.04.2011
Beiträge: 1.461

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Zeile 5: Java erwartet ein Semikolon als Abschluss eines Statements
Zeile 6: Java erwartet eine schließende Klammer am Ende der Argumente, die an eine Funktion übergeben werden vor dem Semikolon

So würde ich es machen. Je nach dem, wie pingelig man sein will, könnte man noch weiter in die Tiefe gehen.

Gruß,

Karlito
16.10.2017 10:00 Karlito ist offline E-Mail an Karlito senden Beiträge von Karlito suchen Nehmen Sie Karlito in Ihre Freundesliste auf
InformatikJava12
unregistriert
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Vielen Dank. Daumen hoch smile
Trotzdem, wenn du es schon ansprichst, wie würdest du es formulieren, wenn man tiefer in die Materie einsteigt?
16.10.2017 10:17
Karlito Karlito ist männlich
Kaiser


Dabei seit: 11.04.2011
Beiträge: 1.461

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Man müsste schauen, welche Sprachmittel wirklich erwartet werden. Schaut man sich die Grammatik von Java an (eine Formale beschreibung der Sprache), dann kann man noch genauer darauf eingehen, was erwartet wird. Bei Zeile 5 z.B. könnte außer einem Semikolon noch eine Operation wie z.B. +-*/ erwartet werden.
In Zeile 6 vor der Schließenden Klammer könnte auch noch eine Liste mit weiteren Argumenten folgen.

Dafür gibt es sicher auch noch passenden Teile der Grammatik die ich nicht parat habe, da ich mir die Spezifikation von Java nicht angeschaut habe.

Schau mal hier:
https://docs.oracle.com/javase/specs/

Gruß,

Karlito
16.10.2017 10:30 Karlito ist offline E-Mail an Karlito senden Beiträge von Karlito suchen Nehmen Sie Karlito in Ihre Freundesliste auf
InformatikJava12
unregistriert
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Vielen Danke Daumen hoch

Nochmal zum 2. Teil
Wenn ich vom urprünglichen nur Syntax verbesserten Code aussgehe:
code:
1:
2:
3:
4:
5:
6:
public class Test { 
public static void main(String[] args) { 
int zahl1 = 2;
 int zahl2 = 21;
 int antwort = zahl2 * zahl2;
 System.out.println("Antwort : " + antwort); } }


Die Aufgabe lautet dazu:
Es gibt einen sogenannten Blackbox-Test, d.h. das Programm wird ausgeführt und die tatsächliche Ausgabe mit der erwarteten Ausgabe verglichen. Führen Sie den Test aus.
Begründen Sie, warum der Test fehl schlägt.
Meine Begründung:
Der Test schlägt fehl, da laut dem Programmcode zahl 2*zahl2=441 gerechnet wird. Es wird jedoch erwartet, dass man das Produkt von zahl1 * zahl2=42 erhält. D.h im Programmcode wurde nur die Variablen Zahl 1 und 2 initialisiert, jedoch mit zahl1 weiter nichts gemacht.
Ist das so ok?
16.10.2017 10:43
Karlito Karlito ist männlich
Kaiser


Dabei seit: 11.04.2011
Beiträge: 1.461

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Aus meiner Sicht ja.

Gruß,

Karlito
16.10.2017 14:08 Karlito ist offline E-Mail an Karlito senden Beiträge von Karlito suchen Nehmen Sie Karlito in Ihre Freundesliste auf
InformatikJava12
unregistriert
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Danke für deine Hilfe smile Daumen hoch Wink
18.10.2017 07:46
Baumstruktur | Brettstruktur
Gehe zu:
Neues Thema erstellen Antwort erstellen
Informatiker Board » Themengebiete » Praktische Informatik » Java Programm