Operador de módulo en C#

Luqman Khan 12 octubre 2023
Operador de módulo en C#

Este artículo del tutorial presentará el operador de módulo en la programación de C#.

Obtener el Resto Usando el Operador Modulo en C#

Los términos utilizados en la operación módulo son los siguientes:

  • Divisor: el valor sobre el que dividimos cualquier valor;
  • Dividendo: el valor al que dividimos por otro valor;
  • Cociente: el valor que obtenemos de la operación de división;
  • Resto: el valor que obtenemos como valor restante.

Supongamos que dividiremos los dos valores 13 y 2. Si el cociente es nuestra principal preocupación, usamos el operador de división y obtenemos una respuesta de 6,5.

Y ahora, supongamos que queremos obtener el valor restante de la división de 13 por 2; lo denotamos por 13%2. Nos da el resto 1 después de la división.

No hay lugares decimales en la operación de módulo. Si el dividendo es mayor que el divisor, lo dividimos y obtenemos el resto; de lo contrario, el dividendo es el valor restante.

Consideremos otro ejemplo: 3 dividido por 4. Aquí 3 es nuestro dividendo y 4 es nuestro divisor, y como 3 es menor que 4, nuestro resto es 3 para esta expresión (3%4).

A continuación se muestra la comparación del código de las operaciones de división y módulo.

Ejemplo (división):

public static void divideop() {
  double num_1, num_2, result;
  Console.WriteLine("enter n1");
  num_1 = Convert.ToInt32(Console.ReadLine());
  Console.WriteLine("enter n2");
  num_2 = Convert.ToInt32(Console.ReadLine());
  result = num_1 / num_2;
  Console.WriteLine("result is: " + result);
  Console.ReadLine();
}

Producción:

Salida de código de división

El código anterior obtiene dos valores del usuario como entrada: num_1 y num_2. La variable resultado almacena el valor después de la división.

Usamos un tipo de datos doble en el código anterior porque puede devolver un valor de punto decimal.

Vea la imagen a continuación para comprender cómo se obtiene el resultado.

División manual

Ejemplo (operación de módulo):

public static void modulusop() {
  double num_1, num_2, result;
  Console.WriteLine("enter n1");
  num_1 = Convert.ToInt32(Console.ReadLine());
  Console.WriteLine("enter n2");
  num_2 = Convert.ToInt32(Console.ReadLine());
  result = num_1 % num_2;
  Console.WriteLine("result is: " + result);
  Console.ReadLine();
}

Producción:

Salida de código de operación de módulo

De manera similar, el código anterior obtiene dos valores: num_1 y num_2, y la variable resultado almacena el valor restante después de la operación de módulo.

A continuación se muestra una imagen para entender cómo se lleva a cabo la operación de módulo.

Operación de módulo manual

Código de ejemplo completo

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace modulus_operator_A1 {
  public class Program {
    static void Main(string[] args) {
      int i = 1;
      Console.WriteLine("enter your chooice 1 for divide operation 2 for modulus operation");
      int choice = Convert.ToInt32(Console.ReadLine());
      if (choice == 1) {
        divideop();
      } else if (choice == 2) {
        modulusop();
      } else {
      }
      Console.Read();
    }
    public static void divideop() {
      double num_1, num_2, result;
      Console.WriteLine("enter n1");
      num_1 = Convert.ToInt32(Console.ReadLine());
      Console.WriteLine("enter n2");
      num_2 = Convert.ToInt32(Console.ReadLine());
      result = num_1 / num_2;
      Console.WriteLine("result is: " + result);
      Console.ReadLine();
    }
    public static void modulusop() {
      double num_1, num_2, result;
      Console.WriteLine("enter n1");
      num_1 = Convert.ToInt32(Console.ReadLine());
      Console.WriteLine("enter n2");
      num_2 = Convert.ToInt32(Console.ReadLine());
      result = num_1 % num_2;
      Console.WriteLine("result is: " + result);
      Console.ReadLine();
    }
  }
}

Artículo relacionado - Csharp Operator