Frage von Wissen321741, 87

Welche kostenlose Programmiersprache sollte man benutzen wenn man so hundert Nachkommastellen ausrechnen will?

Und geht das auch in Python 2, und wenn ja wie?

Antwort
von Roderic, 38

Python unterstützt von Hause aus Integerzahlen mit beliebig großer  Stellenanzahl. Du musst nur ein großes L hintendran stellen.

In Python3 ist selbst das nicht mehr nötig. Der Parser erkennt von alleine, wenn BigInt gebraucht wird und aktiviert die entsprechenden Klassen und Methoden.

https://mail.python.org/pipermail/tutor/2015-December/107455.html

https://www.quora.com/How-large-can-Python-handle-big-number

Kommentar von ralphdieter ,

Nur haben Integer in der Regel keine hundert Nachkommastellen :-(

Solange man bei den Grundrechenarten bleibt, reicht wohl Fraction. Aber bei transzendenten Funktionen wird's eng…

Kommentar von TeeTier ,

Du musst nur ein großes L hintendran stellen.

Geht leider nicht:

>>> 12345 ein großes L
File "<stdin>", line 1
12345 ein großes L
^
SyntaxError: invalid syntax

Schade. ><

Kommentar von Wissen321741 ,

Ich will den Computer so hundert Stellen von Pi berechnen lassen....und mit + - × ÷ geht das ja wohl nicht....und bei arctan 1 ×4 geht es ja auch nur auf 10 (?) Nachkommastellen

Kommentar von TeeTier ,

Also genau genommen brauchst du bloß Addition, Subtraktion und Division ... und eine Schleife. :)

Wenn es dir tatsächlich nur auf einige hundert Stellen ankommt, dann ist eine Wijngaarden-Transformation oder zur Not auch eine Leibniz-Reihe genau das, was du suchst.

Das ganze kannste auch rekursiv machen und solltest damit bei ungefähr 2 Zeilen Code liegen.

Google wird dir sicher weiterhelfen!

Viel Spaß! :)

Antwort
von wolfgang1956, 5

Welche kostenlose Programmiersprache sollte man benutzen wenn man so hundert Nachkommastellen ausrechnen will?

Die 100 Nachkommastellen hängen doch nicht von den Kosten einer Programmiersprache ab, sondern von deinem Geschick als Programmierer!

Allerdings kommt dann die Frage auf, ob dies unbedingt soooo wichtig ist und „bessere“ Ergebnisse bringt?

Generationen von Handwerkern haben beispielsweise mit der Zahl π = 3,14 ausreichend gute Erfahrungen gemacht. D.h. wenn du den Kreisumfang eines Kreises von 2 cm bzw. 20 mm berechnest, sind dies 6,28 cm. Mit normal üblichen Messgeräten der Handwerker wie ein Zollstock oder einem Messschieber kannst du bis auf 0,1 mm „genau messen“. Und was sollen dir dann die weiteren 98 Nachkommastellen dann bringen? Du kannst sie nicht einmal einem Kunden in Rechnung stellen!

Antwort
von Mikkey, 35

Man kann (!) jede Sprache dafür benutzen.

Der passende Datentyp BigInt/BigInteger steht bei Microsoft und Java zur Verfügung (mindestens). Sonst muss man das selbst machen.

Edit - Microsoft hat den nicht, Bigint ist nur 64 bit.

Antwort
von Isendrak, 6

Um mal die Frage zu beantworten: Jep, geht mit Python2/3.

Beispielcode:

#!/usr/bin/env python
#coding: utf-8
import decimal
from decimal import Decimal
#Legt die Präzision fest (vereinfacht gesagt: große Zahl = viele Nachkommastellen)
decimal.getcontext().prec = 10000

#Erstelle eine Instanz von "Decimal"
a = Decimal("1")
#Ein bisschen dividieren um 'ne Zahl mit VIELEN Nachkommastellen zu generieren
for i in range(2,10): a /= Decimal(i)

#Ausgabe
print(a)

Weitere Informationen: https://docs.python.org/2/library/decimal.html

Kommentar von Wissen321741 ,

danke, kucke mal später ob es funktioniert

Antwort
von HansAntwortet, 38

Du solltest dir mal grundlegende infos zum Programmieren holen.

Btw, es gibt keine kostenpflichtige Sprache. Wie soll das auch gehen?

Kommentar von Wissen321741 ,

Gamz einfach: Das Programm in dem man programmiert kostet Geld

Kommentar von HansAntwortet ,

Wozu? Es gibt zig kostenlose Compiler.

Kommentar von kordely ,

Kannst du einen freien Compiler für Cobol empfehlen?

Kommentar von HansAntwortet ,

@kordely

GnuCOBOL zum beispiel.

Kommentar von Roderic ,

Eine Programmiersprache und eine Programmierumgebung sind zwei verschiedene Dinge.

Ersteres wird auf Universitäten erfunden.
Letzteres wird von Firmen oder von der Community programmiert. Firmen wollen Kohle für ihre Arbeit haben.

Ich zitiere den ersten Satz der ursprünglichen Antwort:

Du solltest dir mal grundlegende infos zum Programmieren holen.

;-)

Kommentar von kingbongo ,

Stimmt, da möchte ich mal paar angesagte Programmiersprachen hervorheben die in Universitäten und nicht von Firmen erfunden wurden wie zB Microsofts VB, Microsofts C#, Suns Java, Netscapes Javascript, Adobes Actionscript, Facebooks Hack, Apples Swift, Googles Golang,....

Kommentar von gfntom ,

Das ist so, als ob du sagst, dass es keine Straßen gibt, die man kostelos befahren dürfe, weil man ja ein Fahrzeug brauche, das etwas kostet.

Keine passende Antwort gefunden?

Fragen Sie die Community