Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
57
Task/Price-fraction/NetRexx/price-fraction.netrexx
Normal file
57
Task/Price-fraction/NetRexx/price-fraction.netrexx
Normal file
|
|
@ -0,0 +1,57 @@
|
|||
/* NetRexx */
|
||||
options replace format comments java crossref symbols nobinary
|
||||
|
||||
runSample(arg)
|
||||
return
|
||||
|
||||
-- -----------------------------------------------------------------------------
|
||||
method runSample(arg) public static
|
||||
parse arg in_val .
|
||||
if in_val \= '' then test_vals = [in_val]
|
||||
else test_vals = getTestData()
|
||||
|
||||
say 'Input Adjustment'
|
||||
loop tv = 0 to test_vals.length - 1
|
||||
in_val = test_vals[tv]
|
||||
adjust = priceFraction(in_val)
|
||||
say in_val.format(null, 2).right(5) adjust.format(null, 2).right(10)
|
||||
end tv
|
||||
|
||||
return
|
||||
|
||||
-- -----------------------------------------------------------------------------
|
||||
method priceFraction(in_val) public static
|
||||
out_val = -1
|
||||
limit_table = getLimitTable()
|
||||
limit_table_K = limit_table.length
|
||||
loop p1 = 0 to limit_table_K - 1
|
||||
pair = limit_table[p1]
|
||||
hi_limit = pair[0]
|
||||
adjustmt = pair[1]
|
||||
if in_val < hi_limit then do
|
||||
out_val = adjustmt
|
||||
leave p1
|
||||
end
|
||||
end p1
|
||||
if out_val = -1 then signal IllegalArgumentException('Input' in_val 'is outside of acceptable range.')
|
||||
|
||||
return out_val
|
||||
|
||||
-- -----------------------------------------------------------------------------
|
||||
method getLimitTable() public static returns Rexx[,]
|
||||
limit_table = [ -
|
||||
[0.06, 0.10], [0.11, 0.18], [0.16, 0.26], [0.21, 0.32], [0.26, 0.38], -
|
||||
[0.31, 0.44], [0.36, 0.50], [0.41, 0.54], [0.46, 0.58], [0.51, 0.62], -
|
||||
[0.56, 0.66], [0.61, 0.70], [0.66, 0.74], [0.71, 0.78], [0.76, 0.82], -
|
||||
[0.81, 0.86], [0.86, 0.90], [0.91, 0.94], [0.96, 0.98], [1.01, 1.00] -
|
||||
]
|
||||
return limit_table
|
||||
|
||||
-- -----------------------------------------------------------------------------
|
||||
method getTestData() private static returns Rexx[]
|
||||
test_vals = Rexx[5]
|
||||
rng = Random(1024)
|
||||
loop tv = 0 to test_vals.length - 1
|
||||
test_vals[tv] = rng.nextFloat()
|
||||
end tv
|
||||
return test_vals
|
||||
Loading…
Add table
Add a link
Reference in a new issue