Podpora větších celých čísel než integer32

Automaticky přeloženo z Deepl

Reály jsou sice známé jako nepřesné, ale jsou 100% přesné i pro velmi velká čísla, pokud nepoužívají desetinnou čárku (=celá čísla).

Čísla do 53 bitů, přesněji řečeno [-(2^53)+1, (2^53)-1], tedy v rozsahu od -9 007 199 254 740 992 do 9 007 199 254 740 992, budou reprezentována přesně.

Více o reálných číslech

Pokud se podíváte na definici pojmu Double-precision binary floating-point na Wikipedii, zjistíte o dělení a přesnosti číslic toto:

„Přesnost 53bitového signifikantu dává přesnost 15 až 17 významných desetinných číslic (2-53 ≈ 1,11 × 10-16). Pokud se desetinný řetězec s nejvýše 15 významnými číslicemi převede na reprezentaci IEEE 754 s dvojnásobnou přesností a poté se převede zpět na desetinný řetězec se stejným počtem číslic, měl by konečný výsledek odpovídat původnímu řetězci. Pokud je číslo s dvojnásobnou přesností IEEE 754 převedeno na desetinný řetězec s nejméně 17 významnými číslicemi a poté převedeno zpět na dvojnásobnou přesnost, musí se konečný výsledek shodovat s původním číslem.“

Převést na řetězec

Ačkoli bylo možné po mnoho let provádět výpočty s velkými čísly typu Real, převod na text nebo z textu byl omezen na použití 12místného vědeckého zápisu, což vedlo ke ztrátě přesnosti.

Ve verzi 4D v19 R6 jsme vylepšili přesnost a převod čísla Real (prezentujícího celé číslo) na text.

Vylepšení převodu na řetězec se týká příkazu String() a příkazů JSON a XML vracejících čísla ve formě řetězce.

Editor kódu

V editoru kódu můžete nyní například zadávat:

$r:=2147483647000000
a zůstane v původním tvaru, místo aby se formátoval jako:
$r:=2.147483647e+15
Šťastné kódování!

Vanessa Talbot
• Product Owner • Vanessa Talbot se připojila k programovému týmu 4D v červnu 2014. Jako Product Owner má na starosti psaní uživatelských příběhů a jejich převod do funkčních specifikací. Její úlohou je také zajistit, aby implementovaná funkce odpovídala potřebám zákazníka. Od svého příchodu pracovala na definování klíčových prvků ve 4D. Pracovala na většině nových funkcí preemptivního multi-threadingu a také na velmi složitém tématu: nové architektuře pro enginované aplikace. Vanessa má titul z Telecom Saint-Etienne. Svou kariéru začala ve Výzkumném ústavu kriminalistickém jako vývojářka pro audiovizuální oddělení. Působila také v mediální a lékařské oblasti jako expertka na technickou podporu, produkci i dokumentaci novinek.