Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
33
Task/Price-fraction/Clipper/price-fraction-1.clipper
Normal file
33
Task/Price-fraction/Clipper/price-fraction-1.clipper
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
FUNCTION PriceFraction( npQuantDispensed )
|
||||
LOCAL aPriceFraction := { {0,.06,.1},;
|
||||
{.06,.11,.18}, ;
|
||||
{.11,.16,.26}, ;
|
||||
{.16,.21,.32}, ;
|
||||
{.21,.26,.38}, ;
|
||||
{.26,.31,.44}, ;
|
||||
{.31,.36,.5}, ;
|
||||
{.36,.41,.54}, ;
|
||||
{.41,.46,.58}, ;
|
||||
{.46,.51,.62}, ;
|
||||
{.51,.56,.66}, ;
|
||||
{.56,.61,.7}, ;
|
||||
{.61,.66,.74}, ;
|
||||
{.66,.71,.78}, ;
|
||||
{.71,.76,.82}, ;
|
||||
{.76,.81,.86}, ;
|
||||
{.81,.86,.9}, ;
|
||||
{.86,.91,.94}, ;
|
||||
{.91,.96,.98} }
|
||||
LOCAL nResult
|
||||
LOCAL nScan
|
||||
IF npQuantDispensed = 0
|
||||
nResult = 0
|
||||
ELSEIF npQuantDispensed >= .96
|
||||
nResult = 1
|
||||
ELSE
|
||||
nScan := ASCAN( aPriceFraction, ;
|
||||
{ |aItem| npQuantDispensed >= aItem[ 1 ] .AND.;
|
||||
npQuantDispensed < aItem[ 2 ] } )
|
||||
nResult := aPriceFraction[ nScan ][ 3 ]
|
||||
END IF
|
||||
RETURN nResult
|
||||
44
Task/Price-fraction/Clipper/price-fraction-2.clipper
Normal file
44
Task/Price-fraction/Clipper/price-fraction-2.clipper
Normal file
|
|
@ -0,0 +1,44 @@
|
|||
Procedure Main()
|
||||
Local i
|
||||
For i := -0.02 to 1.02 STEP 0.03
|
||||
? i, "->", PriceFraction(i), i+0.02, "->", PriceFraction(i+0.02)
|
||||
Next
|
||||
Return
|
||||
|
||||
|
||||
Static Function PriceFraction( nValue )
|
||||
Local nResult
|
||||
Local n
|
||||
// Function is only defined for values 0 to 1.00
|
||||
// Return NIL for anything else
|
||||
// Table of values {V1, V2} = {Threshhold, Standard value}
|
||||
#define TV_THRESHHOLD 1
|
||||
#define TV_STD_VALUE 2
|
||||
Local aTable := { {0, NIL },;
|
||||
{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} }
|
||||
n := AScan( aTable, {|x| nValue < x[TV_THRESHHOLD] })
|
||||
If n > 0
|
||||
nResult := aTable[n][TV_STD_VALUE]
|
||||
Else
|
||||
nResult := NIL
|
||||
Endif
|
||||
Return nResult
|
||||
Loading…
Add table
Add a link
Reference in a new issue