Java: Switch

ellegance

Mitglied
Hallo,
ich habe ein Problem bei dieser Aufgabe.

Erstellen Sie ein Java-Programm mit Hilfe des folgenden Programmgerüst:

import java.io.*;
import java.lang.Integer;

public class Rest
{
public static void main(String args[]) {
int i=Integer.parseInt(args[0]);
int j=Integer.parseInt(args[1]);

. . .

}

}

Das Programm erhält als Kommandozeilenparameter zwei int-Werte. Ein Beispielaufruf könnte wie folgt aussehen:

java Rest 23 44

Vervollständigen Sie den Programmcode durch die Umsetzung der folgenden Bedingungen:

Es soll zunächst der Rest der Division von i durch j berechnet werden (modulo).

Implementieren Sie nun eine switch-Anweisung, die unterscheidet ob die folgenden Bedingungen erfüllt sind:

· der Rest ist null. ("Der Rest ist null")

· der Rest ist eine einstellige Primzahl ("Der Rest ist eine einstellige Primzahl")

· oder Rest ist ungerade (aber keine einstellige Primzahl) ("Der Rest ist ungerade")

· keine der Bedingungen trifft zu. ("Keine der Aussagen trifft zu")

In allen Fällen soll der jeweils angegebene Text mittels System.out.println() ausgegeben werden. Nutzen Sie daher insbesondere die break-Anweisung!!!


Meine Lösung:

import java.io.*;
import java.lang.Integer;

public class Rest
{
public static void main(String args[]) {
int i=Integer.parseInt(args[0]);
int j=Integer.parseInt(args[1]);
int r;
switch (r= i%j) {
case 0: System.out.println("Der Rest ist null"); break;
case 1: System.out.println("Der Rest ist ungerade"); break;
case 2: System.out.println("Der Rest ist eine einstellige Primzahl"); break;
default: if (r%2==1){
if (r<=7)
System.out.println("Der Rest ist eine einstellige Primzahl");
else
System.out.println("Der Rest ist ungerade");
}
else System.out.println("Keine der Aussagen trifft zu"); }
}
}

Mein Problem ist nun dass eclipse ganz oben bei der ersten Zeile ein Fehler sieht.
"The import java.io is never used"
was habe ich denn falsch gemacht? hoffe jmd kann mir da weiter helfen.

LG
 

VfL_Freak

Top Contributor

ellegance

Mitglied
Moin,

ja wenn ich es lösche und dann ausführe kommt diese Meldung:

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
at Rest.main(Rest.java:6)


LG
 

knilch

Bekanntes Mitglied
ja wenn ich es lösche und dann ausführe kommt diese Meldung:

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
at Rest.main(Rest.java:6)
Die Exception hat nichts damit zu tun, dass du den import von java.io gelöscht hast.

Die Exception sagt aus, dass du auf Array-Element zugreiffen wolltest, das nicht existiert. args ist leer. Daher die Exception.

Versuchst du das mit Eclipse? Wenn ja, musst du Eclipse to Argumente mitgeben: Schau mal hier nach...
 
Zuletzt bearbeitet:

Neue Themen


Oben