math-expression-generator

JavaScript library for generating mathematical expressions that evaluate to a particular number


Keywords
math, arithmetic, mathematical, expression, addition, subtraction, multiplication, division, arithmetic-expression, javascript, mathematical-expressions, mathematics, nodejs
License
MIT
Install
npm install math-expression-generator@1.0.7

Documentation

Math Expression Generator

CircleCI

JavaScript library to compute random arithmetic expressions (of configurable length) that evalute to a given number.

Usage

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 ]

Evaluate the expression

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

Documentation

Generated with typedoc ❤️

Click to view docs

TypeScript Types

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';

Expression docs

Operator: import Operator from 'math-expression-generator/types/Operator';

Operator docs