Functions, Domains, Ranges, and Graphs
Install and import#
npm install fintech-algorithmsimport { functionsDomainsRangesAndGraphs } from "fintech-algorithms/foundations/mathematical-language-and-quantitative-reasoning/functions-domains-ranges-and-graphs";Signature#
functionsDomainsRangesAndGraphs(input)Evaluates the straight-line function intercept + slope * value at every entry of values and reports the input span it was evaluated over alongside the output span it produced.
Parameters#
| Name | Type | Notes |
|---|---|---|
input | D00Input | A plain object. Every F01 topic first reads values, which must be a non-empty array of finite numbers, and validates it before any per-topic branch runs. This topic then reads intercept and slope, both coerced with Number, and uses values as the points at which the function is evaluated. |
Returns#
{ domain: [number, number]; range: [number, number]; outputs: number[] }
domain is the smallest and largest entry of values, range the smallest and largest of the computed outputs, and outputs the value of the function at each input, in input order.
Errors#
- When input is not a plain object — throws TypeError
- When values is missing, empty, or not an array — throws RangeError
- When values contains a value that is not a finite number — throws RangeError
Complexity: time O(n),
space O(n).
Worked example#
verified This is the worked example published in the article, replayed by the test suite on every run. The output cannot drift.
Input#
{
"values": [1, 2, 3, 4, 5],
"startingCash": 1000,
"inflows": 250,
"outflows": 120,
"slope": 2,
"intercept": 1,
"part": 25,
"whole": 200,
"elapsed": 5,
"old": 4.5,
"new": 4.75,
"base": 16,
"exponent": 0.5,
"a": 2
}Showing 14 of 28 fields.
Call#
functionsDomainsRangesAndGraphs(input)Returns#
object with 2 fields: domain, range
{
"domain": [1, 5],
"range": [3, 11]
}Diagrams#
Calculation flow#
Functions, Domains, Ranges, and Graphs — four-part map
flowchart LR
A["Name the input"] --> B["Apply: fee(amount) = fixed fee + (rate / 100) × amount"]
B --> C["Check units and boundary"]
C --> D["Explain the output"]
How it works#
This page states the contract — how to call it correctly. The article explains the concept: why it works, and where it breaks.
References#
- College Algebra: Domain and Range — OpenStax
- NIST/SEMATECH e-Handbook of Statistical Methods — NIST/SEMATECH
- Author-derived and synthetic boundary