Bestimmte Stelle von Pi in Python bekommen?

4 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Erstelle einfach einen String und copy-paste darin die ersten zehntausend Stellen (oder wieviele Stelle du eben maximal brauchst).

Hier findest du zum Beispiel die ersten tausend:

https://mathshistory.st-andrews.ac.uk/HistTopics/1000_places/

n = 197
pi = "3141592…"
print( pi[n] )
Woher ich das weiß:Hobby – Erfahrener Programmierer und Informatik-Student

Keine schlechte Idee, gibts sonst echt keine bessere? xD Aber Danke!

0
@Randomkatze

Ich denke besser geht‘s nicht nein.

Man könnte die Zahl aus einer Textdatei einlesen - Das ist zwar langsamer, dann laggt aber deine IDE nicht rum, was bei 1 Mio Stellen vielleicht passieren könnte.

Aber als String/Liste brauchst du die einzelnen Ziffern ja sowieso, float/double/int/long etc. kommt mit sovielen Zeichen nicht klar.
Und selbst Berechnen wäre ganz lost.

2
@MrAmazing2

Könnte es sein das ein String ein limit hat? xD Bei über 999999 kommt ein fehler —> string index out of range

Edit: Oh vergiss was ich gesagt hab der String war garnicht länger als 1000000 lol

1

Am einfachsten wird es wohl sein Pi mit z.B. 1mio Nachkommastellen aus einer Textdateien einzulesen.

Woher ich das weiß:Studium / Ausbildung – Informatikstudent

Bist der zweite der das schreibt, irgendwie doof das es nicht besser geht aber danke!

1
@Randomkatze

Du könntest natürlich Pi berechnen, aber das Double Format kann so viele Nachkommastellen gar nicht speichern. Und mit anderen Formaten geht das dann vielleicht, aber das wäre viel zu aufwendig für sowas.

2

Ich hätte es vielleicht so implementiert

https://pastebin.com/iCQ2G92f

So würde man pi berrechen und die Stelle rausfiltern

Woher ich das weiß:Hobby – Erfahrener Programmierer

ist halt ein eigener Algorithmus und keine library

1

Was möchtest Du wissen?