[ Foro de C# ]

Ejercicio 2.1.5.1

15-Dec-2020 05:32
Hector Ballinas
2 Respuestas

Crea un programa que pida al usuario un número entero y responda si es múltiplo de 2 o de 3.
Buenas noches estoy tratando de resolver el siguiente ejercicio de comparar dos datos utilizando Operadores lógicos en este caso utilizo el operador O. Para hacer las comparaciones estoy utilizando IF y ELSE en caso de que no sea ese el valor multiplo del numero que haga haga la otra sentencia y me imprima el resultado, "Pero no hace el ELSE ya que si coloco un numero multiplo del 3 me apare el mensaje como si fuera del dos" Anexo codigo

           int numero;
           string cadena;

           Console.WriteLine("Introduce un número ");
           cadena = Console.ReadLine();
           numero = Convert.ToInt32(cadena);

           if ((numero % 2 == 0) || (numero % 3 == 0))

           {

               Console.WriteLine("Es multiplo del 2 ");

           }

           else
           {
               Console.WriteLine("Es multiplo del 3 ");

           }

           Console.ReadKey();
           Environment.Exit(0);


15-Dec-2020 12:45
Nacho Cabanes (+83)

Tu lógica no es correcta:

if ((numero % 2 == 0) || (numero % 3 == 0))

se leería "si es múltiplo de 2 o de 3", así que no coincide con tu Write posterior (múltiplo de 2).

El primer caso que deberías incluir es:

if ((numero % 2 == 0) && (numero % 3 == 0))

(múltiplo de 2 y 3 a la vez)


15-Dec-2020 19:52
Hector Ballinas

Entonces tendría que llevar dos if para realizar cada comparación ?






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)