primzahlen

misterazz

Neues Mitglied
Hey, bin gerade dabei das Buch "Java ist auch eine Insel" zu lesen um mir selbst ein bisschen Java beizubringen. Wie man im folgenden Programm sieht, bin ich ein totaler Anfänger und wollte einmal etwas Praktisches ausprobieren. Im folgenden sieht man ein Programm, das von 1-20 die Primzahlen ausgeben soll, doch es funktioniert natürlich nicht :D Ist mein Ansatz total falsch?




public class Primzahlen2 {


public static void main(String[] args) {

int cntteiler = 1;
int boarder = 20;
for(int cntprim =1; cntprim <= boarder; cntprim++)
{
while(cntprim % cntteiler !=0)
{
cntteiler++;
}
if(cntprim % cntteiler == 0)
System.out.println(cntprim + "ist eine Primzahl");

}

}
}
 

firewarrior

Aktives Mitglied
Hi, willkommen im Forum. Bitte benutze doch JAVA Tags (In roter Schrift beim Verfassen eines neuen Posts) und gib eine Fehler- oder Verhaltensbeschreibung mit. "Funktioniert nicht" ist nicht hilfreich.
 

Landei

Top Contributor
Teile die Aufgabe in sinnvolle Stücke. Erst einmal brauchst du eine Methode, die eine Zahl auf Teiler testen kann, dann kannst du diese Methode für die Zahlen von 1 bis 20 aufrufen.

Wie sieht nun die Methode aus? Jede Zahl (auch eine Primzahl) ist durch 1 und sich selbst teilbar. Diese beiden (sogenannten "unechten") Teiler interessieren uns nicht, wir wollen Teiler finden, die dazwischen liegen. Also lässt du eine Schleife von zwei bis (unsereZahl-1) laufen (das lässt sich noch optimieren, aber erst einmal muss es funktionieren) und testest, ob die Schleifenvariable unsere Zahl teilt. Ob a durch b teilbar ist, stellt man mit [c]a % b == 0[/c] fest.

Eine Feinheit ist, dass 0 und 1 nicht zu den Primzahlen gezählt werden, obwohl sie keine echten Teiler besitzen.
 

ChrisKu

Bekanntes Mitglied
Ist mein Ansatz total falsch?

Nein, total falsch ist der nicht. Aber schau Dir mal genau an, was Dein Code macht. In der while() Schleife suchst Du den ersten ganzzahligen Teiler Deiner Zahl. Soweit richtig, nur solltest Du, wie SleepProgger schon sagte, nicht mit der "1" anfange zu prüfen, den das geht immer (oben im Code cnteiler = 2 setzen). In der "if" Prüfung willst Du dann prüfen, ob der gefundene Teiler gleich Deiner zur prüfenden Zahl ist, dann solltest Du es auch so schreiben:

Code:
if (cntprim == cntteiler) {
  //
}

Und vor der nächsten Prüfung muss Du cntteiler natürlich wieder auf den Ausgangswert zurücksetzen

Code:
cntteiler = 2;

Dann klappt es auch.

