Lezione n° 07 - Esercitazione Corso JAVA Lezione n° 07 - Esercitazione Istituto Statale di Istruzione Superiore “F. Enriques”
Corso di Programmazione in Java – Lezione n° 06 Esercizio 1 Riprendiamo l’esercizio del calcolo del bollo di circolazione implementato non più con la programmazione imperativa, ma con la programmazione ad oggetti. In particolare: Implementare una classe Auto contenente almeno gli attributi privati: Marca, Targa, TipoCombustione, Cv. ed almeno i Metodi Stampa_Dati e Converti Cv_Kw; N.B.: Conversione 1 Cv = 0,735Kw. Implementare un metodo della classe Main che calcola il valore del bollo di circolazione prendendo in input il tipo e la potenza del veicolo restituendo un importo. Il programma principale, utilizzando il metodo precedente e la classe Auto: inizializza un array di oggetti di tipo Auto ed esegue una stampa dei dati di tutte le auto contenute nell’array. In seguito di ogni elemento dell’array ne calcola l’importo del bollo di circolazione e stampa il risultato insieme alla targa del veicolo e alla sua potenza in kw. Stampare i dati dell’auto più vecchia Istituto Statale di Istruzione Superiore “F. Enriques”
Classe Auto (1/2) class Auto { private String Marca; Corso di Programmazione in Java – Lezione n° 06 Classe Auto (1/2) class Auto { private String Marca; private String Targa; private String TipoCombustione; private int CV; private Anno_Immatricolazione; public Auto(String marca, String targa, String combustione, int cv, int a ) { Marca=new String(marca); Targa=new String(targa); TipoCombustione=new String(combustione); CV=cv; Anno_Immatricolazione= a; } Istituto Statale di Istruzione Superiore “F. Enriques”
Classe Auto (2/2) public void Stampa_Dati() { Corso di Programmazione in Java – Lezione n° 06 Classe Auto (2/2) public void Stampa_Dati() { System.out.println("Marca: \t" + Marca + "\t Targa: " + Targa + "\t Tipo: \t" + TipoCombustione + "\t Potenza CV: \t" + CV); } public int Converti_Cv_in_Kw() int kw; kw=(int)(CV*0.735); return(kw); public String Get_Targa() {return(Targa);} public String Get_Tipo() {return(TipoCombustione);} public int Get_CV() {return(CV);} Istituto Statale di Istruzione Superiore “F. Enriques”
Corso di Programmazione in Java – Lezione n° 06 Metodo Calcola Bollo public static float Calcola_Bollo(String Tipo, int Kw) { float importo = 0; if(Tipo=="Benzina") if( Kw < 11 ) importo = 70; if((Kw>=11)&(Kw<=25)) importo = 120 + ( Kw * 10 ); if( Kw > 25) importo = 170 + ( Kw * 12 ); } else //Diesel if( Kw < 11 ) importo = 100; if((Kw>=11)&(Kw<=25)) importo = 170 + ( Kw * 12 ); if( Kw > 25) importo = 250 + ( Kw * 15 ); return(importo); Istituto Statale di Istruzione Superiore “F. Enriques”
Main Manca la stampa dell’auto più vecchia Corso di Programmazione in Java – Lezione n° 06 Main Manca la stampa dell’auto più vecchia perché non mi entrava nella slide public static void main(String[] args) { Auto ListaAuto[] = new Auto[5]; ListaAuto[0]= new Auto("Ford","su284nb","Benzina",60); ListaAuto[1]= new Auto("Fiat","bf730nm","Diesel",140); ListaAuto[2]= new Auto("Ferrari","hd264hd","Benzina",300); ListaAuto[3]= new Auto("Audi", "bn385jg","Diesel",200); ListaAuto[4]= new Auto("Opel", "sh329dh","Diesel", 125); System.out.println("Elenco Auto:"); for(int i=0; i<ListaAuto.length; i++) { ListaAuto[i].Stampa_Dati(); } for(int i=0; i<ListaAuto.length; i++) { int kw = ListaAuto[i].Converti_Cv_in_Kw(); String tipo = ListaAuto[i].Get_Tipo(); System.out.println(" Targa del veicolo: " + ListaAuto[i].Get_Targa() + " Potenza Kw: " + kw + " Importo Bollo:" + Calcola_Bollo(tipo,kw)); }; Punto n°2 Punto n°1 Istituto Statale di Istruzione Superiore “F. Enriques”
Output Elenco Auto: Marca: Ford Targa: su284nb Tipo: Benzina Potenza CV: 60 Marca: Fiat Targa: bf730nm Tipo: Diesel Potenza CV: 140 Marca: Ferrari Targa: hd264hd Tipo: Benzina Potenza CV: 300 Marca: Audi Targa: bn385jg Tipo: Diesel Potenza CV: 200 Marca: Opel Targa: sh329dh Tipo: Diesel Potenza CV: 125 Targa del veicolo: su284nb Potenza Kw: 44 Importo Bollo:910.0 Targa del veicolo: bf730nm Potenza Kw: 102 Importo Bollo:1780.0 Targa del veicolo: hd264hd Potenza Kw: 220 Importo Bollo:3550.0 Targa del veicolo: bn385jg Potenza Kw: 147 Importo Bollo:2455.0 Targa del veicolo: sh329dh Potenza Kw: 91 Importo Bollo:1615.0