Multiplication, Division and Modulo
Multiplication Operator
The multiplication operator *
yields the product of its operands. For instance, if you're trying to determine the amount of water required to fill a pool:
Main.c
12345678910111213141516#include <stdio.h> int main() { int height = 2; // in meters int width = 7; // in meters int length = 10; // in meters // A cubic meter contains one thousand liters int liters = (height * width * length) * 1000; printf("Size of pool: %d liters", liters); return 0; }
Division Operator
The division operator /
divides the left operand by the right one.
Suppose you want to calculate a car's speed:
Main.c
123456789101112#include <stdio.h> int main() { int s = 200; // in meters double t = 3; // three hours double v = s / t; printf("Velocity = %f m/h", v); return 0; }
Using double
variables ensures our result can be a decimal value, providing a more accurate answer. If we only worked with integer types, the result would also be an integer:
int + int => int
int + double => double
Main.c
123456789101112#include <stdio.h> int main() { int s = 200; // in meters int t = 3; // three hours // without `double v` variable printf("Velocity = %d m/h", s/t); return 0; }
It's important to note that merely changing the format specifier won't fix an incorrect integer division:
Main.c
1234567891011#include <stdio.h> int main() { int s = 200; // in meters int t = 3; // three hours printf("Velocity = %f m/h", s/t); // changed specifier return 0; }
However, there's a way to get a correct division without introducing another variable:
Main.c
1234567891011#include <stdio.h> int main() { int s = 200; // in meters double t = 3; // three hours printf("Velocity = %f m/h", s/t); // changed specificator return 0; }
Note
For a division to yield a decimal result, at least one of the operands should be of a decimal type like
double
.
Modulo Operator
The %
operator returns the remainder of a division. For instance:
Main.c
1234567891011#include <stdio.h> int main() { printf("Modulo 8 %% 5 = %d\n", 8 % 5); printf("Modulo 10 %% 3 = %d\n", 10 % 3); printf("Modulo 7 %% 5 = %d\n", 7 % 5); printf("Modulo 20 %% 5 = %d\n", 20 % 5); return 0; }
Note
If you're trying to display the
%
character in a string (e.g., in aprintf
statement), you'd use%%
to represent a single%
. This tells the compiler you want to print the%
character and not use it as a format specifier.
Danke für Ihr Feedback!
Fragen Sie AI
Fragen Sie AI
Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen
Awesome!
Completion rate improved to 2.63
Multiplication, Division and Modulo
Swipe um das Menü anzuzeigen
Multiplication Operator
The multiplication operator *
yields the product of its operands. For instance, if you're trying to determine the amount of water required to fill a pool:
Main.c
12345678910111213141516#include <stdio.h> int main() { int height = 2; // in meters int width = 7; // in meters int length = 10; // in meters // A cubic meter contains one thousand liters int liters = (height * width * length) * 1000; printf("Size of pool: %d liters", liters); return 0; }
Division Operator
The division operator /
divides the left operand by the right one.
Suppose you want to calculate a car's speed:
Main.c
123456789101112#include <stdio.h> int main() { int s = 200; // in meters double t = 3; // three hours double v = s / t; printf("Velocity = %f m/h", v); return 0; }
Using double
variables ensures our result can be a decimal value, providing a more accurate answer. If we only worked with integer types, the result would also be an integer:
int + int => int
int + double => double
Main.c
123456789101112#include <stdio.h> int main() { int s = 200; // in meters int t = 3; // three hours // without `double v` variable printf("Velocity = %d m/h", s/t); return 0; }
It's important to note that merely changing the format specifier won't fix an incorrect integer division:
Main.c
1234567891011#include <stdio.h> int main() { int s = 200; // in meters int t = 3; // three hours printf("Velocity = %f m/h", s/t); // changed specifier return 0; }
However, there's a way to get a correct division without introducing another variable:
Main.c
1234567891011#include <stdio.h> int main() { int s = 200; // in meters double t = 3; // three hours printf("Velocity = %f m/h", s/t); // changed specificator return 0; }
Note
For a division to yield a decimal result, at least one of the operands should be of a decimal type like
double
.
Modulo Operator
The %
operator returns the remainder of a division. For instance:
Main.c
1234567891011#include <stdio.h> int main() { printf("Modulo 8 %% 5 = %d\n", 8 % 5); printf("Modulo 10 %% 3 = %d\n", 10 % 3); printf("Modulo 7 %% 5 = %d\n", 7 % 5); printf("Modulo 20 %% 5 = %d\n", 20 % 5); return 0; }
Note
If you're trying to display the
%
character in a string (e.g., in aprintf
statement), you'd use%%
to represent a single%
. This tells the compiler you want to print the%
character and not use it as a format specifier.
Danke für Ihr Feedback!