28/01/10 16:28
zerg
Devo calcolare la media dei chilometri percorsi da un automobilista, sia i Km tra un pieno all'altro, sia i Km totali.
Dato questo codice;
questa è la main
Mi domando:
Ho strutturato bene il programma? il mio dubbio... Ho racchiuso tutto dentro al metodo calcolaMedia è corretto? oppure acquisivo i dati dentro al main e li passavo tramite la chiamata al metodo, tipo kilometri1.calcolaMedia(km, lt);
Adesso devo elaborare 3 insiemi di dati e quì mi blocco, capisco che devo creare tre oggetti, tipo kilometri1, kilometri2, kilometri3 e delle variabili di istanza per memorizzare i dati, ma non riesco a capire come, o aggiungo il nome dell'automobilista, che identifica l'insieme di dati associato oppure.... che confusione, ho bisogno di un'illuminazione.
Grazie
Dato questo codice;
import java.util.Scanner; public class Kilometri { public void calcolaMedia() { int km = 0; // inizializzo km (sono i km percorsi da un pieno all'altro) int lt = 0; // inizializzo lt (sono i litri inseriti da un pieno all'altro) double kmPercorsi; // inizializzo kmPercorsi sono i Km percorsi con i litri inseriti) int contatore = 0; // contatore dei pieni int totKm = 0; // totale dei Km percorsi int totLt = 0; // totale dei litri inseriti double totKmPercorsi; // totale dei km percorsi // chiedo all'utente di inserire i dati e li memorizzo nelle variabili Scanner input = new Scanner( System.in ); System.out.println( "Inserisci i dati del pieno:" ); System.out.print( "Inserisci i Km (-1 per uscire): " ); km = input.nextInt(); System.out.print( "Inserisci i lt: " ); lt = input.nextInt(); while ( km != -1 ) // entra nel ciclo se l'utente non inserisce la sentinella -1 { ++ contatore; // aumento di 1 il contatore kmPercorsi = (double) km / lt; // calcolo i km percorsi System.out.printf( "I Km/l percorsi con questo pieno sono %.2f\n", kmPercorsi); // visualizzo i km percorsi totKm += km; // aggiungo i km al totale dei km totLt += lt; // aggiungo i lt al totale dei lt totKmPercorsi = (double) totKm / totLt; // calcolo il totale dei km percorsi System.out.printf( "I Km/l percorsi con %d pieni sono %.2f\n", contatore, totKmPercorsi); // visualizzo il totale dei km percorsi // chiedo all'utente di inserire i dati e li memorizzo nelle variabili System.out.println( "Inserisci i dati del pieno:" ); System.out.print( "Inserisci i Km (-1 per uscire): " ); km = input.nextInt(); System.out.print( "Inserisci i lt: " ); lt = input.nextInt(); } // fine di while if ( contatore == 0 ) //controllo che sia stato inserito almeno un pieno System.out.println( "Non hai inserito nessun pieno" ); } // fine metodo calcolaMedia } // fine classe Kilometri
questa è la main
public class ProvaKilometri { public static void main( String args[] ) { Kilometri kilometri1 = new Kilometri(); // creo l'oggetto kilometri1.calcolaMedia(); // chiamata al metodo } // fine di main } // fine classe ProvaKilometri
Mi domando:
Ho strutturato bene il programma? il mio dubbio... Ho racchiuso tutto dentro al metodo calcolaMedia è corretto? oppure acquisivo i dati dentro al main e li passavo tramite la chiamata al metodo, tipo kilometri1.calcolaMedia(km, lt);
Adesso devo elaborare 3 insiemi di dati e quì mi blocco, capisco che devo creare tre oggetti, tipo kilometri1, kilometri2, kilometri3 e delle variabili di istanza per memorizzare i dati, ma non riesco a capire come, o aggiungo il nome dell'automobilista, che identifica l'insieme di dati associato oppure.... che confusione, ho bisogno di un'illuminazione.
Grazie
aaa