programa Java para comprobar si el número es el número IMEI o no

En este programa java, vamos a leer un número, el cual será un número de IMEI de un móvil y comprobación de si se trata de un número de IMEI válido o no .

Dado un número, tenemos que comprobar que el número introducido es el número IMEI o no.

número IMEI es un número de 15 dígitos y se dice ser el número IMEI si y sólo si la suma del número es exactamente divisible por 10. Pero la condición es que cuando entramos en el número de dígitos del lado de la anterior se toma como su class.

Ejemplo:

    Input: 47415403237518
Output:
47415403237518 – Is an IMEI Number.

programa para comprobar el número de IMEI válido en java

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class CheckIMEINumber
{
// Function for finding and returning sum of digits of a number
int sumDig(int n)
{
// initialise here.
int a = 0;
while(n>0)
{
a = a + n%10;
n = n/10;
}
return a;
}
public static void main(String args[])throws IOException
{
// create object here.
CheckIMEINumber ob = new CheckIMEINumber();
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
// The 'Long' data type is used to store 15 digits.
System.out.print("Enter a 15 digit IMEI code : ");
long n = Long.parseLong(br.readLine());
// Converting the number into String for finding length
String s = Long.toString(n);
int l = s.length();
// If length is not 15 then IMEI is Invalid
if(l!=15)
System.out.println("Output : Invalid Input");
else
{
int d = 0, sum = 0;
for(int i=15; i>=1; i--)
{
d = (int)(n%10);
if(i%2 == 0)
{
// Doubling every alternate digit
d = 2*d;
}
// Finding sum of the digits
sum = sum + ob.sumDig(d);
n = n/10;
}
System.out.println("Output : Sum = "+sum);
if(sum%10==0)
System.out.println("Valid IMEI Code");
else
System.out.println("Invalid IMEI Code");
}
}
}

salida

First run:
Enter a 15 digit IMEI code : 111111111111111
Output : Sum = 22
Invalid IMEI Code
Second run:
Enter a 15 digit IMEI code : 474154203237518
Output : Sum = 60
Valid IMEI Code


Deja un comentario

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