lunes, 31 de marzo de 2014

Programame Regional 2013 I: Número Hyperpar

Se dice que un número es hyperpar cuando todos sus dígitos son pares. >Sabes identificarlos?
Entrada
La entrada consta de una serie de casos de prueba. Cada uno está compuesto de una unica línea con un número no negativo ni mayor que 109.
Los casos de prueba terminan con un número negativo que no habrá que procesar.
Salida
Para cada caso de prueba se escribir a, en una línea independiente, SI si el número es hyperpar y NO si no lo es.
Entrada de ejemplo
2460
1234
2
-1

Salida de ejemplo
SI
NO
SI

package programamecuadernilloregional2013ihiperpari;
import java.util.Scanner;

/**
*
* @author juan
*/
public class ProgramameCuadernilloRegional2013IHiperparI {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        Scanner leo = new Scanner (System.in);
        String cadena;
        String pares = "13579";
        boolean par = true;
   
        cadena=leo.next();
        while(Integer.parseInt(cadena)!=-1){
            par=true;
            int i=0;
            while (par && i<cadena.length()) {
                if (cadena.charAt(i)=='1' || cadena.charAt(i)=='3' ||cadena.charAt(i)=='5' ||cadena.charAt(i)=='7' ||cadena.charAt(i)=='9' ) par=false;
                else ++i;
            }
           /* while (par && i<cadena.length()) {
                if ( pares.indexOf( cadena.charAt(i) )!= -1) par=false;
                else ++i;
            }
            */
            if (par) {
                System.out.println("SI");
            }
            else System.out.println("NO");
            cadena=leo.next();
           
        }
   
    }
}