Finden der n-ten Primzahl mit Python

Wenn ich diesen Code ausführe, erhalte ich, auch wenn ich nur bis zur 10. Primzahl zähle (anstatt 1000), eine Ausgabe mit verzerrten / verkürzten Zahlen - alle "Nicht-Prim" -Titel für meine Variable is_composite, meine Test_Nummer gibt mir Primzahlen und zusammengesetzte Zahlen und mein prime_count ist aus

Einige der Antworten, die Entwickler gemeinsam nutzen, sowie den Mathematik-Import haben wir noch nicht behandelt. Ich versuche nicht, die effizienteste Antwort zu finden. Ich versuche nur, funktionierenden Python-Code zu schreiben, um die Grundlagen des Loopings zu verstehen.

  # test a prime by diving number by previous sequence of number(s) (% == 0).  Do this by
  # counting up from 1 all the way to 1000.

test_num = 2 #these are the numbers that are being tested for primality
is_composite = 'not prime' # will be counted by prime_count
prime_count = 0 #count the number of primes


while (prime_count<10): #counts number primes and make sures that loop stops after the 1000th prime (here: I am just running it to the tenth for quick testing)


 test_num = test_num + 1   # starts with two, tested for primality and counted if so
 x = test_num - 1  #denominator for prime equation

 while (x>2):   
  if test_num%(x) == 0:
   is_composite = 'not prime'
  else: 
   prime_count = prime_count + 1 
  x = x - 1 


  print is_composite
  print test_num
  print prime_count 

Antworten auf die Frage(8)

Ihre Antwort auf die Frage