JavaScript library to compute random arithmetic expressions (of configurable length) that evalute to a given number.
import { generateExpression } from "math-expression-generator";
const expression = generateExpression({
target: 20,
length: 2
});
console.log(expression); // [15, '+', 5]
const longExpression = generateExpression({
target: 4828,
length: 5
});
console.log(longExpression); // [ 2, '*', 13, '*', 10, '*', 1207, '/', 65 ]
If you want to evaluate the returned expression (to verify it is correct, for example), you can use mathjs (but there are plenty of other library solutions out there):
import { generateExpression } from "math-expression-generator";
import math from "mathjs";
const expression = generateExpression({
target: 20,
length: 2
});
const result = math.eval(expression.join(" "));
console.log(result); // 20
Generated with typedoc ❤️
If you are using TypeScript in your own project, you can import some types from this library.
Expression:
import Expression from 'math-expression-generator/types/Expression';
Operator:
import Operator from 'math-expression-generator/types/Operator';