Einführung in die ganzzahlige Division und Restberechnung in C. (Modulo, div, mod), Lektion, Seite 721295
http://www.purl.org/stefan_ram/pub/c_modulo_de ist die kanonische URI dieser Seite.
Stefan-Ram-Startseite

Die ganzzahlige Division und der Rest in C

In C  wird die ganzzahlige Division mit dem Divisionsoperator "/" geschrieben, der auch für die Gleitkommazahlen-Division verwendet wird. Die Division wird dann ganzzahlig ausgeführt, wenn beide Operanden ganzzahlig sind.

Die Modulo-Operation wird in C  mit dem Prozentzeichen "%" notiert. So bedeutet also der Ausdruck "2 % 3" den Wert 2 mod 3.

Das folgende Beispielprogramm zeigt die Verwendung der Modulo-Operation in C.

modulo.c
#include <stdio.h>
int main() 
{ printf( "%d\n", 22 % 7 ); }

stdout
1

Übungsaufgabe   Fuhren *
Ein Taxi kann höchstens drei Touristen vom Hotel zum Aussichtsturm transportieren. Schreiben Sie mit Hilfe der Ihnen bekannten C -Operatoren ein Programm, das die Zahl t  der benötigten Taxis für z.B. 10 Touristen ausgibt. Um das richtige Ergebnis für eine andere Anzahl von Touristen auszugeben, soll im Programm nur das Numeral "10" durch ein entsprechendes anderes Numeral ersetzt werden müssen.
Übungsaufgabe   Stunden *
Schreiben Sie ein C -Programm, das ausgibt, welche Uhrzeit 1000 Stunden nach Mitternacht ist.
Übungsaufgabe   Tage *
Schreiben Sie ein C -Programm, das ausgibt, welcher Tag des Jahres der 193. Tag ist, wenn der 70. Tag des Jahres ein Mittwoch ist. Die Ausgabe soll die Codes 0 bis 6 zur Kennzeichnung der Tage Mittwoch (=0) bis Dienstag (=6) verwenden.
Übungsaufgabe   trunc oder floor? **
Die größte ganze Zahl kleinergleich x  wird auch floor( x  ) geschrieben (es handelt sich also um die ganze Zahl direkt „unter“ x ). Der ganzzahlige Anteil von x  wird auch trunc( x  ) geschrieben (es handelt sich hierbei um die Zahl, die man erhält, indem man alle Stellen nach dem Komma entfernt). ( x  div y  ) wird in manchen Programmiersprachen nach Knuth  als floor( x  / y  ) und in anderen nach Wirth  als trunc( x  / y  ) definiert. Welche der beiden Definitionen wird in C  für die ganzzahlige Division bzw. für die Restberechnung mit dem Operator "%" verwendet?

Von der Stefan-Ram-Startseite ausgehend finden sich oft noch mehr Informationen zu Themen, die auf einer Seite angesprochen wurden. (Eine Verbindung zur Stefan-Ram-Startseite befindet sich ganz oben auf dieser Seite.)  |   Seiteninformation und Impressum  |   Formular für diese Seite betreffende Mitteilungen an den Herausgeber  |   Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten. Diese Seite ist eine Veröffentlichung von Stefan Ram. slrprd, PbclevtugFgrsnaEnz