Programación General > Java

 Problema con unreported exception java.io.IOException

(1/1)

Zyteck:
Que tal, pues estoy iniciando en esto de la programacion y tengo un problema con un codigo: el problema dice asi:
Los reglamentos de pesca de Saskatchewan imponen un limite a la cantidad total permitida de kilos en un dia de pesca. Supóngase que se planea llevar terminal portátil de computadora en la siguiente salida de pesca y que se necesita un programa que indique cuando se ha excedido dicho limite. Diseñe un algoritmo que primero lea el limite diario en kilos y enseguida lea los valores de entrada, un tras otro(correspondiente a los valores individuales  de las pesas pescadas en el orden que se obtienen) e imprima un mensaje en el momento en que el limite se haya excedido. Un peso de 0 indica el fin de los datos y después de que cada pescado se haya registrado, el algoritmo deberá imprimir el peso total que se lleva hasta ese momento.

y hasta ahora lo que llevo de codigo es esto: y me arroja error aqui: var=entrada.readLine();

--- Código: Java ---import java.util.Scanner;import java.io.*; public class pesca {     double suma=0, pes1,lim;    Double pes2 = new Double(0.0);    String var, CENTINELA="0";    BufferedReader entrada = new BufferedReader (new InputStreamReader(System.in));    Scanner tecla =new Scanner(System.in); void inicio(){    System.out.println("Para notificar al usuario la cantidad pescada o si a excedido el limite");} void captura(){    System.out.println("Ingrese el limite de kilos");    lim=tecla.nextDouble();    System.out.println("Ingrese el peso de una presa o '0' para terminar");    System.out.flush();    var=entrada.readLine();}void calcula(){    if (suma < lim){        while(!var.equals(CENTINELA)){            pes1=pes2.parseDouble(var);            suma=suma+pes1;            System.out.println("Ingrese el peso de una presa o '0' para terminar");            System.out.flush();            var=entrada.readLine();        }    }    else{        System.out.println("EL LIMITE DE KILOS A SIDO EXCEDIDO");    }}void resultados(){    System.out.println("El peso total de la pesca de hoy fue:" +suma+"Kg");}public static void main(String[] args)throws IOException{        pesca p=new pesca();        int resp='s';        p.inicio();         while (resp=='s'||resp=='S'){             p.captura();             p.calcula();             p.resultados();             System.out.println("Desea reiniciar el programa? s/n:");             resp=System.in.read();             System.in.skip(2);         }}} 

saludos y gracias de antemano por la ayuda

grandzam:
Hola, pues vi que estabas usando tanto BufferedReader como el Scanner y bueno, a mi me gusta mas usar Scanner  :P , así que hice una version solo con Scanner, jaja... para eso pues si cambié varias cosillas, incluso la comparación que estaba en el while del main, bueno espero haberte ayudado:

Por cierto, programas bien, te felicito, ah y el codigo si esta identado, pero ps aqui como q lo jode.


--- Código: Java ---  import java.util.Scanner;import java.io.*; public class pesca {     double suma=0, pes1,lim;    Double pes2 = new Double(0.0);    String var, CENTINELA="0";        static Scanner tecla =new Scanner(System.in);         void inicio(){    System.out.println("Para notificar al usuario la cantidad pescada o si a excedido el limite");    }     void captura(){    System.out.println("Ingrese el limite de kilos");    lim=tecla.nextDouble();    System.out.println("Ingrese el peso de una presa o '0' para terminar");    System.out.flush();    var=tecla.next();    }     void calcula(){    if (suma < lim){        while(!var.equals(CENTINELA)){        pes1=pes2.parseDouble(var);        suma=suma+pes1;        System.out.println("Ingrese el peso de una presa o '0' para terminar");        System.out.flush();        var=tecla.next();        }    }    else{        System.out.println("EL LIMITE DE KILOS A SIDO EXCEDIDO");    }    }     void resultados(){    System.out.println("El peso total de la pesca de hoy fue:" +suma+"Kg");    }     public static void main(String[] args)throws IOException{        pesca p=new pesca();            String resp="S";            p.inicio();     while (resp.compareTo("S") == 0){        p.captura();        p.calcula();        p.resultados();        System.out.println("Desea reiniciar el programa? s/n:");                resp=tecla.next().toUpperCase();    }    }}   
e-proyect.com

Navegación

[0] Índice de Mensajes

Ir a la versión completa