2021=3*x/y+3x? Meine Frage ist nun, ob es einen Algorithmus gibt mit dem man alle ganzen Zahlen (Z) für x und y findet, die diese Gleichung erfüllen?
Diese Gleichung beschreibt eine Funktion, die unendlich Wertepaare für x und y hergibt. Ich scheitere aber jedes Wertepaar x und y aus den GANZEN ZAHLEN zu finden, die diese Gleichung erfüllt.
Ich danke für das Lesen bis hierhin ;)
3 Antworten
![](https://images.gutefrage.net/media/user/mihisu/1507493208281_nmmslarge__27_27_495_495_365edc29f3a8f4bb31cf67220050d253.png?v=1507493210000)
Idee: Löse die Gleichung nach x auf. Untersuche für welche ganzen Zahlen y man mit dieser aufgelösten Gleichung einen ganzzahligen x-Wert erhält.
(Also das wäre hier quasi sowas wie ein entsprechender Algorithmus: 1. Schritt: Gleichung nach x auflösen. 2. Schritt: Untersuchen für welche ganzen Zahlen y man ganze Zahlen x erhält. 3. Schritt: Mit diesen y-Werten und der aufgelösten Gleichung jeweils den x-Wert berechnen.)
============
y = 0 ist offensichtlich nicht im Definitionsbereich und damit auch nicht Teil einer Lösung. Für y = -1 erhält man 2021 = 0, was eine falsche Aussage ist, weshalb auch y = -1 nicht Teil einer Lösung sein kann. Deshalb kann man im Folgenden y ∉ {0, -1} annehmen.
Für y ∈ ℤ ∖ {0, -1} kann man die Gleichung
nach x auflösen und erhält äquivalent zu dieser Gleichung...
Nun soll x eine ganze Zahl sein, was genau dann der Fall ist, wenn 3 ⋅ (y + 1) ein Teiler von 2021 ⋅ y ist. Insbesondere müssen 3 und y + 1 beides Teiler von 2021 ⋅ y sein.
Für y ∈ ℤ ∖ {0, -1} ist ggT(y, y + 1) = 1. Da also y und y + 1 teilerfremd sind, ist y + 1 genau dann ein Teiler von 2021 ⋅ y, wenn y + 1 ein Teiler von 2021 ist. Mit der Primfaktorzerlegung 2021 = 43 ⋅ 47 kann man schnell die Teiler von 2021 finden...
Dies sind also die einzigen Zahlen, die für y + 1 in Frage kommen. Dementsprechend erhält man dann die zugehörigen y-Werte, und daraus wiederum mit x = (2021 ⋅ y)/(3 ⋅ (y + 1)) die entsprechenden x-Werte.
[Da die Primzahl 3 kein Teiler von 2021 ist, muss 3 ein Teiler von y sein, damit 3 ein Teiler von 2021 ⋅ y ist. Damit erhält man ein weiteres Kriterium, mit welchem man die Kandidaten weiter aussortieren kann. Aber spätestens bei der Berechnung des x-Wertes merkt man dann sowieso, dass man bei entsprechend auszuschließenden Kandidaten keine ganze Zahl für x erhält, weshalb ich mir das spare und einfach den x-Wert berechne.]
- y + 1 = 1 liefert y = 0, was wegen y ∈ ℤ ∖ {0, -1} ausgeschlossen ist.
- y + 1 = -1 liefert y = -2 und x = 4042/3, wobei 4042/3 jedoch keine ganze Zahl ist.
- y + 1 = 43 liefert y = 42 und x = 658.
- y + 1 = -43 liefert y = -44 und x = 2068/3, wobei 2068/3 jedoch keine ganze Zahl ist.
- y + 1 = 47 liefert y = 46 und x = 1978/3, wobei 1978/3 jedoch keine ganze Zahl ist.
- y + 1 = -47 liefert y = -48 und x = 688.
- y + 1 = 2021 liefert y = 2020 und x = 2020/3, wobei 2020/3 jedoch keine ganze Zahl ist.
- y + 1 = -2021 liefert y = -2022 und x = 674.
Ergebnis: Die einzigen ganzzahligen Lösungen der Gleichung sind...
![](https://images.gutefrage.net/media/user/ralphdieter/1444750340_nmmslarge.jpg?v=1444750340000)
Offensichtlich muss 3x/y ganzzahlig sein und in der Restklasse 2 (mod 3) liegen, also 3x/y=3z+2 (z∈ℤ). So kommt man auf
673=z+x
wobei y=3x/(3z+2) ganzzahlig sein muss. Insbesondere muss dazu 3z+2 ein Teiler von x sein, also gilt |3z+2|≤|x|. Das schränkt den Wertebereich auf |3z+2|≤|673–z| ein: z∈[–337, 167] bzw. x∈[506, 1110].
Mit Durchprobieren findet man nun die ganzzahligen Lösungen
(x,y) ∈ { (658, 42), (674, -2022), (688, -48) }
___
mihisu hat mit einer etwas geschickteren Umformung dieselben Lösungen mit weniger Probieren gefunden. Das ist zweifellos eleganter; aber ich bin einfach zu alt/faul für sowas und werfe Python an, sobald ich den Suchbereich auf unter 1 Milliarde Möglichkeiten eingegrenzt habe :)
![](https://images.gutefrage.net/media/default/user/15_nmmslarge.png?v=1551279448000)
Wie wäre es wenn du das ganze in eine Geradengleichung umwandelst und dir mal die Steigung anschaust?
![](https://images.gutefrage.net/media/default/user/15_nmmslarge.png?v=1551279448000)
Wenn du gleich richtig geklammert hättest hätte ich die Antwort so nicht gegeben. Hinweis: wenn du einen Bruchstrich einfach mal eben so schreibst gehe ich davon aus dass alles folgende unter dem Bruchstrich steht. Der Brduchstrich ersetzt nämlich die Klammer.
![](https://images.gutefrage.net/media/default/user/8_nmmslarge.png?v=1551279448000)
Vollkommen richtig, finde es nur sehr unübersichtlich Gleichungen per Computer zu schreiben. Ich wollte es nur übersichtlicher machen. ;)
![](https://images.gutefrage.net/media/default/user/15_nmmslarge.png?v=1551279448000)
Tja, das war nicht nur nicht übersichtlicher, sondern mathematisch falsch. Damit sorry.
![](https://images.gutefrage.net/media/user/Roderic/1444750288_nmmslarge.jpg?v=1444750288000)
wenn man nach y umformt. Erhält man eine Funktion f(x)=3x*1/(2021-3x)
Die Idee ist nicht schlecht, leider weiß ich noch nicht wie mir das weiterhelfen soll.