edutecnica

Esercizio 12       

Creare una classe Squadra che rappresenta una squadra di calcio e ha come attributi il numero di partite vinte, il numero di partite perse e il numero di partite pareggiate e i gol fatti e subiti.
Ha opportuni metodi per impostare i parametri e farli visualizzare, inoltre ha:

● il metodo punti() che restituisce quanti punti ha in campionato (ogni partita vinta vale 3 punti, ogni partita pareggiata 1, quelle perse 0)
● un metodo inizioanno() che resetta il numero di partite vinte, pareggiate e perse portandole a zero.
● il metodo goalFatto()
● il motodo goalSubito()

Creare un main per provare la classe creando due istanze Juventus e Milan e si provino ad utilizzare facendo inserire all’utente per entrambe le squadre il numero di partite vinte, perse e pareggiate e quanti gol fatti e subiti e poi confrontando quale delle due ha più punti in campionato e quale delle due ha subito più goal e quale ne ha fatti di più.
NB: si sviluppi usando il paradigma della programmazione ad oggetti ed in particolare rispettando l’information hiding: parametri privati, metodi pubblici.


#include <stdio.h>
class Squadra{
private:
//Elenco di attributi (che sono tutti privati)
int goalFatti;
int goalSubiti;
int partiteVinte;
int partitePerse;
int partitePareggiate;
public:
//Costruttori
Squadra(){
goalFatti=0;
goalSubiti=0;
partiteVinte=0;
partitePerse=0;
partitePareggiate=0;
}
int getGoalFatti(){return goalFatti;}
int getGoalSubiti(){return goalSubiti;}
int getPartitePerse(){return partitePerse;}
int getPartiteVinte(){return partiteVinte;}
int getPartitePareggiate(){return partitePareggiate;}
//Metodo che restituisce quanti punti ha la squadra
int punti(){
int puntiTotali;
puntiTotali=(partiteVinte*3)+(partitePareggiate*1);
return puntiTotali;
}
//Metodo che resetta tutto
void inizioAnno(){
goalFatti=0;
goalSubiti=0;
partiteVinte=0;
partitePerse=0;
partitePareggiate=0;
}
void goalFatto(){goalFatti++;}
void goalSubito(){goalSubiti++;}
void vinto(){partiteVinte++;}
void perso(){partitePerse++;}
void pareggiato(){partitePareggiate++;}
};

main (){
//Dichiaro due squadre
Squadra Juventus;
Squadra Milan;
//Creo la juve
Juventus=Squadra();
printf("Numero di vittorie della juve %d\n",Juventus.getPartiteVinte());
Juventus.goalFatto();
Juventus.goalFatto();
Juventus.goalSubito();
Juventus.vinto();
printf("Numero di vittorie della juve %d\n",Juventus.getPartiteVinte());
printf("Goal fatti della juve %d\n",Juventus.getGoalFatti());
}