Produkt d. Ziffern einer Zahl..?!

FourOhFour

Aktives Mitglied
Hallo,
ich beiße mich momentan an einer Aufgabe fest, zu welcher ich leider auch noch nichts hier im Forum finden konnte! Ich bin totaler Anfäger, also wird die Aufgabe für viele wahrscheinlich total trivial sein.

Ich würde gerne alle Zahlen ausgeben (bis Zahl >n<), deren Ziffern ein ungerades Produkt haben!

Irgendwie komme ich jedoch nicht aus der while-Schleife raus wie es scheint und ich kann es mir einfach nicht erklären...
Code:
public class ZiffernProdukt {
    public static void main(String[] args){
      
        int eingabe=Integer.parseInt(args[0]);
        int produkt=1;
        int hilfe;
      
        for(int hoch=1; hoch<=eingabe; hoch++){
            while(hoch!=0){
                //System.out.println("was ist hoch? "+hoch); test zeigt, dass ich in der schleife gefangen bin...
                hilfe=hoch%10;
                produkt*=hilfe;
                hoch/=10;
            }
            if(produkt%2!=0){
                System.out.print(hoch);
            }
            else
                System.out.print("");
        }
    }
}

Mfg.
 

FourOhFour

Aktives Mitglied
Ah, ich sehe was du meinst!
Okay, nun habe ich einen "hochClone" erstellt, welchem ich den Wert von hoch zuweise.
Nun habe ich jedoch noch einen Fehler und eine Frage.
Hier erstmal der Code:
Code:
public class ZiffernProdukt {
    public static void main(String[] args){
      
        int eingabe=Integer.parseInt(args[0]);
        int produkt=1;
        int hilfe;
        int hochClone;
      
        for(int hoch=1; hoch<=eingabe; hoch++){
            hochClone=hoch;
            while(hochClone!=0){
                //System.out.println("was ist hoch? "+hoch); test zeigt, dass ich in der schleife gefangen bin...
                hilfe=hochClone%10;
                produkt*=hilfe;
                hochClone/=10;
            }
            if(produkt%2!=0){
                System.out.print(hoch+" ");
            }
            hoch++;
        }
    }
}
Für die "eingabe" habe ich einfach mal 35 eingegeben.
Jedoch ist meine Ausgabe nur:
1 3 5 7 9 11 13 15 17 19
Also fehlen noch einige Zahlen!

Und eine weitere Frage: Warum muss ich am Ende das hoch "manuell" inkrementieren? Sollte das nicht die for-Schleife alleine übernehmen?

Mfg.
 

Meniskusschaden

Top Contributor
Also fehlen noch einige Zahlen!
Du solltest dir mal ansehen, was mit produkt passiert, wenn die nächste Zahl geprüft wird.
Warum muss ich am Ende das hoch "manuell" inkrementieren?
Musst du nicht, aber dadurch wird dein Programm schneller.
Sollte das nicht die for-Schleife alleine übernehmen?
Tut sie auch. So wird eben zweimal inkrementiert, was auch in Ordnung ist, weil gerade Zahlen ja ohnehin kein ungerades Ergebnis haben können. So werden sie gar nicht erst geprüft.
 

FourOhFour

