Idealvalues is a tool you can use for hypothesis testing. Use Idealvalues to find a sum value within an array of numbers.
Using npm:
$ npm install idealvalues
Using cdn:
<script src="https://cdn.jsdelivr.net/npm/idealvalues/cdn/idealvalues.js" integrity="sha256-pHB+sncAePApDDjJyqPddPhPLKK7OPe493sMwOlFVBs=" crossorigin="anonymous"></script>
idealvalues(number, [values], {options?});
Returns the numbers at which the sum arrives at the desired value.
number |
Number Number that should be the sum of all values. |
values |
Array Values to reach the desired number. |
options |
Object options for dealing. Optional |
returns | Array Values whose sum results in the desired number. |
throws | Error If it does not find values whose sum reaches the desired value. |
debug |
Boolean Enable debug. Default=false |
fullDebug |
Boolean Enable full debug, with all loops of attempts. Default=false |
maxAttempts |
Number maximum attempts. Default=1000 |
extends |
Bollean Returns a run report. Default=false |
const idealvalues = require("idealvalues");
const values = idealvalues(180, [10, 10, 20, 20, 40, 40, 30, 50, 70, 30, 40]);
console.log(values);
[ 50, 40, 10, 40, 10, 30 ]
const idealvalues = require("idealvalues");
const values = idealvalues(180, [10, 10, 20, 20, 40, 40, 30, 50, 70, 30, 40], {extends: true});
console.log(values);
{ values: [ 40, 50, 20, 30, 40 ], sum: 180, attempts: 2 }
<script src="https://cdn.jsdelivr.net/npm/idealvalues/cdn/idealvalues.js" integrity="sha256-pHB+sncAePApDDjJyqPddPhPLKK7OPe493sMwOlFVBs=" crossorigin="anonymous"></script>
<script>
const values = idealvalues(180, [10, 10, 20, 20, 40, 40, 30, 50, 70, 30, 40]);
console.log(values);
</script>
[ 50, 40, 10, 40, 10, 30 ]
I went to the supermarket, and the total value of the purchase was: $180. In my wallet I have the following notes:
- $10
- $20 x 2
- $50 x 4
- $100
Then:
const idealvalues = require("idealvalues");
const values = idealvalues(180, [10, 20, 20, 50, 50, 50, 50, 100]);
console.log(values);
[ 50, 100, 10, 20 ]
To pay I need to pass the following notes:
- $50
- $100
- $10
- $20