Ungerade Zahlen ausgeben lassen zwischen Spannweite zweier eingegeben zahlen

PaRaExO

Mitglied
Guten Tag,
Vorerst möchte ich sagen, dass ich gerade erst mit Java anfange.

Ich möchte über einen Scanner zwei Zahlen eingeben z.B. 5 (nennen wir mal x) und 12 (nennen wir mal x2). Das Programm soll dann alle ungeraden Zahlen ausgeben (in dem Fall: 7, 9 und 11).

Meine Frage ist nun: Wie muss ich jetzt vorgehen um auf mein Ziel zu kommen?

Kann ich etwas basteln, dass er mir alle zahlen, welche zwischen x und x2 nimmt und mit Hilfe so etwas dann anzeigt:

Code:
if (i % 2 == 0) then system.out.println("gerade Zahl " + i);
else system.out.println("ungerade Zahl " + i);
i++;

oder kann ich auf diesem Wege etwas erreichen?
Code:
public class NewClass {

    public static void main(String[] args) {
    double wert;
    double grenzwert = 0.5;
    Scanner sc =new Scanner(System.in);
    System.out.println("Geben Sie zum Testen eine Zahl ein.");
    wert = sc.nextDouble();
    if (wert < grenzwert) System.out.println("Gerade Zahl");
    else
    {
        System.out.println("Ungerade Zahl");

bin gerade extrem überfordert also entschuldigt eventuelle (Denk)Fehler oder Unwissenheit.

Kann mir wer helfen?
 
Also Du hast ja schon eine Logik gezeigt, um zu testen, ob eine Zahl gerade oder ungerade ist.
Diese Logik musst Du so anpassen, dass lediglich bei einer ungeraden Zahl eben die Zahl angezeigt wird.

Dann geht es ja darum, dass Du in einem Zahlenbereich alle ungeraden Zahlen ausgeben möchtest. Fällt Dir eine Syntax ein, mit der du alle Zahlen in einem Bereich bekommst?

Wenn Du dann beides verknüpfst, dann hast Du eine erste Variante, die alle ungeraden Zahlen zwischen zwei Zahlen anzeigt. Das ist noch nicht optimal, aber wäre evtl. ein erster Anfang.

Du kannst Dir aber auch gerne eine andere Logik überlegen. Dazu musst Du nur überlegen, wie Du vorgehen würdest, wenn Du alle ungeraden Zahlen zwischen 5 und 12 auf einen Zettel schreiben sollst.
 
hmm... Schaffe ich dies vielleicht mit Arrays?
Mein Zahlenfeld weise ich meine 5 bis 12 zu, mit dem ich dann alle diese Zahlen durch die Rechnung:
Code:
if (i % 2 == 0) then system.out.println("gerade Zahl " + i);
else system.out.println("ungerade Zahl " + i);
i++;

auf mein gewünschtes Ergebnis komme? Geht das?
 
Wie Joose sagte: Schleifen ist das richtige Stichwort. Arrays brauchst Du (mit der bisherigen Lösungsidee) nicht.
 

Zurück
Oben