Mathematische Reihe in Python?

4 Antworten

Ich rate davon ab, diese Formel zu implementieren. Der Sinn erschließt sich mir nicht wirklich und mir scheint, da dürfte auch nicht sonderlich viel bei rauskommen.
Evtl. kann man da auch noch etwas vereinfachen.

Aber wenn doch, probier es mit etwas in der Art:

Du baust dir eigene rationale Zahlen, mit Zähler und Nenner.
Der Nenner ist hier immer eine 10er Potenz. Von 0 abwärts, wenn ich mich nicht irre.

Du baust dir also einen Array, und speicherst an der Stelle der jeweiligen 10er Potenz den Zähler ab. Wenn eine neue Zahl addiert wirst, addierst du den Zähler an der entsprechenden Stelle im Array.

So und dann brauchst du nur deine Schleife zu bauen, die eine ähnliche Zahlenrepräsentation nutzt und entsprechend die Berechnung durchführt.

In Python gibt es im Übrigen auch schon Datentypen, die du verwenden kannst, dnan baruchst du die nicht selber implementieren.

Dann startest du das Programm und wartest die nächsten tausend Jahre, bis es fertig ist. Viel Spaß!

Man könnte vielleicht gmpy2 für so eine Aufgabe verwenden. Bei dieser Library kann man auch die Nachkommazahlen frei wählen

Woher ich das weiß:Hobby – Erfahrener Programmierer

Es gibt dazu ein Big Float Package (wahrscheinlich kann man die Zahl gewünschter Dezimalstellen da frei wählen - ich weiß aber nicht, bis wie hoch maximal):

https://pythonhosted.org/bigfloat/

64 Bit Gleitkommazahlen können nur auf ca. 17 Nachkommastellen genau dargestellt werden. Es gibt Datentypen in Python die diese Limitierung umgehen und mehr Nachkommastellen erlauben, allerdings kannst du auch damit nicht 10^6 Nachkommastellen berechnen.

Daher würde ich 10^6 * C_10 berechnen und, falls nötig, die Zahl im Anschluss formatieren.

Woher ich das weiß:Studium / Ausbildung – Habe einen Bachelor in Informatik

Hanibal545  06.07.2022, 15:50

Man kann aber durch ein paar libraries oder durch eine String(Liste) auf 10^6 Nachkommastellen kommen