/**
*
* Programa que permite ingresar direcciones IP, valida que sea n
correctas
* realiza la clasificacion de las mismas y guarda en vectores
independientes
* ordena los vectos y muestra por pntalla el resultado
*
* @author Benavides Maila Edison Paolo
* @version 1.0 17/11/2014
*/
import static java.lang.Integer.parseInt;
import java.util.InputMismatchException;
import java.util.Scanner;
/**
*Modulo Principal sirve para ingresar las ip y llamas a los otros
metodos segun sea nesesario
*/
public static void main(String[] args){
Scanner lector = new Scanner(System.in);
String[] ips = new String[5];
String[] A;
String[] B;
String[] C;
String aux;
int j=0;
int idxA=0;
int idxB=0;
int idxC=0;
System.out.println("Ingrese arreglo Ejemplo (192.168.1.1)");
System.out.println("..............");
System.out.println("Clase A");
OrdenarInsert(A);
System.out.println("..............");
System.out.println("Clase B");
OrdenarInsert(B);
System.out.println("..............");
System.out.println("Clase C");
OrdenarInsert(C);
/**
*Valida que la direccion IP es correcta y controla las posibles
Excepciones
* @param varIP direccion IP
* @return Retorna la IP correcta o null si o es correcta
*/
public static String validaIP(String varIP){
try{
String[] temp = varIP.split( "\\." );
int uno = parseInt(temp[0]);
int dos = parseInt(temp[1]);
int tres = parseInt(temp[2]);
int cuatro = parseInt(temp[3]);
rango(uno);
rango(dos);
rango(tres);
rango(cuatro);
return varIP;
}
catch(InputMismatchException | ArrayIndexOutOfBoundsException |
NumberFormatException | DireccionIP Exception){
System.err.printf("\nExcepcin: %s\n", Exception);
return null;
}
}
/**
*Excepcion creada que Valida que los octetos esten en rango de 1 a 254
*/
static void rango(int num)throws DireccionIP{
if((num<1)||(num>254)){
throw new DireccionIP("Nmeros fuera de rango");
}
}
public DireccionIP(String msg) {
super(msg);
}
/**
*Ordena un arreglo y muestra por pantalla el resultado
* se ordena de acerdo al primer octeto
*/
static void OrdenarInsert(String [] sinarreglar){