Wednesday, March 22, 2017

HP 15C: Pythagorean Triples

HP 15C:  Pythagorean Triples

This program calculates the Pythagorean triple (A, B, C) such that A^2 + B^2 = C^2 by the formulas:

A = K * (M^2 – N^2)
B = K * (2 * M * N)
C = K * (M^2 + N^2)

The conditions are M, N, and K are all positive integers where M > N.
Store M into memory 0, N into memory 1, and K into memory 2.  A, B, and C are stored in memories 3, 4, and 5, respectively.  If no such combination can be found, a single zero (0) is returned.

 Step Key Code 001 LBL A 42, 21, 11 002 RCL 1 45, 1 003 RCL 0 45, 0 004 X≤0 43, 10 005 GTO 0 22, 0 006 RCL 0 45, 0 007 X^2 43, 11 008 RCL 1 45, 1 009 X^2 43, 11 010 - 30 011 STO 3 44, 3 012 LST X 43, 36 013 2 2 014 * 20 015 + 40 016 STO 5 44, 5 017 RCL 0 45, 0 018 RCL* 1 45, 20, 1 019 2 2 020 * 20 021 STO 4 44, 4 022 RCL 2 45, 2 023 STO* 3 44, 20, 3 024 STO* 4 44, 20, 4 025 STO* 5 44, 20, 5 026 RCL 3 45, 3 027 X^2 43, 11 028 RCL 4 45, 4 029 X^2 43, 11 030 + 40 031 RCL 5 45, 5 032 X^2 43, 11 033 - 30 034 X=0 43, 20 035 GTO 1 22, 1 036 LBL 0 42, 22, 1 037 0 0 038 RTN 43, 32 039 LBL 1 42, 21, 1 040 RCL 3 45, 3 041 R/S 31 042 RCL 4 45, 4 043 R/S 31 044 RCL 5 45, 5 045 RTN 43, 32

Example:  Input:  R0 = M = 4,  R1 = N = 1, R2 = 2.   Output:  30, 16, 34

This blog is property of Edward Shore, 2017.