UNPKG

nerdamer-ts

Version:

javascript light-weight symbolic math expression evaluator

27 lines 1.11 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.continued_fraction = void 0; const Math2_1 = require("../../Math2"); const Vector_1 = require("../../../Types/Vector"); const Symbol_1 = require("../../../Types/Symbol"); const Parser_1 = require("../../../Parser/Parser"); /** * Returns the continued fraction of a number * @param {Symbol} symbol * @param {Symbol} n * @returns {Symbol | Vector} */ function continued_fraction(symbol, n) { var _symbol = (0, Parser_1.evaluate)(symbol); if (_symbol.isConstant()) { var cf = Math2_1.Math2.continuedFraction(_symbol, n); //convert the fractions array to a new Vector var fractions = Vector_1.Vector.fromArray(cf.fractions.map(function (x) { return new Symbol_1.Symbol(x); })); return Vector_1.Vector.fromArray([new Symbol_1.Symbol(cf.sign), new Symbol_1.Symbol(cf.whole), fractions]); } return (0, Symbol_1.symfunction)('continued_fraction', arguments); } exports.continued_fraction = continued_fraction; //# sourceMappingURL=continued_fraction.js.map