Variable size/Set: Difference between revisions

m
→‎{{header|Phix}}: made p2js compatible
(Replaced the example with a more comprehensive text.)
m (→‎{{header|Phix}}: made p2js compatible)
Line 424:
When using mprf.e (aka gmp), variables can have any precision required, up to available memory.<br>
mpz (integer) variables automatically grow as needed but can optionally be initialised with a minimum bitcount to avoid later reallocations.<br>
mpfr (floating point) variables require the precision to be explicitly specified in binary bits, for example if you want PI to 1000120 decimal places:
{{libheader|Phix/mpfr}}
<!--<lang Phix>(phixonline)-->
<span style="color: #008080;">includewith</span> <span style="color: #7060A8008080;">mpfr</span><span style="color: #0000FF;">.</span><span style="color: #000000;">e</span> <span style="color: #000080;font-style:italic;">-- requires 0.8.1+javascript_semantics</span>
<span style="color: #7060A8;">mpfrrequires</span> <span style="color: #000000;">pi</span> <span style="color: #0000FF;">=(</span> <span style="color: #7060A8008000;">mpfr_init</span><span style="color: #0000FF;">(</span><span style="color: #000000;">1.0.0</span><span style="color: #0000FF;">,-</span><span style="color: #000000;">1001</span><span style="color: #0000FF;">)</span> <span style="color: #000080;font-style:italic;">-- 1000 dp, +1 for the "3."</span>
<span style="color: #008080;">include</span> <span style="color: #004080;">mpfr</span><span style="color: #0000FF;">.</span><span style="color: #000000;">e</span>
<span style="color: #004080;">mpfr</span> <span style="color: #000000;">pi</span> <span style="color: #0000FF;">=</span> <span style="color: #7060A8;">mpfr_init</span><span style="color: #0000FF;">(</span><span style="color: #000000;">0</span><span style="color: #0000FF;">,-</span><span style="color: #000000;">121</span><span style="color: #0000FF;">)</span> <span style="color: #000080;font-style:italic;">-- 120 dp, +1 for the "3."</span>
<span style="color: #7060A8;">mpfr_const_pi</span><span style="color: #0000FF;">(</span><span style="color: #000000;">pi</span><span style="color: #0000FF;">)</span>
<span style="color: #7060A8;">mpfr_printfprintf</span><span style="color: #0000FF;">(</span><span style="color: #000000;">1</span><span style="color: #0000FF;">,</span><span style="color: #008000;">"PI with 1000120 decimals: %.1000RDfs\n\n"</span><span style="color: #0000FF;">,</span><span style="color: #7060A8;">mpfr_get_fixed</span><span style="color: #0000FF;">(</span><span style="color: #000000;">pi</span><span style="color: #0000FF;">,</span><span style="color: #000000;">120</span><span style="color: #0000FF;">))</span>
<!--</lang>-->
 
7,806

edits