Aktives Mitglied
Aaah... Da sieht man warum ich blutiger Anfänger bin. Vielen Dank für die Hilfe!
(Für spätere Anfänger, die die Antwort interessiert:) )
Code:
public class ZiffernProdukt {
    public static void main(String[] args){
      
        int eingabe=Integer.parseInt(args[0]);
        int produkt=1;
        int hilfe;
        int hochClone;
      
      
        for(int hoch=1; hoch<=eingabe; hoch++){
            hochClone=hoch;
            produkt=1;
            while(hochClone!=0){
                //System.out.println("was ist hoch? "+hoch); test zeigt, dass ich in der schleife gefangen bin...
                hilfe=hochClone%10;
                produkt*=hilfe;
                hochClone/=10;
            }
            if(produkt%2!=0){
                System.out.print(hoch+" ");
            }
            hoch++;
        }
    }
}
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
B Produkt eines double - streams Java Basics - Anfänger-Themen 3
D Größtes Palindrom Produkt aus zwei dreistelligen Zahlen Java Basics - Anfänger-Themen 60
sserio Größtes Palindrom-Produkt Programm funktioniert nur halb Java Basics - Anfänger-Themen 23
Dorfschmied Kartesisches Produkt von zwei Liste mit Hashmaps<String,String> erstellen Java Basics - Anfänger-Themen 4
T Produkt eines mehrdimensionalen Arrays Java Basics - Anfänger-Themen 5
Ocram Methoden Produkt eines Intervalls Java Basics - Anfänger-Themen 11
F Größtes Produkt in einem String Java Basics - Anfänger-Themen 4
H pi näherungsweise berechnen - Wallis Produkt Java Basics - Anfänger-Themen 9
R Produkt berechnen Java Basics - Anfänger-Themen 23
E Algorithmus für kart. Produkt: als int [] Feld repräsentiert Java Basics - Anfänger-Themen 10
T Produkt 1-10 mit Zwischenschritten Java Basics - Anfänger-Themen 7
N Matrix Matrix Produkt Java Basics - Anfänger-Themen 7
D The constructor Bestellung(Bestellung.Produkt, Bestellung.Kunde) is undefined Java Basics - Anfänger-Themen 15
B Produkt ohne Multiplizieren? Java Basics - Anfänger-Themen 7
N Produkt Java Basics - Anfänger-Themen 2
U Summe produkt von einem array Java Basics - Anfänger-Themen 9
T Geht so was? public void verkaufe (<X implements Produkt& Java Basics - Anfänger-Themen 8
S mehrere Erweiterungen fürs Produkt Java Basics - Anfänger-Themen 6
J tast-Eingabe_(Vektor)Skalar-produkt Java Basics - Anfänger-Themen 19
ixChronos Letzten 4 Ziffern einer großen Zahl ausgeben Java Basics - Anfänger-Themen 3
Shadowrunner Variablen Gibt es eine Möglichkeit die Ziffern/Stellen einer Zahl fest zu legen? Java Basics - Anfänger-Themen 3
B Alle Zahlen finden, die 3 bestimmte Ziffern enthalten? Java Basics - Anfänger-Themen 9
obiwanke Ziffern durch ASCII Character ersetzen Java Basics - Anfänger-Themen 8
M LCD-Ziffern-Hilfe Java Basics - Anfänger-Themen 6
Marlena Bauer LCD Ziffern Java Basics - Anfänger-Themen 13
sashady Zahlen rekursiv zerlegen und Ziffern addieren Java Basics - Anfänger-Themen 38
Khaled-Abo Ziffern unterscheiden mittels einer For-Schleife Java Basics - Anfänger-Themen 6
C alle möglichen Kombinationen zweier Ziffern auf drei / vier / und 'n" Stellen Java Basics - Anfänger-Themen 11
Kingamadeus2000 Anzahl der Ziffern der kürzesten Zahl aus einem zurückliefern Java Basics - Anfänger-Themen 1
G Überprüfen ob alle Ziffern von 1-9 in einem Integer vorhanden sind Java Basics - Anfänger-Themen 6
I Arabische Ziffern in römische Ziffern Java Basics - Anfänger-Themen 1
J Rekursive Methode - Ziffern einer Zahl ausgeben Java Basics - Anfänger-Themen 2
L (Integer) Liste nach aufsteigender Summe der Ziffern sortieren (mit Bedingung) Java Basics - Anfänger-Themen 8
C Datentypen String aus Ziffern erhöhen und als String zurückgeben Java Basics - Anfänger-Themen 16
P vokale konsonanten ziffern satzzeichen aus string lesen. hab kiene ahnung Java Basics - Anfänger-Themen 10
E String bestehend aus Ziffern in Zahl verwandeln Java Basics - Anfänger-Themen 3
W Methoden Ausgabe true wenn nur Ziffern <= 1 vorhanden Java Basics - Anfänger-Themen 9
J Skalierung von Ziffern Java Basics - Anfänger-Themen 10
K wiederholung von ziffern Java Basics - Anfänger-Themen 3
K double-Wert aus einzelnen Ziffern erzeugen Java Basics - Anfänger-Themen 7
T Ziffern anordnen Java Basics - Anfänger-Themen 3
P Arabische (indische) Ziffern Java Basics - Anfänger-Themen 4
M Methode für nur Ziffern?? Java Basics - Anfänger-Themen 3
B Auf die Ziffern einer Zahl zugreifen Java Basics - Anfänger-Themen 6
C Rekursive Methode - Ziffern in Zahl Java Basics - Anfänger-Themen 33
Haave EAN-13-Prüfziffer: Vermeiden von Eingaben mit mehr/weniger als 12 Ziffern Java Basics - Anfänger-Themen 3
G 9-stellige Zahl mit den Ziffern 1-9 Java Basics - Anfänger-Themen 2
D Einzelne Ziffern aus einem String Java Basics - Anfänger-Themen 10
N Wie kann ich Ziffern einer eingegenen Zahl adressieren? Java Basics - Anfänger-Themen 6
B Ziffern erkennung Java Basics - Anfänger-Themen 4
N Römische Zahlen in Arabische Ziffern umgewandeln Java Basics - Anfänger-Themen 18
G Summe der Ziffern einer Zahl EFFIZIENT berechnen? Java Basics - Anfänger-Themen 18
G String auf Ziffern prüfen Java Basics - Anfänger-Themen 30
B Eingabe von Ziffern prüfen Java Basics - Anfänger-Themen 3
W Letzten beiden Ziffern eines BigIntegers bestimmen? Java Basics - Anfänger-Themen 20
G Ziffern tauschen Java Basics - Anfänger-Themen 15
M Römische Ziffern Java Basics - Anfänger-Themen 5
G Wie eine Int Zahl in die einzelnen Ziffern zerlegen? Java Basics - Anfänger-Themen 6
L Anzahl der Eingegebenen Ziffern ausgeben? Java Basics - Anfänger-Themen 7
M nur Ziffern dürfen eingetippt werden Java Basics - Anfänger-Themen 10
F Ziffern einer eingelesenen Zahl ausgeben bzw. bearbeiten Java Basics - Anfänger-Themen 4
S Anzahl der Ziffern einer Zahl Java Basics - Anfänger-Themen 10
M Ausgabe einer ArrayList ensteht nur als Hashcode, nicht als Objekt Java Basics - Anfänger-Themen 16
D 2 ArrayListen gleich sortieren bzw. eine Liste anhand einer anderen Sortieren Java Basics - Anfänger-Themen 6
P Objekt einer Methode eines anderen Objektes übergeben Java Basics - Anfänger-Themen 5
L Variablenwerte aus einer Methode übergeben Java Basics - Anfänger-Themen 2
E Arrays in einer ArrayList miteinander vergleichen Java Basics - Anfänger-Themen 12
Simon16 Java ArrayListe von einer Klasse sortieren Java Basics - Anfänger-Themen 2
D remove Object von einer Liste von Obejcts Java Basics - Anfänger-Themen 3
FunkyPhil94 Wert in einer Lambda Funktion erhöhen Java Basics - Anfänger-Themen 3
T Aufruf der Methode einer Oberklasse, wenn sie in der Unterklasse überschrieben ist. Polymorphie. Java Basics - Anfänger-Themen 2
B Kommunikation mit Seriellen Schnittstellen + Integration einer lib Java Basics - Anfänger-Themen 1
A Daten aus einer HashMap aus einer DB speichern und mit neuen Werten vergleichen Java Basics - Anfänger-Themen 8
P Welches SDK für das erstellen einer ausführbaren Datei? Java Basics - Anfänger-Themen 4
D Länge einer Liste aufrufen. Java Basics - Anfänger-Themen 19
J Klassen Instanzen einer Klasse in einer anderen unabhängigen Klasse nutzen Java Basics - Anfänger-Themen 4
B Alle Strings bis zu einer Maimallänge aufzählen, die Bedingung erfüllen Java Basics - Anfänger-Themen 13
marcelnedza Finde meinen Fehler in einer Methode nicht, Java Karol Java Basics - Anfänger-Themen 15
Soranix Erste Schritte Struktur als Anfänger // Von einer Klasse auf ein Objekt einer anderen Klasse zugreifen. Java Basics - Anfänger-Themen 6
MoxMorris Wie macht man String[] = String[] aus einer anderer Methode? Java Basics - Anfänger-Themen 18
T Fibonacci mit einer Hilfsmethode berechnen Java Basics - Anfänger-Themen 10
S Hilfe zu einer Aufgabe Java Basics - Anfänger-Themen 5
M Radius von einer ellipse bestimmen Java Basics - Anfänger-Themen 7
Say Fehlenden Code finden in einer while-Schleife? Java Basics - Anfänger-Themen 11
M Zufallszahl generieren mit einer linken und rechten Grenze Java Basics - Anfänger-Themen 3
N Was Passiert mit dem Namen einer Variable, wenn man diese einer Liste Hinzufügt Java Basics - Anfänger-Themen 16
_user_q Wie eine Methode/Funktion aus einer Klasse mit Constructor aufrufen? Java Basics - Anfänger-Themen 20
W String einer Textdatei in einzelne Stringobjekte pro Zeile aufteilen Java Basics - Anfänger-Themen 14
W Objekte einer ArrayList in txt-datei schreiben mit Paths? Java Basics - Anfänger-Themen 2
S Best Practice Fragen zu Projektstruktur einer Datenbank-Abfrage-App (MVC) Java Basics - Anfänger-Themen 13
T Variable von Objekten in einer Methode überprüfen Java Basics - Anfänger-Themen 26
nelsonmandela Problem bei Ausgabe einer Switch - Case Funktion Java Basics - Anfänger-Themen 5
S Textausgabe in einer For-Schleife Java Basics - Anfänger-Themen 12
M Spezifischen Wert einer Zeile aus .txt Datei entnehmen Java Basics - Anfänger-Themen 15
B Popups mit Klicksabfangen zumAusfüllen einer .ods Datei Java Basics - Anfänger-Themen 0
M RandomAccessFile int und String gleichzeitig in einer Datei Java Basics - Anfänger-Themen 49
E Suchfunktion in einer Liste Java Basics - Anfänger-Themen 39
T ungeordnete Werte-Paare in einer Liste Java Basics - Anfänger-Themen 7
FireHorses Einen Command erst nach einer Chateingabe aktivieren Java Basics - Anfänger-Themen 1
frager2345 Singleton-Muster Java ->Nur eine Instanz einer Klasse erzeugen können Java Basics - Anfänger-Themen 45

Ähnliche Java Themen

Neue Themen


Oben