Contenido del Curso
Fundamentos de C
Fundamentos de C
Multiplicación, División y Módulo
Operador de Multiplicación
El operador de multiplicación *
produce el producto de sus operandos.
Por ejemplo, si intentas determinar la cantidad de agua necesaria para llenar una piscina:
Main
#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; }
Operador de División
El operador de división /
divide el operando izquierdo por el derecho.
Supongamos que quieres calcular la velocidad de un automóvil:
Main
#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; }
El uso de variables double
asegura que nuestro resultado puede ser un valor decimal, proporcionando una respuesta más precisa. Si sólo trabajáramos con tipos enteros, el resultado también sería un entero:
Main
#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; }
Es importante tener en cuenta que el mero cambio del especificador de formato no solucionará una división incorrecta de enteros:
Main
#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; }
Sin embargo, hay una forma de obtener una división correcta sin introducir otra variable:
Main
#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; }
Nota
Para que una división produzca un resultado decimal, al menos uno de los operandos debe ser de tipo decimal como
double
.
Operador de módulo
El operador %
devuelve el resultado de una división. Por ejemplo:
Main
#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; }
Nota
Si está intentando mostrar el carácter
%
en una string (por ejemplo, en una sentenciaprintf
), usaría%%
para representar un único%
. Esto indica al compilador que desea imprimir el carácter%
y no utilizarlo como especificador de formato.
¡Gracias por tus comentarios!