Salve a tutti, sono nuovo qui sul forum!!!
Da qualche giorno mi sto cimentando con la programmazione Java visto che tra poco più di una settimana mi tocca dare l'esame; svolgendo gli esercizi proposti dal mio libro di testo ho trovato il seguente esercizio:
Scrivere una applicazione che legge dalla tastiera una sequenza di numeri reali e ne calcola la media aritmetica
Ovviamente ho provato a risolverlo da me, e il pc non segnala acun errore, quindi credo di aver fatto un errore nella logica dell'esercizio che tuttavia non riesco a rintracciare;
ecco il codice dell'esercizio che ho scritto:
codice:import fiji.io.*; class MediaReali{ public static void main(String[] args){ int lunghezza; double numero; double somma; double media; lunghezza=0; somma=0; media=0; System.out.println("Scrivi una sequenza di numeri reali: "); while(!Lettore.in.eoln()){ numero=Lettore.in.leggiDouble(); somma=somma+numero; } while(!Lettore.in.eoln()){ numero=Lettore.in.leggiDouble(); lunghezza=lunghezza+1; } media=somma/lunghezza; System.out.println(media); } }
Quando vado ad eseguire l'applicazione il valore restutuito è "infinity";
ho provato anche a controllare se il calcolo della somma e della lunghezza sono corretti e ho scoperto che il calcolo della somma funziona perfettamente, quello della lunghezza della sequenza invece mi restituisce zero e quindi è errato;
Qualcuno che può spiegarmi in cosa ho sbagliato?
![]()
![]()

Rispondi quotando