Dado un número, comprueba si es par o impar.
Ejemplos:
Input: n = 11 Output: Odd Input: n = 10 Output: Even
Método 1: Usando Loop.
La idea es comenzar con una variable de bandera booleana como verdadera y cambiarla n veces. Si la variable indicadora recupera el valor original (que es verdadero), entonces n es par. De lo contrario, n es falsa.
A continuación se muestra la implementación de esta idea.
C++
// A simple C++ program to check for // even or odd #include <iostream> using namespace std; // Returns true if n is even, else odd bool isEven(int n) { bool isEven = true; for (int i=1; i <= n; i++) isEven = !isEven; return isEven; } // Driver code int main() { int n = 101; isEven(n) ? cout << "Even" : cout << "Odd"; return 0; }
Java
// A simple Java program to // check for even or odd class GFG { // Returns true if n // is even, else odd static boolean isEven(int n) { boolean isEven = true; for (int i = 1; i <= n; i++) isEven = !isEven; return isEven; } // Driver Code public static void main(String args[]) { int n = 101; if(isEven(n)) System.out.println("Even"); else System.out.println("Odd"); } } // This code is contributed by Sam007
Python3
# A simple Python program to # check for even or odd # Returns true if n is even, # else odd def isEven(n): isEven = True; for i in range(1, n+1): if isEven == True: isEven = False; else: isEven = True; return isEven; # Driver code n = 101; if isEven(n) == True: print ("Even"); else: print ("Odd"); # This code is contributed by # Manish Shaw (manishshaw1)
C#
// A simple C# program to check for // even or odd using System; public class GFG { // Returns true if n is even, // else odd static bool isEven(int n) { bool isEven = true; for (int i = 1; i <= n; i++) isEven = !isEven; return isEven; } // Driver code public static void Main() { int n = 101; if(isEven(n)) Console.Write("Even"); else Console.Write("Odd"); } } // This code is contributed by Sam007.
PHP
<?php // A simple PHP program to check for // even or odd // Returns true if n is even, // else odd function isEven($n) { $isEven = true; for ($i = 1; $i <= $n; $i++) $isEven = !$isEven; return $isEven; } // Driver code $n = 101; $is=isEven($n) ? "Even" : "Odd"; echo "$is" // This code is contributed by ajit ?>
Javascript
<script> // A simple Javascript program to check // for even or odd // Returns true if n is even, // else odd function isEven(n) { let isEven = true; for(let i = 1; i <= n; i++) isEven = !isEven; return isEven; } // Driver code let n = 101; if (isEven(n)) document.write("Even"); else document.write("Odd"); // This code is contributed by mukesh07 </script>
Odd
Complejidad de tiempo : O(n)
Espacio Auxiliar: O(1)
Método 2: Multiplique y divida por 2. Divida el número por 2 y multiplique por 2 si el resultado es el mismo que el ingresado, entonces es un número par; de lo contrario, es un número impar.
C++
// A simple C++ program to check for // even or odd #include <iostream> using namespace std; // Returns true if n is even, else odd bool isEven(int n) { // Return true if n/2 does not result // in a float value. return ((n / 2) * 2 == n); } // Driver code int main() { int n = 101; isEven(n) ? cout << "Even" : cout << "Odd"; return 0; }
Java
// A simple Java program // to check for even or odd class GFG { // Returns true if n // is even, else odd static boolean isEven(int n) { // Return true if // n/2 does not result // in a float value. return ((n / 2) * 2 == n); } // Driver code public static void main(String[] args) { int n = 101; if(isEven(n) != false) System.out.print( "Even" ); else System.out.print( "Odd" ); } } // This code is contributed by // Smitha Dinesh Semwal.
Python3
# A simple Python 3 program # to check for even or odd # Returns true if n # is even, else odd def isEven(n): # Return true if # n/2 does not result # in a float value. return (int(n / 2) * 2 == n) # Driver code n = 101 if(isEven(n) != False): print("Even") else: print("Odd") # This code is contributed by # Smitha Dinesh Semwal.
C#
// A simple C# program // to check for even or odd using System; class GFG { // Returns true if n // is even, else odd static bool isEven(int n) { // Return true if // n/2 does not result // in a float value. return ((n / 2) * 2 == n); } // Driver code public static void Main(String[] args) { int n = 101; if(isEven(n) != false) Console.Write("Even"); else Console.Write("Odd"); } } // This code is contributed by // Smitha Dinesh Semwal.
PHP
<?php // A simple PHP program to // check for even or odd // Returns true if n // is even, else odd function isEven($n) { // Return true if n/2 // does not result // in a float value. return ((int)($n / 2) * 2 == $n); } // Driver code $n = 101; if(isEven($n)) echo ("Even"); else echo ("Odd"); // This code is contributed by // Manish Shaw (manishshaw1) ?>
Javascript
<script> // A simple Javascript program to // check for even or odd // Returns true if n is even, // else odd function isEven(n) { // Return true if n/2 does not result // in a float value. return (parseInt(n / 2, 10) * 2 == n); } // Driver code let n = 101; isEven(n) ? document.write("Even") : document.write("Odd"); // This code is contributed by divyeshrabadiya07 </script>
Odd
Complejidad de tiempo : O(1)
Espacio Auxiliar: O(1)
Método 3: Usar el operador bit a bit &.
Una mejor solución es utilizar operadores bit a bit. Necesitamos verificar si el último bit es 1 o no. Si el último bit es 1, el número es impar; de lo contrario, siempre es par.
Explicación:
input : 5 // odd 00000101 & 00000001 -------------- 00000001 -------------- input : 8 //even 00001000 & 00000001 -------------- 00000000 --------------
A continuación se muestra la implementación de la idea.
C++
// A simple C++ program to check for // even or odd #include <iostream> using namespace std; // Returns true if n is even, else odd bool isEven(int n) { // n&1 is 1, then odd, else even return (!(n & 1)); } // Driver code int main() { int n = 101; isEven(n) ? cout << "Even" : cout << "Odd"; return 0; }
Java
// A simple Java program to check for // even or odd import java.io.*; import java.util.*; public class GFG { // Returns 0 if n // is even, else odd static int isEven(int n) { // n&1 is 1, then // odd, else even return (n & 1); } // Driver code public static void main(String args[]) { int n = 101; if(isEven(n)==0) System.out.print("Even"); else System.out.print("Odd"); } } // This code is contributed // by Manish Shaw (manishshaw1)
Python3
# A simple Python program to # check for even or odd # Returns 0 if n # is even, else odd def isEven(n) : # n&1 is 1, then # odd, else even return (n & 1); # Driver code n = 101; if(isEven(n) == 0) : print ("Even"); else : print ("Odd"); # This code is contributed # by Manish Shaw (manishshaw1)
C#
// A simple C# program to check for // even or odd using System; using System.Collections.Generic; class GFG { // Returns 0 if n // is even, else odd static int isEven(int n) { // n&1 is 1, then // odd, else even return (n & 1); } // Driver code public static void Main() { int n = 101; if(isEven(n)==0) Console.Write("Even"); else Console.Write("Odd"); } } // This code is contributed // by Manish Shaw (manishshaw1)
PHP
<?php // A simple PHP program to // check for even or odd // Returns 0 if n // is even, else odd function isEven($n) { // n&1 is 1, then // odd, else even return ($n & 1); } // Driver code $n = 101; if(isEven($n) == 0) echo ("Even"); else echo ("Odd"); // This code is contributed // by Manish Shaw (manishshaw1) ?>
Javascript
<script> // A simple Javascript program to check for even or odd // Returns true if n is even, else odd function isEven(n) { // n&1 is 1, then odd, else even return (!(n & 1)); } let n = 101; isEven(n) ? document.write("Even") : document.write("Odd"); </script>
Odd
Complejidad de tiempo : O(1)
Espacio Auxiliar: O(1)
Publicación traducida automáticamente
Artículo escrito por RahulKumarSingh y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA