Price fraction: Difference between revisions
Content added Content deleted
No edit summary |
(Initial FutureBasic task solution added) |
||
Line 2,369: | Line 2,369: | ||
0.347081 0.50 |
0.347081 0.50 |
||
0.342244 0.50</syntaxhighlight> |
0.342244 0.50</syntaxhighlight> |
||
=={{header|FutureBasic}}== |
|||
<syntaxhighlight lang="futurebasic"> |
|||
local fn PriceFraction( price as double ) as double |
|||
double result |
|||
if price < 0.00 or price > 1.00 then exit fn = price |
|||
if price < 0.06 then exit fn = 0.10 |
|||
if price < 0.11 then exit fn = 0.18 |
|||
if price < 0.16 then exit fn = 0.26 |
|||
if price < 0.21 then exit fn = 0.32 |
|||
if price < 0.26 then exit fn = 0.38 |
|||
if price < 0.31 then exit fn = 0.44 |
|||
if price < 0.36 then exit fn = 0.50 |
|||
if price < 0.41 then exit fn = 0.54 |
|||
if price < 0.46 then exit fn = 0.58 |
|||
if price < 0.51 then exit fn = 0.62 |
|||
if price < 0.56 then exit fn = 0.66 |
|||
if price < 0.61 then exit fn = 0.70 |
|||
if price < 0.66 then exit fn = 0.74 |
|||
if price < 0.71 then exit fn = 0.78 |
|||
if price < 0.76 then exit fn = 0.82 |
|||
if price < 0.81 then exit fn = 0.86 |
|||
if price < 0.86 then exit fn = 0.90 |
|||
if price < 0.91 then exit fn = 0.94 |
|||
if price < 0.96 then exit fn = 0.98 |
|||
result = 1.00 |
|||
end fn = result |
|||
void local fn GetPriceFractions |
|||
NSUInteger i |
|||
for i = 1 to 100 |
|||
double d = i/100.0 |
|||
printf @"%.2f -> %.2f\t\b", d, fn PriceFraction( d ) |
|||
if i mod 5 == 0 then print |
|||
next |
|||
end fn |
|||
fn GetPriceFractions |
|||
NSLog( @"%@", fn WindowPrintViewString( 1 ) ) |
|||
HandleEvents |
|||
</syntaxhighlight> |
|||
{{output}} |
|||
<pre> |
|||
0.01 -> 0.10 0.02 -> 0.10 0.03 -> 0.10 0.04 -> 0.10 0.05 -> 0.10 |
|||
0.06 -> 0.18 0.07 -> 0.18 0.08 -> 0.18 0.09 -> 0.18 0.10 -> 0.18 |
|||
0.11 -> 0.26 0.12 -> 0.26 0.13 -> 0.26 0.14 -> 0.26 0.15 -> 0.26 |
|||
0.16 -> 0.32 0.17 -> 0.32 0.18 -> 0.32 0.19 -> 0.32 0.20 -> 0.32 |
|||
0.21 -> 0.38 0.22 -> 0.38 0.23 -> 0.38 0.24 -> 0.38 0.25 -> 0.38 |
|||
0.26 -> 0.44 0.27 -> 0.44 0.28 -> 0.44 0.29 -> 0.44 0.30 -> 0.44 |
|||
0.31 -> 0.50 0.32 -> 0.50 0.33 -> 0.50 0.34 -> 0.50 0.35 -> 0.50 |
|||
0.36 -> 0.54 0.37 -> 0.54 0.38 -> 0.54 0.39 -> 0.54 0.40 -> 0.54 |
|||
0.41 -> 0.58 0.42 -> 0.58 0.43 -> 0.58 0.44 -> 0.58 0.45 -> 0.58 |
|||
0.46 -> 0.62 0.47 -> 0.62 0.48 -> 0.62 0.49 -> 0.62 0.50 -> 0.62 |
|||
0.51 -> 0.66 0.52 -> 0.66 0.53 -> 0.66 0.54 -> 0.66 0.55 -> 0.66 |
|||
0.56 -> 0.70 0.57 -> 0.70 0.58 -> 0.70 0.59 -> 0.70 0.60 -> 0.70 |
|||
0.61 -> 0.74 0.62 -> 0.74 0.63 -> 0.74 0.64 -> 0.74 0.65 -> 0.74 |
|||
0.66 -> 0.78 0.67 -> 0.78 0.68 -> 0.78 0.69 -> 0.78 0.70 -> 0.78 |
|||
0.71 -> 0.82 0.72 -> 0.82 0.73 -> 0.82 0.74 -> 0.82 0.75 -> 0.82 |
|||
0.76 -> 0.86 0.77 -> 0.86 0.78 -> 0.86 0.79 -> 0.86 0.80 -> 0.86 |
|||
0.81 -> 0.90 0.82 -> 0.90 0.83 -> 0.90 0.84 -> 0.90 0.85 -> 0.90 |
|||
0.86 -> 0.94 0.87 -> 0.94 0.88 -> 0.94 0.89 -> 0.94 0.90 -> 0.94 |
|||
0.91 -> 0.98 0.92 -> 0.98 0.93 -> 0.98 0.94 -> 0.98 0.95 -> 0.98 |
|||
0.96 -> 1.00 0.97 -> 1.00 0.98 -> 1.00 0.99 -> 1.00 1.00 -> 1.00 |
|||
</pre> |
|||
=={{header|Go}}== |
=={{header|Go}}== |