Kleinstes gemeinsames Vielfaches in JavaScript berechen
Hallo, wir haben im Informatik-Unterricht die Aufgabe bekommen, in JavaScript einen Bruchtaschenrechner zu programmieren. Erstmal bin ich jetzt bei der Addition. Brüche lassen sich bekanntlich addieren, indem man es auf die selben Nenner bringt, und dann nur die Zähler addiert. Zum Kürzen brauche ich allerdings das kgV. Ich habe im Internet zwar bereits funktionierende Scripts dazu gefunden, aber ein Script ohne, dass man durchsieht halte ich für sinnlos. Deshalb wollte ich mal fragen, ob mir jemand erklären kann, wie so ein Script aussieht.
Ich würde eine Schleife durchgehen, mit der du immer beide Zahlen multiplizierst und dann am Ende jedes Durchlaufes prüfst ob die beiden Zahlen den gleichen Wert haben. Falls die beiden Zahlen gleich sind, hast du deinen kleinsten gemeinsamen Nenner und du kannst aus der Schleife herausspringen und mit diesem Nenner weiter rechnen oder ihn ausgeben. Das Problem ist, dass nicht beide Zahlen mit dem gleichen Wert multipliziert werden, wenn du beispielsweise die zwei Zahlen 2 und 5 hast, wäre der kleinste gemeinsame Nenner die 10.
Also müsste die 5 mit der zwei multipliziert werden, wobei die 2 mit der 5 multipliziert werden müsste. Man merkt zwar, eine gewisse Ähnlichkeit, da einfach die beiden Zahlen nur vertauscht sind, das würde aber nicht überall funktionieren. Bei der 6 und der 3 wäre der kleinste gemeinsame Nenner die 12. Das würde für die 6 eine Multiplikation mit der 2 und für die 3 eine Multiplikation mit der 4 bedeuten, hier geht dieses Muster schon wieder verloren.
Das einfachste ist eine Schleife, welche A mit x Multipliziert. Das Ergebnis teilst du durch B. Kommt als Lösung eine ganze Zahl kannst du die Brüche mit diesen beiden Faktoren erweitern. Andernfalls x um ein erhöhen und so weiter. Effizienter ist es jedoch, wenn du zu erst über den euklidischen Algorithmus den ggT berechnest und anschließen über a*b = ggT(a,b)*kgv(a,b) das kgV. Den euklidischen Algorithmus kannst du entweder rekursiv oder iterativ implementieren.
Link dieser Seite https://www.talkteria.de/forum/topic-161791.html
Ähnliche Themen
Weitere interessante Themen
- Schöne Blatt Pflanze für die Wohnung 1072mal aufgerufen · 1 Antworten · Autor: Rubbelfeld · Letzter Beitrag von Verbena
Forum: Garten & Pflanzen
- Schöne Blatt Pflanze für die Wohnung
- Palmen für die Wohnung 3014mal aufgerufen · 1 Antworten · Autor: Dreddi · Letzter Beitrag von Verbena
Forum: Garten & Pflanzen
- Palmen für die Wohnung
- Was kann man gegen eine tropfende Birkenfeige tun? 1862mal aufgerufen · 1 Antworten · Autor: helgak62 · Letzter Beitrag von Verbena
Forum: Garten & Pflanzen
- Was kann man gegen eine tropfende Birkenfeige tun?
- Verträgt Banane chemisches Anti Insekten Mittel? 1358mal aufgerufen · 1 Antworten · Autor: Wawa666 · Letzter Beitrag von Verbena
Forum: Garten & Pflanzen
- Verträgt Banane chemisches Anti Insekten Mittel?