HomeCalculatorsMathGeometryTriangle Solver
Math calculator

Triangle Solver

Solve triangle sides, angles, area and perimeter with SSS, SAS, ASA, AAS or SSA. Inspect every solution, numerical limits and complete shareable result exports.

Instant result
Result
—

Enter values to calculate.

Inputs—
Mode—
Formula—
Trust summary CVP VERIFIED · CVP protocol 1.0.0-proposed · Core assurance · all published modes
Input interpretation
Enter values to calculate.
Result
—
Verified scope
all published modes
Assurance
Core
Declared partition coverage
PASS · 6/6 declared partitions (sss, sas, asa, aas, ssa, invalid-domain) · Matrix
Known limitations
  • Core CVP does not include live graph, viewport, or pointer interaction.
Model
Sides, angles, area, and an engine-linked Euclidean triangle figure (SSA draws both solutions).
Scope
Euclidean plane
Verification
Engine tested · Source checked · v1.1.0 · CVP VERIFIED · CVP protocol 1.0.0-proposed · Core assurance · all published modes· View Manifest · CVP overview · Specification
Versions
Calculation 1.1.0 · CVP protocol 1.0.0-proposed · Evidence 2026-10-29.math-uuce-fields-v1
Verification revision
2026-10-29.math-uuce-fields-v1 · 3/3 property · digest 0c4df55e9ff8
Legacy regression
10/10 tests · Production surface contract 5/5
Trust layers
Verification VERIFIED · Production CURRENT · Overall CVP state: VERIFIED under CVP 1.0.0-proposed
Reference
O1 model · O2 expected_values · O2 numerical_behavior
Interfaces
PASS · UI (SSR) / REST / MCP — ui-ssr is query-result HTML, not a live browser session. Error-path engine·REST·MCP 1/1 (status, code, calculation_version). SSR compared on URL-canonical requested calculations; empty query is idle (not an error) and JSON-typed object/array inputs are REST/MCP-only.
Supplemental domain review
Not performed
Named expert review
Not performed
CVP suite
168/168 golden · 2/2 CVP boundary · 75/75 invalid · 3/3 property · 4/4 metamorphic · 2/2 cross-interface · 1/1 cross-calculator · 5/5 CVP contract · Manifest
Evidence
3 legacy golden · 2 legacy boundary · legacy regression suite · 168/168 oracle-backed golden · 75/75 invalid · Artifact integrity PASS
This calculator CURRENT · Public schema 1.1.0 matches · Semantic contract ✓ · Production attested · Public/cache ✓ · Origin ✓
Semantic contract
PASS
Full verification

Manifest identity, reference classes, interfaces, suite, and production records.

Formulas

Core equations used by this calculator.

Law of sinesa / sin A = b / sin B = c / sin C
Law of cosinesc² = a² + b² − 2ab cos C
Areaarea = (1/2) ab sin C
iAngles in degrees. Side a is opposite angle A. This is not the right-triangle Pythagorean page.

How to use

1

Choose the case

SSS needs three sides. SAS is sides a,b and included C. SSA is side a, opposite A, and side b.

2

Enter positive sides and angles in (0°, 180°)

A + B + C = 180°.

3

Read sides, angles, and area

SSA may list two solutions. The figure updates with the solved triangle.

Example calculations

Common configurations with formula and result.

ϟ

3-4-5

SSS right triangle

c² = 3² + 4²
C=90°, area=6
ϟ

SSA ambiguous

a=7, A=30°, b=10

two triangles
2 solutions

Triangle Solver specification

Version 1.1.0 · Engine tested

Calculation status

Review policy · Evidence

Definition
A Euclidean triangle is determined by SSS, SAS, ASA, or AAS. SSA may yield zero, one, or two triangles (ambiguous case).
What it calculates
Sides, angles, area, and an engine-linked Euclidean triangle figure (SSA draws both solutions).
Inputs
  • mode
  • a?
  • b?
  • c?
  • A_deg?
  • B_deg?
  • C_deg?
Outputs
  • a
  • b
  • c
  • A_deg
  • B_deg
  • C_deg
  • area
  • solutions
Formula
law of sines / law of cosines
Assumptions
  • Euclidean plane
  • Not spherical trigonometry
  • Not Pythagorean-only
Units
  • length (consistent units)
  • degrees
Boundary conditions
  • triangle inequality fail → INVALID_INPUT
  • unknown mode (including hl) → INVALID_MODE
Example
mode=sss a=3 b=4 c=5 → C=90°
Validation cases

2 published on this page · 10/10 tests · Production surface contract 5/5 · View evidence

  • mode=sss a=3 b=4 c=5 → C_deg=90
  • mode=ssa a=7 A_deg=30 b=10 → solution_count=2
Sources
  • ISO 80000-2:2019 Quantities and units — Mathematics
    Supports: Mathematical symbols and notation. This standard is not numerical verification or an endorsement of this implementation.
  • Gilbert Strang, Calculus — Chapter 1: Introduction to Calculus (MIT OpenCourseWare) — §1.5 A Review of Trigonometry
    Supports: Right-triangle definitions of sine, cosine and tangent, the sine/cosine identities, and the law-of-cosines and parallelogram exercises 31–32. Chord length follows by bisecting the radii triangle. Regular-polygon apothems and areas follow by splitting the polygon into equal triangles. The law of sines follows by equating a triangle’s altitude computed from either adjacent side; SSA can give two triangles. These applications are derived from the stated relations. Mathematical reference only; not implementation validation or an endorsement of CalculatorX.
  • W. Kahan — Miscalculating Area and Angles of a Needle-like Triangle — Area, angle evaluation and ill-conditioned triangle examples
    Supports: Numerical pitfalls of naive area and inverse-trigonometric angle evaluation, including needle triangles and SSA conditioning. Algorithmic reference only; not independent verification or endorsement of CalculatorX.
Calculation version
1.1.0

Background

Interpretation and common distinctions.

What does this triangle solver calculator compute?

A Euclidean triangle is determined by SSS, SAS, ASA, or AAS. SSA may yield zero, one, or two triangles (ambiguous case).

The published formula or method is law of sines / law of cosines. The following references support the stated mathematics or method:

  • Gilbert Strang, Calculus — Chapter 1: Introduction to Calculus (MIT OpenCourseWare): Right-triangle definitions of sine, cosine and tangent, the sine/cosine identities, and the law-of-cosines and parallelogram exercises 31–32. Chord length follows by bisecting the radii triangle. Regular-polygon apothems and areas follow by splitting the polygon into equal triangles. The law of sines follows by equating a triangle’s altitude computed from either adjacent side; SSA can give two triangles. These applications are derived from the stated relations. Mathematical reference only; not implementation validation or an endorsement of CalculatorX.

Which inputs and limits should you check?

SSA can have two valid triangles. Retain every returned solution and distinguish it from no-solution or degenerate cases.

The worked example uses SSS right triangle with c² = 3² + 4². Compare it with the Example calculations and the complete result for the same inputs.

How can you verify and cite this result?

CalculatorX is responsible for this page. The mathematical references above explain the model; implementation checks and their scope are documented separately in the math.geometry.triangle v1.1.0 Evidence and capability contract. Read the displayed verification and production state together with the specification's numerical limits.

Use the clean calculator URL to cite the tool. A shared input link identifies a particular calculation. Content updates, numerical verification, and domain reviews have separate dates and scopes.

Numerical policy and complete solutions

Use one consistent length unit for a, b, c; area is in its square and angles are in degrees. Side a is opposite A, b opposite B, and c opposite C. SSS uses a,b,c; SAS uses a,b,C; ASA uses A,B,c; AAS uses A,B,a; SSA uses a,A,b. An SSA request with no triangle returns INVALID_INPUT. Successful SSA requests retain every solution in order: acute B first, then supplementary B. The top-level values repeat solution1; JSON and CSV retain the complete solutions array and all perimeters.

Inputs are strict decimal numbers or decimal strings of at most1024 characters. A/B/C are aliases of A_deg/B_deg/C_deg and must agree when both are supplied. Decimal text is normalized to binary64. Nonzero text converted to zero is NUMERIC_UNDERFLOW; nonzero subnormal inputs and nonnormal positive outputs reject with NUMERIC_RANGE. All positive inputs and reported values must be finite normal binary64 (at least2^-1022 in magnitude); degree-to-radian conversions must also remain normal. Rescale lengths on NUMERIC_RANGE. Explicit empty/null fields are invalid; URL defaults apply only when a field is absent.

SSS triangle inequalities use exact dyadic predicates on normalized binary64 inputs, without a fixed absolute length epsilon. Its area uses the sorted Kahan product and angles use scaled atan2. SAS uses a stable half-angle identity; ASA/AAS use the sine law; SSA uses stable quadratic roots. No small positive result is clamped to zero, and two near-coincident valid SSA solutions are not merged.

NUMERIC_CONDITION is an explicit accuracy boundary. For SSA angles other than exact sine identities at30,90,150 degrees, the relative height discriminant abs(a²-h²)/(a²+h²), h=b sin(A), must exceed1e-8; closer cases require higher precision. For derived sides in SAS/ASA/AAS/SSA, every rounded triangle-inequality gap must exceed64 times Number.EPSILON times the shortest side. A rounded endpoint angle or unresolved side geometry is rejected. Raw-side SSS uses exact inequalities without the derived-side guard.

Near-flat and SSA tangent cases are sensitive to input rounding; even a decimal-to-binary conversion can change the solution count. Typical arithmetic checks use relative5e-10 against independent750-digit values of the stated model, separately checking exact status/count, numeric types and full candidate lists. This is not a bound on input uncertainty or a symbolic exactness guarantee. Figures use equal scale and explicitly omit aspect ratios or candidate separations too small to display faithfully. Read every numerical solution even when no figure can be shown.

Kahan’s author-hosted lecture notes explain numerical pitfalls in needle-like triangles and SSA conditioning. They support algorithmic reasoning, not implementation verification or endorsement.

Interactive solving runs locally. Shared URLs send parameters to the server and may be server-rendered; REST/MCP requests send inputs. Local calculation history is stored in this browser. Analytics and deployment processing are separate data paths; no zero-log, retention-period or fixed-region guarantee is implied. A shared calculation_version identifies the requested version and displays a mismatch notice; it is not a preserved historical execution environment.

Frequently asked questions

Key distinctions behind the calculation.

Is this the Pythagorean calculator?

No. Right-triangle a²+b²=c² is /calc/math/pythagorean. This page solves general Euclidean triangles, including 3-4-5 as SSS.

What is the SSA ambiguous case?

Given a, A, and b, there can be two triangles when height < a < b and A is acute.

Where does this run?

Locally in the browser by default. REST and MCP call the same triangle-solver engine.