Wie finden Sie pythagoreische Tripel, die ungefähr einem rechtwinkligen Dreieck mit einem bestimmten Winkel entsprechen?

Winkel gegeben θ , kann ich ein pythagoräisches Tripel finden ( A , B , C ) so dass das zugehörige rechtwinklige Dreieck einen möglichst nahen Winkel enthält θ wie ich will? Und wenn ja, wie? Angenommen zum Beispiel θ = 56.25 . Wie finde ich pythagoreische Tripel? ( A , B , C ) so dass bräunen ( 56.25 ) B / A ? Wenn man sich die Formel von Euklid ansieht, ist dies dasselbe wie die Frage nach teilerfremden nicht-beide-ungerade ganzen Zahlen M Und N so dass

bräunen ( 56.25 ) 2 M N M 2 N 2
aber das macht eine Brute-Force-Suche nur einfacher. Gibt es eine prozedurale Möglichkeit, solche beliebig genauen Tripel zu erzeugen?

Ich zeige in meiner Antwort, wie man ein ungefähres Tripel für findet 0 < θ < 45
F ( 43 , 23 ) = ( 1320 , 1978 , 2378 )
bräunen 1 1320 1978 33.716
90 33.716 56.284
Mit der Formel von Euklid
A = M 2 k 2 B = 2 M k C = M 2 + k 2
F ( M , k ) = F ( 2434 , 1301 ) = ( 4231755 , 6333268 , 7616957 )   56.2499961586429
Dieses Dreieck ist innerhalb 1 % von 1 Bogensekunde aus 56.25

Antworten (5)

Lassen R [ 0 , ) . Das gestellte Problem ist äquivalent zum Finden M N N so dass R 2 M N M 2 N 2 .

So wollen wir

R M 2 2 M N R N 2 0
Nun nehme an R , N ist gegeben und wir wollen finden M das die obige Gleichung erfüllt (nicht unbedingt natürlich).

Daher,

M = N ( 1 + 1 + R 2 ) R
Also wollen wir eine Auswahl finden N das macht den obigen Ausdruck willkürlich nahe an eine ganze Zahl.

Aber das ist relativ einfach. Lassen C = R 1 + 1 + R 2 . Daher, N = M C . Wir wollen also nur einen Bruchteil finden N M nahe bei C . Einfach!

Zusammenfassung :

Gegeben θ , berechnen

C = Sünde θ 1 + cos θ = bräunen θ 2
Finde dann einen Bruch N M willkürlich nahe C . Ersatz M , N in Ihre Formel und voila!

Dies sieht sehr eng verwandt mit der Standardmethode aus, um pythagoreische Tripel zu finden, indem man sich darauf reduziert, rationale Punkte auf dem Einheitskreis zu finden und diese dann entsprechend der Steigung der Linie zu klassifizieren, die einen Punkt verbindet ( 1 , 0 ) . Sie sagen also nur, finden Sie die Steigung der Verbindungslinie ( 1 , 0 ) Zu ( cos θ , Sünde θ ) , nehmen Sie eine rationale Neigung, die willkürlich nahe daran liegt, und finden Sie dann den anderen Schnittpunkt der Geraden durch ( 1 , 0 ) mit dieser rationalen Steigung mit dem Einheitskreis.
@DanielSchepler Eigentlich ist es genau das. Toller Einblick!
3b1b beschreibt dies auch in Bezug auf das Quadrieren von Gaußschen ganzen Zahlen .

Das funktioniert für 0,01 < bräunen θ < 1 beschränkt auf Dezimalzahlen ausdrückbar als 3 -stellige Brüche. Für bräunen θ > 1 ,   bräunen   ( 90 θ )   sollte benutzt werden. Für bräunen θ = 1 ,   Die besten Tripel sind wo A 2 + ( A ± 1 ) 2 = C 2 .

Wir beginnen mit der Formel von Euklid

A = M 2 k 2 B = 2 M k C = M 2 + k 2

Für bräunen θ = 1 ,   die Werte für A 2 + ( A ± 1 ) 2 = C 2   Drillinge (zu füttern ( M , k ) -Werte nach Euklids Formel) können sequentiell mit erzeugt werden k N + 1 = k N + 2 k N 2 + ( 1 ) k N . Das sind Zauberzahlen { 1 , 2 , 5 , 12 , } paarweise zu verwenden wie   ( 2 , 1 ) ,   ( 5 , 2 ) ,   ( 12 , 5 ) .   Für bräunen θ < 1 ,   Wir verwenden diese Schritte

  1. Wandeln Sie die Tangente in a um 1 -Zu- 3 Ziffernbruch zur Identifizierung des A:B-Verhältnisses.

  2. Löse die Tangensfunktion nach k

  3. Testen Sie eine Reihe von M -Werte, um zu sehen, was a ergibt k -Wert, der einer Ganzzahl am nächsten kommt,

  4. Verwenden M und der gerundete Wert von k um das Tripel mit der Formel von Euklid zu erzeugen.

