<?php
# Die folgende Funktion wird immer dann aufgerufen, wenn in ihr Programm Daten eingegeben werden..
# Sie können sie ändern, um andere Quellen zu verwenden.
function input() {
return fgets(STDIN);
}
# Das Programm soll das kleinste gemeinsame Vielfache zweier Zahl, kurz kgV, berechnen. Das kleinste gemeinsame Vielfache zweier ganzen Zahlen A und B ist die kleinste natürliche Zahl, die sowohl ein Vielfaches von A als auch von B ist. Das bedeutet auch, dass einfaches multiplizieren der beiden Zahlen nicht ausreicht, um das kleinste gemeinsame Vielfache zu bestimmen.
# Für die erste Zahl wird die Variable A deklariert.
# Für die zweite Zahl wird die Variable B deklariert.
# Für die Berechnung werden einige Hilfsvariablen benötigt.
# Um die Möglichkeit zu haben, die zwei Zahlen miteinander zu vertauschen zu können, wird die Variable c deklariert.
# Als Speicher für den Zählerstand innerhalb der while Schleife wird die Variable k deklariert.
# Als Abbruchbedingung für die while Schleife wird die Variable r deklariert.
# Die Zwischenergebnisse und das Endergebnis werden in einer Variablen gespeichert. Dafür wird die Variable kgV deklariert.
echo "Geben Sie die erste Zahl an: " . PHP_EOL;
$a = input();
echo "Geben Sie die zweite Zahl an: " . PHP_EOL;
$b = input();
# Die Variable k wird mit dem Wert 0 initialisiert.
$k = 0;
# Hier wird geprüft, ob A kleiner als B ist, falls ja, werden die zwei Zahlen miteinander vertauscht. Der Tausch erfolgt über die Variable c. Im Fall, dass A nicht kleiner als B ist, beginnt die Berechnung.
if ($a < $b) {
$c = $a;
$a = $b;
$b = $c;
}
do {
# Bei jedem Durchlaufen der while Schleife wird der Wert der Variable k um 1 erhöht.
$k = $k + 1;
# In der Variable kgV wird das Zwischenergebnis gespeichert. Dabei wird die kleinere der beiden Zahlen mit dem Wert der Variablen k multipliziert. Da der Wert k sich bei jedem Durchlaufe durch die Schleife um 1 erhöht, wird der Wert der Variablen kgV bei jedem Durchlauf um der Wert der Variablen A erhöht.
$kgV = $a * $k;
# Mithilfe der Modulo Funktion wird geprüft, ob das Zwischenergebnis in Variable kgV bereits das Endergebnis ist. Dazu wird kgV MOD B berechnet. Das Ergebnis der Berechnung wird in der Variablen r gespeichert.
$r = $kgV % $b;
# Solange r ungleich 0 ist, wird die while Schleife durchlaufen. Im Fall, dass r gleich 0 ist, wird die Schleife beendet.
} while ($r != 0);
echo "Das kleinste gemeinsame Vielfache der zwei Zahlen ist: " . PHP_EOL;
echo $kgV . PHP_EOL;
?>