Thema: Delphi bruch rechnen

Einzelnen Beitrag anzeigen

MCeddy
(Gast)

n/a Beiträge
 
#6

Re: bruch rechnen

  Alt 29. Nov 2003, 14:00
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
  Mit Zitat antworten Zitat