Modulo Operator
Teil des Abschnitts Grundlagen der PHP-Journey von Coddy — Lektion 16 von 71.
Der Modulo-Operator (%) gibt den Rest nach einer Division zurück. Wenn man eine Zahl durch eine andere teilt, gibt der Modulo-Operator den verbleibenden Rest an.
<?php
echo 10 % 3; // Ausgabe: 1
?>Hier ergibt 10 geteilt durch 3 gleich 3 mit einem Rest von 1. Der Modulo-Operator gibt diesen Rest zurück.
Eine häufige Verwendung von Modulo ist die Überprüfung, ob eine Zahl gerade oder ungerade ist. Bei der Division durch 2 sind die einzig möglichen Reste 0 oder 1 – wenn also eine Zahl geteilt durch 2 keinen Rest hat, ist sie gerade; wenn der Rest 1 ist, ist sie ungerade:
<?php
$number = 8;
echo $number % 2; // Ausgabe: 0 (gerade)
$number = 7;
echo $number % 2; // Ausgabe: 1 (ungerade)
?>Dies funktioniert nur für Prüfungen auf gerade/ungerade, da die Division durch 2 immer einen Rest von entweder 0 oder 1 ergibt. Bei anderen Divisoren kann der Rest jeder Wert von 0 bis zu eins weniger als der Divisor sein.
Weitere Beispiele, die Ihnen helfen, das Muster zu verstehen:
<?php
echo 15 % 4; // Ausgabe: 3 (15 = 4*3 + 3)
echo 20 % 5; // Ausgabe: 0 (20 = 5*4 + 0)
$dividend = 17;
$divisor = 5;
echo $dividend % $divisor; // Ausgabe: 2 (17 = 5*3 + 2)
?>Aufgabe
EinfachLies zwei Zahlen von der Eingabe ein: einen Dividenden und einen Divisor.
Berechne und gib den Rest aus, wenn die erste Zahl durch die zweite Zahl geteilt wird.
Beispiel:
Wenn die Eingaben 17 und 5 sind, sollte die Ausgabe 2 sein (da 17 ÷ 5 = 3 mit einem Rest von 2).
Probier es selbst
<?php
// Eingabe einlesen
$dividend = intval(fgets(STDIN));
$divisor = intval(fgets(STDIN));
// TODO: Schreibe deinen Code unten, um den Rest zu berechnen
// Ergebnis ausgeben
echo $remainder;
?>Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Grundlagen
4Comparison & Logical Operators
Comparison OperatorsEquality & IdentityLogical Operators Part 1Logical Operators Part 2Recap - Simple Logic2Variables and Data Types
NumbersStrings and QuotesBooleansNaming ConventionsRecap - Variable InitEmpty VariablesString ConcatenationGetting User InputCast to Different Types5Conditional Logic
If StatementIf - ElseThe Ternary OperatorNull Coalescing OperatorSwitch StatementRecap - Making Decisions3Basic Operators
Arithmetic OperatorsModulo OperatorExponentiation OperatorCombined AssignmentIncrement/DecrementOperator PrecedenceRecap - Simple CalculationsString Operators