4D v13.4

Werte vom Typ Zahl anzeigen

Home

 
4D v13.4
Werte vom Typ Zahl anzeigen

Werte vom Typ Zahl anzeigen  


 

 

Vorbemerkung: Wenn Sie nicht für Crossplattform entwickeln, können Sie diesen Abschnitt überspringen.

Im Softwarebereich gehört die Fließkommaberechnung eher in den technologischen als in den mathematischen Bereich. In der Schule lernt man, dass der Wert 1/3 als Dezimalzahl mit einer unbegrenzten Anzahl von Dreiern nach dem Komma dargestellt werden kann. Das weiß ein Rechner dagegen nicht, er muss den Ausdruck bewerten. Das gleiche gilt für den Ausdruck 3 x 1/3. Für den Benutzer ist das Ergebnis 1, der Rechner bewertet den Ausdruck. Je nach verwendetem Rechnertyp wird der Wert 1/3 als Dezimalzahl mit einer begrenzten Anzahl von Dreiern nach dem Komma bewertet. Das ist die Rechnergenauigkeit.

Auf älteren 68k-Macintosh beträgt die Genauigkeit 19 Stellen, 1/3 wird intern also mit 19 Stellen nach dem Komma dargestellt. Unter Windows bzw. auf Power Macintosh beträgt die Genauigkeit 15 Stellen. Im Schrittmodus wird 1/3 auf einem 68k-Macintosh als 0.3333333333333333333, unter Windows bzw. auf Power Macintosh als 0.3333333333333333148 dargestellt. Da die Genauigkeit unter Windows bzw. auf Power Macintosh geringer ist, werden die letzten drei Stellen unterschiedlich dargestellt. Der Ausdruck (1/3)*3 ergibt dagegen auf beiden Rechnern das Ergebnis 1.

In den meisten Fällen ist die Genauigkeit der Fließkommaberechnung sicherlich ausreichend. Bei bestimmten Formularen kann die Genauigkeit Ihres Rechners jedoch für Sie von Bedeutung sein.

Warum wird 1/3 auf einem 68k-Macintosh anders dargestellt als unter Windows bzw. auf Power Macintosh?
 
Der Grund dafür ist, dass das Betriebssystem auf 68k-Macintosh für Werte vom Typ Zahl 10 bytes (80 bits), unter Windows bzw. auf Power Macintosh 8 bytes (64 bits) belegt. So hat der 68k-Macintosh eine Genauigkeit bis zu 19 Stellen, unter Windows bzw. auf Power Macintosh sind es bis zu 15 Stellen.

Warum gibt der Ausdruck (1/3)*3 auf beiden Rechnern das Ergebnis 1 zurück?

Der Grund hierfür ist, dass ein Rechner nur Näherungsrechnungen durchführen kann. Beim Vergleichen oder Berechnen von Werten behandelt der Rechner Werte vom Typ Zahl nicht als mathematische Objekte, sondern als annähernde Werte. Im o.a. Beispiel ergibt 0,3333... multipliziert mit 3 als Ergebnis 0,9999..., der Unterschied zu 1 ist jedoch so gering, dass der Rechner das Ergebnis als 1 wertet. Weitere Informationen dazu finden Sie in der Beschreibung zum Befehl SET REAL COMPARISON LEVEL.

Bezüglich der Ungenauigkeit sind zwei Fälle zu unterscheiden:

  • die Art, wie Daten berechnet und verglichen werden,
  • die Art, wie sie auf dem Bildschirm oder Drucker dargestellt werden.

Genauigkeit der Fließkommaberechnung mit 4D
4D benutzte ursprünglich für die Verwaltung und Speicherung von Werten vom Typ Zahl 10 Byte. Aus Kompatibilitätsgründen mit der Windows- und der Power Macintosh-Version erfolgt die Speicherung auch weiterhin mit 10 Byte. Da die Fließkommaberechnung hier mit 8 Byte durchgeführt wird, konvertiert 4D die Werte vom Typ Zahl von 10 Byte in 8 Byte und umgekehrt. Beim Laden von Datensätzen unter Windows oder auf Power Macintosh, die auf einem 68k-Macintosh gespeichert worden sind, kann demnach eine gewisse Ungenauigkeit entstehen (von 19 auf 15 Stellen). Beim Laden von Datensätzen auf einem 68k-Macintosh, die unter Windows oder auf Power Macintosh gespeichert worden sind, bleibt die Genauigkeit dagegen erhalten. Wenn Sie eine Datenbank auf allen drei Plattformen verwenden, sollten Sie grundsätzlich von einer Genauigkeit bis zu 15 Stellen ausgehen.

Mit dem Befehl SET DATABASE PARAMETER können Sie die Rundungsgenauigkeit einstellen, d.h. wieviel Stellen nach dem Komma abgeschnitten werden, bevor getestet wird, ob die Zahl auf- oder abzurunden ist. Standardmäßig wird auf 4 Stellen nach dem Komma gerundet.

 
EIGENSCHAFTEN 

Produkt: 4D
Thema: Mathematische Funktionen