Modulo-Operator
Teil des Abschnitts Grundlagen der C-Journey von Coddy. Lektion 17 von 63.
Der Modulo-Operator % in C gibt den Rest einer Division zurück. Er wird mit einer einfachen Syntax verwendet:
result = dividend % divisor;- dividend: Die Zahl, die geteilt wird.
- divisor: Die Zahl, durch die der Dividend geteilt wird.
- result: Der Rest der Division.
Zum Beispiel:
int result = 10 % 3;Hier wird 10 durch 3 geteilt. 3 passt dreimal in 10, mit einem Rest von 1. Daher ist result 1.
Wenn der Dividend kleiner als der Divisor ist, passt der Divisor nullmal hinein, sodass der Rest dem Dividend selbst entspricht: 3 % 8 ist 3.
Der Modulo-Operator wird häufig verwendet, um zu prüfen, ob eine Zahl gerade oder ungerade ist:
- Wenn eine Zahl gerade ist, bleibt beim Teilen durch 2 ein Rest von 0.
- Wenn eine Zahl ungerade ist, bleibt beim Teilen durch 2 ein Rest von 1 oder
-1, wenn die Zahl negativ ist. Prüfe daher mitnumber % 2 != 0, ob eine Zahl ungerade ist.
Aufgabe
EinfachSchreibe ein C-Programm, das Folgendes tut:
- Deklariere eine Integer-Variable
numberund initialisiere sie mit dem Wert 17. - Verwende den Modulo-Operator, um den Rest zu berechnen, wenn
numberdurch 5 geteilt wird, und speichere das Ergebnis in einer Variable namensremainder. - Verwende den Modulo-Operator, um festzustellen, ob
numbergerade oder ungerade ist (denk an boolesche Werte). - Gib die Ergebnisse mit drei separaten Aufrufen von
printf()aus, die jeweils mit\nenden, und verwende dabei folgendes Format:
printf("Number: %d\n", number);
printf("Remainder when divided by 5: %d\n", remainder);
printf("%d is even? %d\n", number, is_even);Die erwartete Ausgabe ist:
Number: 17
Remainder when divided by 5: 2
17 is even? 0Probier es selbst
#include <stdio.h>
int main() {
// Variablen hier deklarieren und initialisieren
// Rest berechnen
// Prüfen, ob die Zahl gerade oder ungerade ist
// Ergebnisse ausgeben
return 0;
}Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Grundlagen
2Variablen
DatentypenGanzzahlGleitkommazahl – DoubleZeichenBoolesche WerteKonstantenprintf-GrundlagenRegeln für die Benennung von VariablenTypumwandlung Teil 1Typumwandlung Teil 2Wiederholungsaufgabe3Operatoren
Arithmetische OperatorenModulo-OperatorInkrement/DekrementZuweisungsoperatorenVergleichsoperatorenLogische Operatoren Teil 1Logische Operatoren Teil 2Logische Operatoren Teil 3Wiederholungs-ChallengeÜbe selbstständig: Online-C-Compiler