Table of Contents

Anhang: KGT

Dieses Beispiel berechnet das kleinste gemeinsame Vielfache (KGT) zweier Zahlen.

Programm

var a, b, x, y;
procedure gcd;
var t;
begin
  while y # 0 do
  begin
    t := x;
    x := y;
    y := t - (t / y) * y
  end
end;
begin
  ? a;
  ? b;
  x := a;
  y := b;
  call gcd;
  ! (a / x) * b
end.

📥 Programm herunterladen

Erklaerung

  • Der groesste gemeinsame Teiler (GGT) wird mit dem Euklidischen Algorithmus ermittelt.
  • Aus GGT wird das KGT berechnet: KGT = (a / GGT) * b.

Details

  • KGT aus GGT abgeleitet: (a/GGT)*b.
  • Nutzt Euklidischen Algorithmus.

Beispiel

Eingabe:

12 18

Ausgabe:

36

Testfaelle

  • 6 8 -> 24
  • 7 3 -> 21

Ausfuehrung

Beispiel:

dotnet run --project src/Pl0.Cli -- examples/appendix/kgt/program.pl0

Tipp: Fuege --list-code hinzu, um den P-Code zu sehen. Fuege noch --wopcod hinzu, um zusaetzlich den Op-Code anzuzeigen.

P-Code anzeigen:

dotnet run --project src/Pl0.Cli -- examples/appendix/kgt/program.pl0 --list-code

P-Code mit Op-Codes anzeigen:

dotnet run --project src/Pl0.Cli -- examples/appendix/kgt/program.pl0 --list-code --wopcod