Pregunta: | 59648 - ERROR: EXECPTION IN THREAD "MAIN" JAVA.IO.IOEXCEPTION |
Autor: | guillermo rodriguez |
hola... amigos les escribo desde Colombia. Soy muy nuevo, nuevo en esto del desarrollo en Java, y me he encontrado que tengo este problema al tratar de hacer un ejercicio de promedio, donde al ejecutar el programa me sale un error inesperado como el siguiente:
Exception in thread "main": controlador no valido. at java.io.FileputStream.skip<Native Method> at java.io.BufferedInputStream.skip<BuferedInputStream.java: 305> at Pormedio.main<Promedio.java:30> ----------------------------CODIGO DE Promedio.java -------------------------------------------- import java.io.*; import java.io.IOException; public class Promedio{ public static void main(String args[])throws IOException { //face declaracion int contador, promedio, total, calificacion; //face inicializacion contador = 1; total = 0; while(contador <= 10){ System.out.print("Teclee calificacion con letra: "); System.out.flush(); calificacion = System.in.read(); if(calificacion == 'A') total = total + 4; else if(calificacion == 'B') total = total + 3; else if(calificacion == 'C') total = total + 2; else if(calificacion == 'D') total = total + 1; else if(calificacion == 'E') total = total + 0; System.in.skip(1); contador = contador + 1; } //face terminacion promedio = total/10; System.out.println("El promedio del grupo es " +promedio); } } ---------------------------------------FIN--------------------------------------------------------------- Gracias por su ayuda espero prontas respuestas. |
Respuesta: | Francisco |
import java.io.*;
class PruebaArbol { public static void main (String[] args) throws java.io.IOException { int promedio, total; char calificacion; total = 0; BufferedReader bufer = new BufferedReader(new InputStreamReader(System.in)); //Podrias pedir el numero de promedios asi : //System.out.print("Numero de promedios ? : "); //int n = Integer.parseInt(bufer.readLine()) //y en el for cambiar 10 por esta variable n for(int contador = 1; contador <= 10; contador++) { System.out.print("Teclee calificacion con letra: "); calificacion = bufer.readLine().charAt(0); switch(calificacion) { case 'A': total += 4; break; case 'B': total += 3; break; case 'C': total += 2; break; case 'D': total += 1; break; } } //y aqui tambien cambiar 10 por n promedio = total / 10; System.out.println("El promedio del grupo es " + promedio); } } // fin espero te sirva ... saludos !! |