initial commit
This commit is contained in:
@@ -0,0 +1,49 @@
|
||||
---
|
||||
epic: 6
|
||||
story: 6.4
|
||||
title: "Financial Functions"
|
||||
status: draft
|
||||
---
|
||||
|
||||
## Epic 6 — Advanced Math & Functions
|
||||
**Goal:** Scientific, financial, and power-user math.
|
||||
|
||||
### Story 6.4: Financial Functions
|
||||
|
||||
As a **CalcPad user**,
|
||||
I want to use natural-language financial expressions for compound interest and mortgage calculations,
|
||||
So that I can quickly answer personal finance questions without looking up formulas.
|
||||
|
||||
**Acceptance Criteria:**
|
||||
|
||||
**Given** the user writes `$5000 after 3 years at 7.5%`
|
||||
**When** the engine evaluates (compound interest, annual compounding by default)
|
||||
**Then** the result is approximately `$6,211.94`
|
||||
|
||||
**Given** the user writes `mortgage $350000 at 6.5% for 30 years`
|
||||
**When** the engine evaluates (standard monthly payment amortization)
|
||||
**Then** the result is approximately `$2,212.24` per month
|
||||
|
||||
**Given** the user writes `$10000 after 5 years at 5% compounded monthly`
|
||||
**When** the engine evaluates
|
||||
**Then** the result is approximately `$12,833.59`
|
||||
|
||||
**Given** the user writes `mortgage $200000 at 4% for 15 years`
|
||||
**When** the engine evaluates
|
||||
**Then** the result is approximately `$1,479.38` per month
|
||||
|
||||
**Given** the user writes a compound interest expression with 0% interest
|
||||
**When** the engine evaluates
|
||||
**Then** the result equals the principal (no growth)
|
||||
|
||||
**Given** the user writes a mortgage expression with 0% interest
|
||||
**When** the engine evaluates
|
||||
**Then** the monthly payment is the principal divided by the total number of months
|
||||
|
||||
**Given** the user writes `$5000 after 0 years at 7.5%`
|
||||
**When** the engine evaluates
|
||||
**Then** the result is `$5,000` (the principal unchanged)
|
||||
|
||||
**Given** the user writes a financial expression with missing or invalid parameters (e.g., `mortgage at 5%`)
|
||||
**When** the engine evaluates
|
||||
**Then** an error is displayed indicating the required format or missing parameters
|
||||
Reference in New Issue
Block a user