Autor Beitrag
Accalon
Hält's aus hier
Beiträge: 7



BeitragVerfasst: Mo 31.03.03 08:31 
Hallo zusammen,

hab da mal a kleines Problem, wo ich mal jemand brauch, der in Mathematik ziemlich fit ist.

Ich da ein Programm, welches mit 2 Brüchen die vier Grundrechenarten durchführen soll. Also Bruch 1 + Bruch 2, Bruch 1 - Bruch 2, Bruch 1 * Bruch 2 und Bruch 1 / Bruch 2.
Des is ansich ja kein Problem, und des Programm läuft soweit auch schon. Anschließend sollen die Brüche noch gekürzt werden. Also wenn als Ergebnis z.B. 114/18 rauskommt, kann man des ja in 6 Ganze und 6/18 kürzen. Des läuft auch schon.

Mein Problem ist jetzt allerdings, dass die in dem Fall übrigen 6/18 ja noch in 1/3 gekürzt werden können. Und da bräuchte ich jetzt jemand, der mir mal schreiben kann, wie ich da vor gehen muss.

Noch ne kleine Info am Rande: Die 2 Brüche bestehen aus insgesamt vier Variablen. Zähler_Bruch_1, Nenner_Bruch_1, Zähler_Bruch_2 und Nenner_Bruch_2.
Das Ergebnis besteht auch aus den Variablen Zähler und Nenner sowie einer weiteren Variable für die Ganzzahl.

Danke im vorraus,

Accalon
georgfischerx
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 37



BeitragVerfasst: Mo 31.03.03 08:59 
Titel: Brüche kürzen
Du musst den GGT der zwei Zahlen (Zähler, Nenner) berechnen
und damit den Bruch kürzen.

Wie man den GGT berechnet, findest Du in jedem besseren
Mathe-Buch.

Gruss, Georg
UGrohne
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Veteran
Beiträge: 5502
Erhaltene Danke: 220

Windows 8 , Server 2012
D7 Pro, VS.NET 2012 (C#)
BeitragVerfasst: Mo 31.03.03 10:43 
Hab da mal im Info-Unterricht ne Bruchaddition geschrieben, da kam das dann vor, hab Dir hier den Code für den GGT rauskopiert:

ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
function tform1.ggt(a,b : integer):integer;
var rest: integer;
begin
     repeat
          rest:= a mod b;
          a:= b;
          b:= rest;
     until    rest= 0;
              ggt:= a;
end;


Gruß
Motzi
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2931

XP Prof, Vista Business
D6, D2k5-D2k7 je Prof
BeitragVerfasst: Mo 31.03.03 11:11 
Den ggT berechnest du am besten mit dem Euklidschen Algorihtmus. Den Code dazu hat dir UGrohne bereits gepostet. Dann einfach nur noch Nenner und Zähler jeweils du den ggT dividieren und die Sache hat sich...

_________________
gringo pussy cats - eef i see you i will pull your tail out by eets roots!