El lenguaje de programación C fue diseñado como un sistema de lenguaje de diseño legible para los programadores que trabajen con el desarrollo de software. La sintaxis y las operaciones de C (por ejemplo, expresiones matemáticas y estructuras de bucle ) son más intuitivos para un informático que trabaja en software complejo . Operaciones matemáticas sencillas, como la operación de módulo (o resto ) requieren un solo símbolo , y permiten a los programadores desarrollar funciones que calculan los números pares e impares . C Módulo Operador
El operador de módulo en C (representado como el símbolo "%" ) actúa como una especie de división. Sin embargo , en lugar de dividir dos números y devolver el cociente para el usuario , la operación de módulo divide dos números y devuelve el resto como un número entero . En este ejemplo , dos operaciones de módulo , se producen , cada uno en devolver un valor idéntico :
int x = 11 % 4 //resto de 11/4 = 3
int y = 13 % 5 //resto del 13/5 = 3
Uso módulo para determinar Par /impares
Debido a que la operación de módulo determina el resto de la operación de división de los dos números , parece lógico que el operador de módulo se utiliza para determinar números pares o impares . Un número par , por definición , es cualquier número divisible por dos . Por lo tanto , si un número que devuelve un cero para el resto cuando un módulo 2 . Más simplemente , un número " n " es aun cuando " n% 2 " es igual a cero. Por ejemplo, este código define una función que toma un entero y devuelve un entero (0 o 1 ) en función de si el número es par .
IsEven int (int x )
{
return ( x % 2 ) ;
}
Un Par o Impar Número Generación Función
Uso del operación de módulo , entonces se convierte en muy fácil de crear una función que genera par o impar números. Un programador podría ser útil para generar un campo de números pares o impares . En este caso , un simple para un bucle y introducido por el usuario tamaño del campo son todo lo que se necesita para crear una colección de números :
vacío evenGenerate ( int tamaño )
{
< p> int i = 0 ;
para ( i; i < = tamaño ; i + +) {
if ( i % 2 == 0 )
cout << i << endl ; }
}
Esta función genera números pares . El programador sólo cambia el "if" para leer " if ( i % 2 == 1 ) " para generar números impares .
Alternativas al Módulo
Módulo en sí misma no es una operación sencilla . Más bien , el módulo contiene tres cálculos matemáticos en uno . Esto es debido a que la operación de " x% y " realmente es igual a " x - . Y * ( x /y ) " Sabiendo esto , un programador podría romper la operación, o encontrar formas de incorporar las partes de la operación con otras operaciones para optimizar el tiempo . Sin embargo , para el uso general y la facilidad de la codificación del operador de módulo funciona bien . Lo siguiente sirve como un ejemplo de los dos métodos juntos en C :
int x = 10 % 2 ; //10/2 = 5 sin residuo
int y = 10 - ( 2 * ( 10/2) ) //Con el fin de la operación , 10/2 = 5 , 5 * 2 = 10 , 10 - 10 = 0 resto