Zahleninformation

D.gigi

Aktives Mitglied
Hallo zusammen ich habe eine Aufgabe die lautet:
Vervollständigen Sie die untenstehende Java-Klasse „ZahlenInformation“, das für eine gegebene int-Zahl folgende Information auf den Bildschirm ausgibt:

  1. Ist die Zahl positiv, negativ oder gleich 0?
  2. Ist die Zahl gerade oder ungerade?
  3. Ist die Zahl durch 3 teilbar?
Die Ausgabe des Programms soll z.B. für die Zahl 10 folgendermaßen aussehen:

Die Zahl 10 ist positiv, gerade und nicht durch 3 teilbar.

Achten Sie hierbei auf jedes Zeichen (Leerzeichen, Satzzeichen... ).

Beachten Sie, dass Sie in diesem Programm den Wert für die Variable "zahl" nicht selbst setzen müssen.
Dieser wird an das Programm übergeben. Die Variable kann nach Übergabe an das Programm innerhalb des Programms verwendet werden (sie muss nicht neu deklariert werden).

ich hab es nun so versucht und habe es auch zur hälfte richtig nur die andere hälfte ist falsch woran liegt es ich hab es so bearbeitet:

public class Zahleninformation
{
public static void main(String[] args, int zahl)
{
System.out.print("Die Zahl " + zahl + " ist");

if(zahl>0)
System.out.print(" positiv, gerade und nicht durch 3 teilbar");
else if(zahl<0)
System.out.print(" negativ, gerade und nicht durch 3 teilbar");
else if(zahl>0)
System.out.print(" positiv, gerade und nicht durch 3 teilbar");

System.out.println(".");
}
}

hier ist auch nochmal was erwartet wurde und was, dass Programm erhalten hat ich hoffe ihr könnt mir hier weiter helfen :

TestErwartetErhalten
Zahleninformation.main(null, -10)Die Zahl -10 ist negativ, gerade und nicht durch 3 teilbar.Die Zahl -10 ist negativ, gerade und nicht durch 3 teilbar.richtig
Zahleninformation.main(null, 4)Die Zahl 4 ist positiv, gerade und nicht durch 3 teilbar.Die Zahl 4 ist positiv, gerade und nicht durch 3 teilbar.richtig
Zahleninformation.main(null, 23)Die Zahl 23 ist positiv, ungerade und nicht durch 3 teilbar.Die Zahl 23 ist positiv, gerade und nicht durch 3 teilbar.Falsch
Zahleninformation.main(null, -3)Die Zahl -3 ist negativ, ungerade und durch 3 teilbar.Die Zahl -3 ist negativ, gerade und nicht durch 3 teilbar.Falsch
 
M

Mart

Gast
deine if abfragen überprüfen nur auf größer oder kleiner und nicht auf die Teilbarkeit um genau zu sein kannst du dein letztes else if niemals erreichen weil wenn der fall zutreffen würde würde diesen fall dein erstes if schon abdecken


zusätzlich musst du rechnen und abfragen ob die zahl teilbar durch dieses und jenes ist...

um genau zu sein brauchst du den modulo operator dafür bzw kannst verwenden
 
M

Mart

Gast
die erste und zweite "abzweigung" stimmt ja auch nicht beim rechnen die musst du auch verbessern

und du bist nicht in einer schleife sondern in einer if abzweigung
 

Oben