Escriba una función para verificar si una entrada dada es un número entero o una string.
Definición de un número entero:
Every element should be a valid digit, i.e '0-9'.
Definición de una string:
Any one element should be an invalid digit, i.e any symbol other than '0-9'.
Ejemplos:
Input : 127 Output : Integer Explanation : All digits are in the range '0-9'. Input : 199.7 Output : String Explanation : A dot is present. Input : 122B Output : String Explanation : A alphabet is present.
Método 1: La idea es usar la función isdigit() y la función is_numeric() .
A continuación se muestra la implementación de la idea anterior.
C++
// CPP program to check if a given string // is a valid integer #include <iostream> using namespace std; // Returns true if s is a number else false bool isNumber(string s) { for (int i = 0; i < s.length(); i++) if (isdigit(s[i]) == false) return false; return true; } // Driver code int main() { // Saving the input in a string string str = "6790"; // Function returns 1 if all elements // are in range '0-9' if (isNumber(str)) cout << "Integer"; // Function returns 0 if the input is // not an integer else cout << "String"; }
Java
// Java program to check if a given // string is a valid integer import java.io.*; public class GFG { // Returns true if s is // a number else false static boolean isNumber(String s) { for (int i = 0; i < s.length(); i++) if (Character.isDigit(s.charAt(i)) == false) return false; return true; } // Driver code static public void main(String[] args) { // Saving the input in a string String str = "6790"; // Function returns 1 if all elements // are in range '0 - 9' if (isNumber(str)) System.out.println("Integer"); // Function returns 0 if the // input is not an integer else System.out.println("String"); } } // This code is contributed by vt_m.
Python 3
# Python 3 program to check if a given string # is a valid integer # This function Returns true if # s is a number else false def isNumber(s): for i in range(len(s)): if s[i].isdigit() != True: return False return True # Driver code if __name__ == "__main__": # Store the input in a str variable str = "6790" # Function Call if isNumber(str): print("Integer") else: print("String") # This code is contributed by ANKITRAI1
C#
// C# program to check if a given // string is a valid integer using System; public class GFG { // Returns true if s is a // number else false static bool isNumber(string s) { for (int i = 0; i < s.Length; i++) if (char.IsDigit(s[i]) == false) return false; return true; } // Driver code static public void Main(String[] args) { // Saving the input in a string string str = "6790"; // Function returns 1 if all elements // are in range '0 - 9' if (isNumber(str)) Console.WriteLine("Integer"); // Function returns 0 if the // input is not an integer else Console.WriteLine("String"); } } // This code is contributed by vt_m.
PHP
<?php // PHP program to check if a // given string is a valid integer // Returns true if s // is a number else false function isNumber($s) { for ($i = 0; $i < strlen($s); $i++) if (is_numeric($s[$i]) == false) return false; return true; } // Driver code // Saving the input // in a string $str = "6790"; // Function returns // 1 if all elements // are in range '0-9' if (isNumber($str)) echo "Integer"; else echo "String"; // This code is contributed by ajit ?>
Javascript
<script> // Javascript program to check if a given // string is a valid integer // Returns true if s is a // number else false function isNumber(s) { for (let i = 0; i < s.length; i++) if (s[i] < '0' || s[i] > '9') return false; return true; } // Saving the input in a string let str = "6790"; // Function returns 1 if all elements // are in range '0 - 9' if (isNumber(str)) document.write("Integer"); // Function returns 0 if the // input is not an integer else document.write("String"); </script>
Integer
Complejidad temporal: O(n)
Espacio auxiliar: O(1)
Método 2: Usar la función type() incorporada especial de Python:
type() es una función integrada proporcionada por python. type() toma el objeto como parámetro y devuelve su tipo de clase como dice su nombre.
A continuación se muestra la implementación de la idea anterior:
Python3
# Python program to find # whether the user input # is int or string type # Function to determine whether # the user input is string or # integer type def isNumber(x): if type(x) == int: return True else: return False # Driver Code input1 = 122 input2 = '122' # Function Call # for input1 if isNumber(input1): print("Integer") else: print("String") # for input2 if isNumber(input2): print("Integer") else: print("String")
Integer String
Tiempo Complejidad: O(1)
Espacio Auxiliar: O(1)
Método 3: Usar Integer.parseInt() en Java
El método parseInt() de la clase Integer se usa para analizar una string dada en un entero, siempre que la string contenga un entero válido. En caso de que la string no contenga un número entero válido, arroja una NumberFormatException . La idea es analizar la string dada usando el mismo. Si se encuentra una excepción, la string dada no será un entero válido y viceversa.
A continuación se muestra la implementación de la idea anterior:
Java
// Java program to check if a given // string is a valid integer import java.io.*; public class GFG { // Driver code static public void main(String[] args) { String s = "abc"; //sample input to test try{ Integer.parseInt(s); System.out.println("Integer"); }catch(NumberFormatException e){ System.out.println("String"); } } } // This code is contributed by shruti456rawal
String
Complejidad de tiempo: O(N) donde N es la longitud de la string.
Espacio Auxiliar: O(1)
Este artículo es una contribución de Rohit Thapliyal . Si te gusta GeeksforGeeks y te gustaría contribuir, también puedes escribir un artículo usando write.geeksforgeeks.org o enviar tu artículo por correo a review-team@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA