Hallo Cosa. Wir haben das erst neulich in der Schule gehabt. Hier ein paar Codeschnipsel! Hoffe, das sie dir weiterhelfen
Delphi-Quellcode:
type
tbruch = record
zaehler, nenner : integer;
end;
procedure bruch_addieren(bruch1, bruch2 : tbruch; var bruch3 : tbruch);
begin
bruch3.nenner := bruch1.nenner * bruch2.nenner;
bruch3.zaehler := bruch1.zaehler * bruch2.nenner + bruch2.zaehler * bruch1.nenner;
end;
procedure bruch_multiplizieren(bruch1, bruch2 : tbruch; var bruch3 : tbruch);
begin
bruch3.nenner := bruch1.nenner * bruch2.nenner;
bruch3.zaehler := bruch1.zaehler * bruch2.zaehler;
end;
procedure bruch_erweitern(var bruch6 : tbruch; erweiterungszahl : integer);
begin
bruch6.nenner := bruch6.nenner * erweiterungszahl;
bruch6.zaehler := bruch6.zaehler * erweiterungszahl;
end;
function ggT (a, b: integer): integer; // ggt = Größte Gemeinsamme Teiler
VAR
h, rest : integer;
BEGIN
IF a < b THEN BEGIN
h := a; a := b; b := h
END; {of then}
WHILE b > 0 DO BEGIN
rest := a MOD b;
a := b; b := rest
END; {of while}
ggT := a
END; {of ggT}
procedure bruch_kuerzen(var bruch7 : tbruch);
var
kzahl : integer;
begin
kzahl := ggt(bruch7.nenner, bruch7.zaehler)
bruch7.nenner := bruch7.nenner div kzahl;
bruch7.zaehler := bruch7.zaehler div kzahl;
end;
mfg
MCeddy2002