Lettori fissi

venerdì 3 ottobre 2014

11° Applicazione: Contatore con sentinella.

import java.util.Scanner;

public class ArchivioVoti2 {

    // calcolo media voti della classe
    // usando ciclo controllato da contatore
    private String nomeCorso;

    // costruttore
    public ArchivioVoti2(String nome) {
        nomeCorso = nome;
    }

    // Get-Set
    public String getNomeCorso() {
        return nomeCorso;
    }

    public void setNomeCorso(String nomeCorso) {
        this.nomeCorso = nomeCorso;
    }

    // MSG di benvenuto
    public void stampaMessaggio() {
        System.out.printf("Benvennuto in Archivio Voti \n%s", getNomeCorso());
    }

    // calcolo media di dieci voti inseriti da utente
    public void calcolaMediaVoti() {

        // Scanner per acquisire i voti
        Scanner input = new Scanner(System.in);

        int tot; // somma totale dei voti
        int cntVoti; // contatore voti
        int voto; // voto acquisito
        double media; // media dei voti

        // inizializzazione
        tot = 0;
        cntVoti = 0;

        // fase acquisizione voti
        System.out.println("Dgt voto oppure -1 per finire: ");
        voto = input.nextInt();

        // elaborazione calcoli più valore sentinella
        while (voto != -1) {

            tot += voto;
            cntVoti += 1;

            // acquisisco voto successivo:
            System.out.println("Dgt voto oppure -1 per finire: ");
            voto = input.nextInt();

        }// fine while

        // se utente ha inserito almeno 1 voto:
        if (cntVoti != 0) {
            // calcolo della media voti
            media = (double) tot / cntVoti; // divisione

            // visualizzazione calcoli
            System.out.printf("\nIl totale dei voti risulta: %d\n", cntVoti);
            System.out.printf("La media voti risulta: %.2f\n", media);
        }// fine if
        else{
            System.out.println("Non sono stati inseriti voti.");
        }

    }//fine metodo calcolaMediaVoti
}// fine classe

public class TestArchivioVoti2 {

    public static void main(String[] args) {
       
        // creazione oggetto
        ArchivioVoti2 mioArchivio = new ArchivioVoti2("CJ01 - Corso java base!\n");
        // stampa messaggio di benvenuto
        mioArchivio.stampaMessaggio();
        // calcola media voti
        mioArchivio.calcolaMediaVoti();
    }
}

Nessun commento:

Posta un commento