Brüche kürzen
-
Hallo Leute,
ich möchte ein Programm schreiben, dass 2 Brüche miteinander addiert. Den Code dafür habe ich soweit schon selber programmiert. Nun ist das Problem noch mit dem Kürzen. Ich komme einfach nicht drauf wie ich das machen soll. Code funktioniert; Bsp. 1/2 + 1/2 kommt dann 4/4 raus.
Hoffe es kann mir jemand weiterhelfen.Gruß fastshadowc
int main() { int zaehler; // Deklaration Zähler Ergebnisbruch int nenner; // Deklaration Nenner Ergebnisbruch struct bruch { // Struktur für Brüche int zaehler; int nenner; }; struct bruch b1; struct bruch b2; cout << "Zaehler Bruch 1: "; // Eingabe Zähler von Bruch 1 cin >> b1.zaehler; cout << endl; cout << "Nenner Bruch 1: "; // Eingabe Nenner von Bruch 1 cin >> b1.nenner; cout << endl; cout << "Zaehler Bruch 2: "; // Eingabe Zähler von Bruch 2 cin >> b2.zaehler; cout << endl; cout << "Nenner Bruch 2: "; // Eingabe Nenner von Bruch 2 cin >> b2.nenner; cout << endl << endl; cout << "Bruch 1: " << b1.zaehler << "/" << b1.nenner << endl; // Anzeige Bruch 1 cout << "Bruch 2: " << b2.zaehler << "/" << b2.nenner << endl; // Anzeige Bruch 2 zaehler = (b1.zaehler*b2.nenner)+(b1.nenner*b2.zaehler); // Berechnung des Ergebnisbruches nenner = b1.nenner*b2.nenner; // jedoch ungekürzt cout << endl << endl; cout << "Ergebnisbruch: " << endl; cout << zaehler << "/" << nenner; cout << endl << endl; system("PAUSE"); }
-
int ggt=euklid(zaehler,nenner); zaehler/=ggt; nenner/=ggt;Dazu guuglen nach dem euklidischen Algorithmus, damit kann man prima den größten gemeinsamen Teiler (GGT) zweier Zahlen herausfinden.
-
Den erweiterten euklidischen Algorithmus würde ich dir aber nicht empfehlen, eher den normalen...
-
habe es dank dem euklidischen Algorithmus herausbekommen.
Danke für die Antwort.