C# (C Sharp)

Número par o impar en C# con Visual Studio

En este post de programación inicial con C# programando normalmente en Visual Studio vamos a ver cómo determinar si un número es par o impar.

Para esto vamos a usar el operador módulo y comparar el resultado. También vamos a ver otra manera de hacerlo sin el operador módulo, o sea que básicamente veremos dos maneras de saber si un número es par o impar con C#.

Explicando el operador módulo

Este operador te dice el sobrante que queda al dividir 2 números de manera entera, es decir, como si los decimales no existieran.

Por ejemplo, si dividimos 5 entre 2 sabemos que el resultado es 2.5; pero si lo dividimos sin decimales podemos decir que 5 entre 2 es 2, y sobra 1.

Pues exactamente ese sobrante nos va a ayudar a saber si un número es par o impar en Visual Studio, ya que si el sobrante es 1 el número será impar, y si no, será par.

Nota: siempre vamos a dividir entre 2, sin importar el número dividido. Por cierto, el módulo se representa con el operador %.

Par o impar con C# y módulo

Entonces veamos el código para saber si un número es par o impar:

Console.WriteLine("Escribe un número: ");
long numero = Convert.ToInt64(Console.ReadLine());
long sobrante = numero % 2;
if (sobrante == 0)
{
    Console.WriteLine("El número es par");
}
else
{
    Console.WriteLine("El número es impar");
}

Como dije anteriormente, el sobrante siempre será un 1 o un 0 al dividir entre 2. Y si es cero entonces es par, pero si no, es impar.

Usando operaciones a nivel de bits

Podemos usar el truco de comparar números a nivel binario con el operador AND y obtener el resultado. Eso está mejor explicado en este post: par o impar con comparaciones lógicas.

No lo explico aquí porque sería repetitivo, así que si te quedan dudas simplemente lee el post anteriormente mencionado.

Console.WriteLine("Escribe un número: ");
long numero = Convert.ToInt64(Console.ReadLine());
long sobrante = numero & 1;
if (sobrante == 0)
{
    Console.WriteLine("El número es par");
}
else
{
    Console.WriteLine("El número es impar");
}

Al final el resultado, de nuevo, será 1 o 0; pero ambas cosas son totalmente distintas. En el primer caso usamos el operador módulo y en el segundo caso usamos operaciones binarias.

Poniendo todo junto

El código completo que además prueba ambos métodos queda así:

using System;

namespace ParImpar
{
    class Program
    {
        static void Main(string[] args)
        {
            // https://parzibyte.me/blog
            Console.WriteLine("Escribe un número: ");
            long numero = Convert.ToInt64(Console.ReadLine());
            long sobrante = numero % 2;
            if (sobrante == 0)
            {
                Console.WriteLine("El número es par");
            }
            else
            {
                Console.WriteLine("El número es impar");
            }
            SinModulo();
        }

        static void SinModulo()
        {
            Console.WriteLine("Escribe un número: ");
            long numero = Convert.ToInt64(Console.ReadLine());
            long sobrante = numero & 1;
            if (sobrante == 0)
            {
                Console.WriteLine("El número es par");
            }
            else
            {
                Console.WriteLine("El número es impar");
            }

        }
    }
}

Toma en cuenta que puse el código de la operación de bits en un método nuevo para separar los conceptos, no es obligatorio tenerlo así. Al probarlo, la ejecución es correcta:

Número par o impar en C# con Visual Studio – Operador módulo y AND

Y así es como determinamos si un número es impar o par en C#.

También puedes ver un video explicativo:

Para terminar este post te dejo con más tutoriales de C# en mi blog.

Estoy aquí para ayudarte 🤝💻


Estoy aquí para ayudarte en todo lo que necesites. Si requieres alguna modificación en lo presentado en este post, deseas asistencia con tu tarea, proyecto o precisas desarrollar un software a medida, no dudes en contactarme. Estoy comprometido a brindarte el apoyo necesario para que logres tus objetivos. Mi correo es parzibyte(arroba)gmail.com, estoy como@parzibyte en Telegram o en mi página de contacto

No te pierdas ninguno de mis posts 🚀🔔

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.
parzibyte

Programador freelancer listo para trabajar contigo. Aplicaciones web, móviles y de escritorio. PHP, Java, Go, Python, JavaScript, Kotlin y más :) https://parzibyte.me/blog/software-creado-por-parzibyte/

Entradas recientes

Servidor HTTP en Android con Flutter

El día de hoy te mostraré cómo crear un servidor HTTP (servidor web) en Android…

4 días hace

Imprimir automáticamente todos los PDF de una carpeta

En este post te voy a enseñar a designar una carpeta para imprimir todos los…

5 días hace

Guía para imprimir en plugin versión 1 desde Android

En este artículo te voy a enseñar la guía para imprimir en una impresora térmica…

1 semana hace

Añadir tasa de cambio en sistema de información

Hoy te voy a mostrar un ejemplo de programación para agregar un módulo de tasa…

2 semanas hace

Comprobar validez de licencia de plugin ESC POS

Los usuarios del plugin para impresoras térmicas pueden contratar licencias, y en ocasiones me han…

2 semanas hace

Imprimir euro € en impresora térmica

Hoy voy a enseñarte cómo imprimir el € en una impresora térmica. Vamos a ver…

4 semanas hace

Esta web usa cookies.