bräunen θ = A B = M 2 k 2 2 M k 2 M k A = ( M 2 k 2 ) B B k 2 + 2 A k M B M 2 = 0 k = A 2 M 2 + B 2 M 2 A M B  für  2 M 50

Dieser Bereich wird gewählt, um Brüche bis zu unterzubringen 3 Ziffern.

Beispiel

bräunen 39 0,80978 149 184 A = 149 B = 184

k = 149 2 M 2 + 184 2 M 2 149 M 184  für  2 M 30 und wir finden die beste Passform ist  M = 21 k 10.016 10 F ( 21 , 10 ) = ( 341 , 420 , 541 ) bräunen θ 341 420 0,81190476 bräunen 1 0,81190476 39.07

Für jede positive ganze Zahl M > N ,

z = M + N ich = R ϕ z 2 = ( M + N ich ) 2 = ( M 2 N 2 ) + 2 M N ich = R 2 2 ϕ
Wo R = M 2 + N 2 Und bräunen ϕ = N M .

Daher { M 2 + N 2 , M 2 N 2 , 2 M N } ist ein pythagoräisches Triplett.

In Ihrem Fall 2 ϕ = 56.25 oder ϕ = 28.125 .

Finden Sie das einfachste M > N so dass bräunen 28.125 = N M .

bräunen 28.125 = N M 0,5 N M

M = 2 Und N = 1 .

Meine "andere" Antwort verwendete Euklids Formel, fand Tripel für Cotangens anstelle von Tangens und musste verwendet werden ( 90 θ ) für Winkel oben 45 . Diese Antwort verwendet eine Formel, die ich entwickelt habe 2009 und findet Tripel für 0 < θ < 90 mit einem Fehler von (normalerweise) 5 Bogensekunden oder weniger–– und extreme Bruchteile einer Sekunde, wenn Winkel sich Null von neunzig Grad nähern.

A =   ( 2 N 1 + k ) 2 k 2 = ( 2 N 1 ) 2 + 2 ( 2 N 1 ) k B = 2 ( 2 N 1 + k ) k = 2 ( 2 N 1 ) k + 2 k 2 C =   ( 2 N 1 + k ) 2 + k 2 = ( 2 N 1 ) 2 + 2 ( 2 N 1 ) k + 2 k 2
Wir beginnen mit B A und löse nach k Testen eines definierten Bereichs von N -values, um zu sehen, welche Ganzzahl größer als Null am nächsten ist. Die Werte von A Und B sind das gebrochene Äquivalent von Tangens mit einem Nenner ( A ) bis zu dreistellig.
B A = 2 ( 2 N 1 ) k + 2 k 2 ( 2 N 1 ) 2 + 2 ( 2 N 1 ) k B ( ( 2 N 1 ) 2 + 2 ( 2 N 1 ) k ) = A ( 2 ( 2 N 1 ) k + 2 k 2 ) k = ( 2 N 1 ) ( B A + A 2 + B 2 ) 2 A für 2 + 1 bräunen θ N 100 + 1 bräunen θ 0 < θ < 90

Verwendung der 39 Beispiel, bräunen θ 0,80978403 ,   A = 184 ,   B = 149

k = [ ( 2 N 1 ) ( 149 184 + 184 2 + 149 2 ) 2 ( 184 ) ] für 2 + 1   0,80978403 N 100 + 1 0,80978403 F ( N , k ) = F ( 16 , 17 ) = ( 2015 , 1632 , 2593 ) 39.00489701

Für andere Beispiele haben wir

0,01 F ( 5731 , 1 ) = ( 131377443 , 22924 , 131377445 ) 0,009997519 30 F ( 77 , 56 ) = ( 40545 , 23408 , 46817 )   29.9992934272601 45 F ( 50 , 70 ) = ( 23661 , 23660 , 33461 )   44.9987892102977 56.25 F ( 14 , 31 ) = ( 2403 , 3596 , 4325 )   56.2474707665776 60 F ( 77 , 209 ) = ( 87363 , 151316 , 174725 )   59.9998106752595 89,99 F ( 39 , 441139 ) = ( 67941335 , 389275170048 , 389275175977 ) 89.9899999999744

Für einen Winkel θ Sie können ein pythagoreisches Tripel finden ( 2 M N , | M 2 N 2 | , M 2 + N 2 ) entspricht einem rechtwinkligen Dreieck, das einen Winkel von ungefähr enthält θ indem Sie eine rationale Näherung finden

M N bräunen θ 2
Sie können eine "gute" rationale Annäherung an finden bräunen θ 2 Verwenden von Techniken aus diesem Q&A-Beitrag . Beachten Sie, dass die Antwort von Don Thousand die Inspiration für diese Erkenntnis ist; Ich wollte es kompakt ausdrücken.