Ich weiß also über die Präzision von Gleitkommazahlen Bescheid (und darüber, wie Dinge wie 1,1 nicht genau im Binärsystem ausgedrückt werden können) und all das, aber ich frage mich: wie implementieren mathematische Bibliotheken dann die unendliche Präzision? Mit anderen Worten, wie würden Sie beispielsweise 1,1 genau im Binärsystem darstellen? Eine kurze Beschreibung wäre toll, ich kann die genauen Details selbst herausfinden. Danke. :)
Antwort
Zu viele Anzeigen?Während Pax völlig richtig ist, wenn es um Fließkommazahlen und Zahlen geht, glaube ich, dass es eine Lösung gibt, aber sie ist sehr ineffizient.
Sie können einen String verwenden, um Ihre Zahl darzustellen, Strings verlieren keine Genauigkeit.
Immer wenn Sie eine Zahl wie "0.0001" + "0.1" haben, durchlaufen Sie beide Strings und konvertieren nur die aktuelle Position in eine Ganzzahl um.
Schritt 1:
0 + 0 = 0 -> in String konvertieren und data[0] zuweisen.
Schritt 2:
0 + 1 = 1 -> in String konvertieren und data[1] zuweisen.
Schritt 3:
iter > "0.1".lenght() -> stop.
- See previous answers
- Weitere Antworten anzeigen