ciao a tutti
domani ho un esame di java ma sto linguaggio proprio non lo capisco xD
mi serve di leggere una stringa nel formato esame#cfu#voto per poi usare cfu e voti per calcolare una media pesata degli esami. boiata, vero?... in qualunque altro linguaggio si, ma qui javac ha deciso di mettermi il bastone tra le ruote! Vi posto il codice che ho scritto:
codice:
import java.io.*;
class Media{
public static void main(String[] args){
int tot_cfu = 0, tot_v = 0, d = 0, i = 0;
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
double media = 0;
String input = "";
String[] tokens = {"","",""};
try{
do{
System.out.print("\nesame#cfu#voto :"); input = in.readLine();
if(input.toUpperCase()!="END"){
tokens = input.split("#");
for(i=1;i<=2;i++){
if (i == 1)
tot_cfu += Integer.parseInt(tokens[i]);
else
tot_v += Integer.parseInt(tokens[i]);
}
d++;
}
}while(input.toUpperCase()!="END");
System.out.print(tot_cfu+" "+tot_v+"\n");
}
catch(Exception e){ System.out.print("Input error.\n"); }
}
}
il codice ovviamente non è finito ma qui si blocca. mi lascia immettere un qualsiasi numero di esami ma quando scrivo END mi genera un exception e mi stampa il messaggio di errore nella catch() senza eseguire la print dopo il while...
qualcuno saprebbe darmi una spiegazione per favore?
grazie in anticipo