Programa para verificar si la entrada es un número entero o una string

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>
Producción

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")
Producción

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
Producción

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

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *