ForHosting KIT · Developer Utilities

SSA number of triangles calculator

The SSA number of triangles calculator determines whether two sides and a non-included angle can form zero, one, or two different triangles.

● BetaFree · in your browser
Use it from WebAPIEmailTelegramApp soon

Enter side_a opposite the known angle, the second side_b, and angle_a in degrees. The result classifies the ambiguous case without calculating every missing angle or side. It also reports the altitude used in the decision, a concise reason, and whether the configuration is genuinely ambiguous. This makes the tool useful when a problem asks only how many triangles are possible, or when you want to choose the correct solving branch before applying the law of sines.

Identify the SSA measurements correctly

SSA means that two side lengths and an angle are known, but the known angle is not between the two known sides. Naming the measurements correctly is essential because the decision rules depend on which side lies opposite the given angle. Enter that opposite length as side_a, enter the other known length as side_b, and enter the known angle as angle_a in degrees. A sketch helps: label the given angle A, put side a directly across from it, and label the remaining known side b. Do not use this classifier for SAS data, where the angle is included between both known sides, because SAS always follows a different construction and does not have the same two-solution ambiguity. All lengths must be positive finite numbers, and the angle must be strictly greater than zero and strictly less than 180 degrees. The two side values may use any common unit, such as centimeters, feet, or miles, as long as both use the same unit. The reported altitude uses that same unit. No unit conversion is performed, since only ratios and comparisons matter for counting the possible triangles. Once the three values are assigned correctly, the classifier gives the count before any full triangle solving is necessary.

Understand the acute-angle decision

When angle_a is acute, meaning less than 90 degrees, first compute the altitude h = side_b × sin(angle_a). This altitude is the shortest reach from the free endpoint of side_b toward the ray that would contain the third side. Comparing side_a with h and side_b reveals every possible outcome. If side_a is shorter than h, it cannot reach the ray, so zero triangles exist. If side_a equals h, it touches the ray at exactly one perpendicular point and creates one right triangle. If side_a is longer than h but shorter than side_b, it intersects the ray at two positions. Those positions create two distinct triangles, which is the classic ambiguous SSA case. Finally, if side_a is at least as long as side_b, only one valid intersection remains and therefore exactly one triangle exists. The calculator performs these comparisons with a small scale-aware floating-point tolerance so values produced by ordinary decimal calculations behave sensibly near the altitude boundary. It returns the computed altitude, the count, an ambiguity flag, and a readable explanation of the selected branch. It deliberately stops there instead of calculating sides and angles for each candidate, keeping the response focused on the preliminary question: how many triangles should be solved?

Handle right and obtuse angles and use the result

When angle_a is right or obtuse, there can never be two triangles. The side opposite a right or obtuse angle must be the longest side of the triangle, so side_a must be strictly longer than side_b. If that condition holds, one triangle is possible; if side_a is equal to or shorter than side_b, no triangle can satisfy the measurements. This rule is a useful quick check because it avoids inverse sine entirely. After the calculator returns one, you can proceed to a full law-of-sines solution with confidence that there is only one branch. After it returns two, remember that an inverse-sine calculator normally displays only the acute angle; a complete solver must also test its supplement to obtain the second triangle. After it returns zero, recheck the diagram, measurement labels, and units before concluding that the source problem is inconsistent. Zero is a valid mathematical result here, not an input error. Input errors are reserved for missing values, non-finite or non-positive sides, and angles outside the permitted open interval. The calculation is deterministic, uses no network request, and stores nothing. Interactive use is free in the browser, while an automated API request costs $0.002. That makes the same count suitable for homework checks, geometry software validation, and batch screening of measurement records before a more expensive solving step.

Check an ambiguous-case exercise

Determine whether a textbook SSA problem has zero, one, or two valid constructions before calculating missing measurements.

Validate geometry inputs

Screen side and angle records before sending valid configurations into a complete triangle solver.

Teach the altitude test

Show how comparing the opposite side with the altitude and second side controls the number of SSA solutions.

When does SSA produce two triangles?

Two triangles exist when angle_a is acute and the opposite side satisfies side_b × sin(angle_a) < side_a < side_b.

Why does the calculator return zero instead of an error?

An impossible geometric configuration is a valid answer to the counting question. Errors are used only when the supplied fields themselves are invalid.

Does this calculator solve the triangles?

No. It intentionally counts the possible triangles before solving. Use a full SSA solver afterward when you need every missing side and angle.

Can the two sides use different units?

No. Both side lengths must use the same unit. The returned altitude will then be expressed in that same unit.

What does an API request cost?

A successful API request costs $0.002. You can also run the calculation free in your browser on this page.

Everything on this page is available programmatically. This section is for teams who want to wire it into their own systems; everyone else can just use the tool above.

POSThttps://api.kit.forhosting.com/trig/ssa-number-of-solutions

Prefer to automate it? One authenticated POST creates the task; the result comes back by webhook or a signed link. The same capability also runs here on the web, by email and from Telegram — and soon from our app too.

curl -X POST https://api.kit.forhosting.com/trig/ssa-number-of-solutions \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"side_a":10,"side_b":16,"angle_a":30}'
{
  "side_a": 10,
  "side_b": 16,
  "angle_a": 30
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "trig.ssa_number_of_solutions",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

The API is asynchronous: the call returns a task_id immediately and the result arrives by webhook. Polling is capped at 1 req/s per task.

Per request$0.002

Published price — no tokens, no invented credits. A failed task is never charged.

HTTPCodeMeaning
401unauthorizedMissing or invalid API key.
402insufficient_balanceYour balance doesn't cover the task price.
404unknown_typeThat task type doesn't exist.
429rate_limitedToo many requests. Use the webhook instead of polling.

Read the full KIT documentation →