public static float pideFloat(String texto) {
        
        InputStreamReader flujo=new InputStreamReader(System.in);
        BufferedReader teclado=new BufferedReader(flujo);
        String cadnum;
        float numero=0;
        boolean correcto;
        do {
                try {
                    correcto=true;
                    System.out.print(texto);
                    cadnum=teclado.readLine();
                    numero=Float.parseFloat(cadnum);
                }
                catch (NumberFormatException e) {
                    System.out.println("\t\tTienes que introducir un nº: " + e);
                    correcto=false;
                }
                catch (IOException e) {
                    System.out.println("\t\tSe ha producido un error: " + e);
                    correcto=false;
                }
        }while (!correcto);
        return numero;
    }