Willkommen im Forum und viel Spaß beim lernen.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
iAmFaiinez Primzahlen Tester ohne Array Java Basics - Anfänger-Themen 4
sserio Wieso werden nicht alle Primzahlen bis 1000 in meine Liste gepackt ? Java Basics - Anfänger-Themen 8
B Primzahlen bis 100 addieren Java Basics - Anfänger-Themen 16
H Primzahlen finden - Zeit optimieren Java Basics - Anfänger-Themen 34
S Primzahlen in Array ausgeben Java Basics - Anfänger-Themen 14
M Array auf Primzahlen prüfen Java Basics - Anfänger-Themen 7
D Primzahlen Rechner nach Eratostenes von Kyrene Algorithmus Java Basics - Anfänger-Themen 2
fendix Compiler-Fehler Algorithmus zur Bestimmung von Primzahlen Java Basics - Anfänger-Themen 7
P Methode die ausgibt wie viele Primzahlen es zwischen 2 und n gibt Java Basics - Anfänger-Themen 10
G Primzahlen von Rekursiv nach Iterativ Java Basics - Anfänger-Themen 6
M Rekursives Programm zum Anzeigen von Primzahlen Java Basics - Anfänger-Themen 3
P Primzahl mit Angabe der höchsten Primzahl und Angabe der Anzahl von Primzahlen bis 100 Java Basics - Anfänger-Themen 8
Java The Hutt Primzahlen - die ersten 100 Java Basics - Anfänger-Themen 17
N Erste Schritte Primzahlen-ArrayIndexOutOfBounds Java Basics - Anfänger-Themen 23
R Primzahlen Zähler Programm / Benachbarte Primzahlen Java Basics - Anfänger-Themen 30
D Klassen Primzahlen überprüfen Java Basics - Anfänger-Themen 3
I Primzahlen Java Basics - Anfänger-Themen 17
Z Rekursion Primzahlen Java Basics - Anfänger-Themen 1
M Erste Schritte primzahlen ermitteln, nur zahlen als eingabe erlauben Java Basics - Anfänger-Themen 34
S Primzahlen berechnen funktioniert nicht richtig Java Basics - Anfänger-Themen 1
R primzahlen im array Java Basics - Anfänger-Themen 33
M Primzahlen, nur jede 2te ausgeben Java Basics - Anfänger-Themen 11
T Primzahlen Fehler Java Basics - Anfänger-Themen 4
K Primzahlen Java Basics - Anfänger-Themen 6
L Primzahlen im Array ausgeben Java Basics - Anfänger-Themen 3
P Primzahlen Java Basics - Anfänger-Themen 3
A Methoden Primzahlen erstellen von 1 bis 100-Codeprobleme Java Basics - Anfänger-Themen 2
H Variablenverfolgung - Primzahlen Java Basics - Anfänger-Themen 7
G Primzahlen Java Basics - Anfänger-Themen 6
D Primzahlen und Rekursive Liste Java Basics - Anfänger-Themen 29
S Primzahlen bis 1000 ausgeben Java Basics - Anfänger-Themen 3
K Methoden Primzahlen Java Basics - Anfänger-Themen 33
S Input/Output Primzahlen Datenbank Java Basics - Anfänger-Themen 11
F Primzahlen in Zahlenblöcken ausgeben Java Basics - Anfänger-Themen 9
M Primzahlen - es werden alle Nicht-Primzahlen ausgegeben Java Basics - Anfänger-Themen 5
S Programm zu Ermittlung von Primzahlen Java Basics - Anfänger-Themen 14
E Programm zum Primzahlen ausgeben-Fehler Java Basics - Anfänger-Themen 12
X Primzahlen Java Basics - Anfänger-Themen 7
S Primzahlen Java Basics - Anfänger-Themen 12
B Programmierobjekt - Primzahlen Java Basics - Anfänger-Themen 2
D Primzahlen ausgeben. Wo liegt der Fehler? Java Basics - Anfänger-Themen 4
N Primzahlen Java Basics - Anfänger-Themen 5
I Primzahlen check, String prüfen lassen. Java Basics - Anfänger-Themen 6
A OOP Programm zum bestimmen von Primzahlen, OutofBoundsException Java Basics - Anfänger-Themen 10
apple987123 Primzahlen Java Basics - Anfänger-Themen 12
A Primzahlen: ein paar offene Fragen Java Basics - Anfänger-Themen 2
T Primzahlen Java Basics - Anfänger-Themen 6
G Primzahlen Java Basics - Anfänger-Themen 18
B Primzahlen berechnen - Wieso unterschiedliche Java Basics - Anfänger-Themen 3
B Primzahlen Algorithmus - wo ist der Fehler ? Java Basics - Anfänger-Themen 2
E Primzahlen Java Basics - Anfänger-Themen 5
B Primzahlen mit Array errechnen! Java Basics - Anfänger-Themen 13
H Miller Rabin Test Primzahlen werden teilweise nicht gefunden Java Basics - Anfänger-Themen 5
M Wer kann mir bei Primzahlen helfen ? Java Basics - Anfänger-Themen 4
G Frage zur Primzahlen berechnung Java Basics - Anfänger-Themen 11
kulturfenster Primzahlen berechnen Java Basics - Anfänger-Themen 11
D Primzahlen Java Basics - Anfänger-Themen 4
N Zerlegung in Primzahlen Java Basics - Anfänger-Themen 7
F Programm Primzahlen Java Basics - Anfänger-Themen 5
J Primzahlen errechnen.ArrayLists abgleichen Java Basics - Anfänger-Themen 2
M Primzahlen Java Basics - Anfänger-Themen 6
C Primzahlen Java Basics - Anfänger-Themen 7
C Primzahlen Java Basics - Anfänger-Themen 2
S Primzahlen Java Basics - Anfänger-Themen 49

Ähnliche Java Themen

Neue Themen


Oben