Primzahlen finden mit Phyton

Neue Frage »

Auf diesen Beitrag antworten »
Connor Primzahlen finden mit Phyton

Meine Frage:
Hi, ich bin totaler Anfänger und finde einfach meinen Fehler im Code nicht.
Ich will einen Code schreiben, in dem man eine Zahl eingibt, und das Programm einen dann sagt, ob es eine Primzahl ist oder nicht.
Mein Code ist folgender:

x = int(input("Geben Sie eine Zahl ein")
for i in range (2, x-1):
a = (x % i)
b = 0
if a == 0:
b = b + 1
if b >= 1:
print("Es handelt sich um eine Primzahl")
else:
print("Es handelt sich um keine Primzahl")

Ich hoffe es ist klar, wie mein Code gedacht war.
Egal welche Zahl ich hier nun eingebe, das Programm sagt mir es wäre eine Primzahl :/

Hat jemand eine Idee, woran es liegen könnte?
Auch sonst bin ich für alle Verbesserungsvorschläge offen.

Meine Ideen:
.
 
Auf diesen Beitrag antworten »
eulerscheZahl RE: Primzahlen finden mit Phyton

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
x = int(input("Geben Sie eine Zahl ein")) # schließende Klammer vergessen
b = 0 # Initialisierung außerhalb der Schleife
for i in range (2, x-1): # theoretisch musst du nur bis sqrt(x) gehen, das spart Rechenzeit
	a = (x % i)
	if a == 0:
		b = b + 1 # hier kannst du schon abbrechen. Es ist klar, dass es keine Primzahl ist
if b == 0: # Bedingung war genau falsch, du hast if und else vertauscht
	print("Es handelt sich um eine Primzahl")
else:
	print("Es handelt sich um keine Primzahl")
Auf diesen Beitrag antworten »
Connor RE: Primzahlen finden mit Phyton

Ah nice, so klappt das.
Vielen Dank, werde die Fehler nächstes mal vermeiden smile
 
Neue Frage »
Antworten »


Verwandte Themen

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