<?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);
}

# Für den Dividenden, also die Zahl geteilt werden soll, wird die Variable dividend deklariert.
# Für den Divisor, also die Zahl, die der Teiler ist, wird die Variable divisor deklariert.
# Für den Quotienten, also das Ergebnis der Division, wird die Variable quotient deklariert.
# Für den Rest wird die Variable rest deklariert.
# Als nächsten werden der Dividend und der Divisor eingelesen. Und die Werte werden den jeweiligen Variablen zugewiesen.
echo "Geben Sie den Dividenden an:" . PHP_EOL;
$dividend = input();
$rest = $dividend;
echo "Geben Sie den Divisor an:" . PHP_EOL;
$divisor = input();

# Um ein Teilen durch null beziehungsweise den Versuch durch null zu teilen, zu verhindern, wird in der nachfolgenden Fallunterscheidung geprüft, ob der Divisor gleich null ist. Im Fall, dass die null als Divisor gesetzt wurde, erfolgt ein entsprechender Hinweis darauf. Falls der Divisor ungleich null ist, beginnt die Rechnung.
if ($divisor == 0) {
    echo "Eine Division durch Null ist nicht möglich." . PHP_EOL;
} else {
    
    # Die Idee hinter der Rechnung ist folgende, solange der Dividend beziehungsweise der Rest größer gleich dem Divisor ist, wird der Divisor davon abgezogen und der Quotient um 1 erhöht. Es handelt sich um eine wiederholte Subtraktion. Wenn der Divisor größer, wird die Berechnung beendet und die Wert des Quotienten und des Rests werden als Ergebnis ausgegeben.
    $quotient = 0;
    $dividend = $rest;
    while ($rest >= $divisor) {
        $rest = $rest - $divisor;
        $quotient = $quotient + 1;
    }
    echo "Der Quotient von " . $dividend . " geteilt durch " . $divisor . " ist " . $quotient . " und der Rest ist " . $rest . PHP_EOL;
}
?>
        
        
akzeptieren ablehen

Diese Website verwendet Cookies und Zählpixel, um Ihnen die bestmögliche Nutzung dieser Website zu ermöglichen.Learn more about cookies sehen Sie auch Datenschutz