Java/Standardeingabe

Neue Frage »

Auf diesen Beitrag antworten »
Carlos Valederrama Java/Standardeingabe

Servus,

Aufgabenstellung und Quellcode:

Zitat:
Andern Sie das Programm so ab, dass die Variable zahl von der Standardeingabe eingelesenwird. Die Eingabe soll nur dann akzeptiert und weiterverarbeitet werden, wenn siemindestens 0 und höchstens 100 beträgt.


Zitat:
public class Zahlenreihen{
public static void main (String[] args) {
double zahl = 2.0;
int stufe = 1;
double ergebnis = 0.0;

System.out.println("Stufe | Ergebnis"); System.out.println("----------------");

while (stufe <= 10) {
ergebnis = zahl * stufe;
System.out.println(stufe + "|" + ergebnis);
stufe = stufe + 1;
}
}
}
 
Auf diesen Beitrag antworten »
Carlos Valederrama

Hab das Programm mittlerweile so abgeändert: (Zur Erklärung: "Urc" ist eine Klasse im Rahmen der IOulm-Bibliothek)


Zitat:

import IOulm.*;

public class Zahlenreihen{
public static void main (String[] args) {
double zahl = 2.0;
int stufe = 1;
double ergebnis = 0.0;

if (Urc.readDouble()) {
zahl = Urc.getDouble();
} else {
System.out.println("Konnte nicht einlesen.");
System.exit(1);
}

if (zahl < 0) {
System.err.println("Zahl muss zwischen 0 und 100 liegen");
System.exit(2);
}

if (zahl > 100) {
System.err.println("Zahl muss zwischen 0 und 100 liegen");
System.exit(3);
}

System.out.println("Stufe | Ergebnis");
System.out.println("----------------");


while
(stufe <= 10){
ergebnis = zahl * stufe;
System.out.println(stufe + "|" + ergebnis);
stufe = stufe + 1;
}
}
}


Es funktioniert ohne Fehlermeldung und für die Eingabe 7 gibt es z.B. das hier aus:
Zitat:

Stufe | Ergebnis
----------------
1|7.0
2|14.0
3|21.0
4|28.0
5|35.0
6|42.0
7|49.0
8|56.0
9|63.0
10|70.0


Aus irgendeinem Grund hab ich nur das Gefühl, es ist noch nicht ganz richtig, wegen double zahl=2.0
Auf diesen Beitrag antworten »
Karlito

Hallo,

du überschreibst doch die Variable. Das sollte also OK sein.

Was passiert, wenn keine Zahl eingegeben wird? Wird das von der Funktion Urc.getDouble() abgefangen? Sonst müsstest du dich evtl noch darum kümmern.

VG,

Karlito
Auf diesen Beitrag antworten »
Carlos Valederrama

Hat geklappt danke.
 
 
Neue Frage »
Antworten »


Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »