Ominide 690 punti

#include <iostream>
#include <stdlib.h>
#define MAX 50
#include <iomanip>
#include <string.h>

using namespace std;

struct dispositivo{
char marca[21];
float display;
char s_o[21];
float costo;
};

void input(int &n,dispositivo dispositivi[]);
void ordinamento(int n,dispositivo dispositivi[]);
void visualizza(int n,dispositivo dispositivi[]);
void media (int n,dispositivo dispositivi[]);
//void stampa (int n,dispositivo dispositivi[]);


int main(){
dispositivo dispositivi [MAX] ={{"Zamzung",4.5,"Airdroid",200.99},
{"Fokia",5,"Windows",299.99},
{"Applo",10,"ISO",899.99},
{"Zamzung",4.5,"Airdroid",200.99},

{"Fokia",5,"Windows",299.99},
{"Applo",10,"ISO",899.99},
{"Zamzung",4.5,"Airdroid",200.99},
{"Fokia",5,"Windows",299.99},
{"Applo",10,"ISO",899.99},
{"Zamzung",4.5,"Airdroid",200.99}};
int n=3,scelta;
do{
system ("cls");
cout<<"GESTIONE CATALOGO DISPOSITIVI MOBILI";
cout<<endl;
cout<<"1) Inserimento"<<endl<<endl;
cout<<"2) Ordinamento"<<endl<<endl;
cout<<"3) Visualizza"<<endl<<endl;
cout<<"4) Media"<<endl<<endl;
cout<<"5) Esci"<<endl<<endl;
cout<<"Scegli opzione: ";
cin>>scelta;
switch(scelta){
case 1:
input (n, dispositivi);
break;
case 2:
ordinamento(n,dispositivi);
break;
case 3:
visualizza(n,dispositivi);
break;
case 4:
media (n,dispositivi);
}

}while(scelta!= 5);

return 0;
}
void input(int &n,dispositivo dispositivi[]){
system ("cls");
cout<<"1. Input dei dati...";
cout<<endl<<"Dammi il numero di dispositivi: ";

cin>>n;
for(int i=0; i<n; i++){
cout<<"Dammi il nome della marca: ";
cin>>dispositivi.marca;
cout<<"Dammi la dimensione del display: ";
cin>>dispositivi.display;
cout<<"Dammi il Sistema Operativo del dispositivo: ";
cin>>dispositivi.s_o;
cout<<"Dammi il costo del dispositivo: ";
cin>>dispositivi.costo;
}
system("PAUSE");

}
void ordinamento(int n,dispositivo dispositivi[]){
system ("cls");
cout<<"2. Ordinamento...";
/* for(int i = 0 ; i < n-1 ; i++)
for(int j = i+1; j < n ; j ++)
if(dispositivi.display>dispositivi[j].display){
tmp=dispositivi;
dispositivi=dispositivi[j];
dispositivi[j]=tmp;
}*/
for(int i = 0 ; i <= n ; i++){
cout<<left<<setw(15)<<dispositivi.marca<<" ";
cout<<right<<setw(10)<<dispositivi.display<<" Pollici ";
cout<<left<<setw(15)<<dispositivi.s_o<<" ";
cout<<right<<setw(6)<<dispositivi.costo<<" Euro \n";
}
cout<<"\n";
cout<<"schiaccia un tasto qualunque per tornare al menu' \n\n\n";
system("PAUSE");
}
void visualizza(int n,dispositivo dispositivi[]){
system ("cls");

cout<<"3. Visualizza..."<<endl;
for(int i=0; i<n; i++){
cout<<left<<setw(15)<<dispositivi.marca<<" ";
cout<<left<<setw(4)<<dispositivi.display<<" ";
cout<<left<<setw(15)<<dispositivi.s_o<<" ";
cout<<left<<setw(4)<<dispositivi.costo<<" "<<"Euro";
cout<<endl;
}
system("PAUSE");
}
void media(int n,dispositivo dispositivi[]){
system ("cls");
char vett[21];
int tmp=0, j=0;
cout<<"4, Media...";
cout<<"Inserisci il Sistema Operativo dei dispositivi da analizzare: ";
cin.getline(vett, 21);
for( int i=0; i< n+1; i++){
if(strcmp(vett, dispositivi.s_o) == 0){
tmp = tmp+dispositivi.costo;
j++;
}
}
cout<<"La media dei costi dei dispositivi e': "<<tmp/j;
system("PAUSE");
}

Hai bisogno di aiuto in Informatica?
Trova il tuo insegnante su Skuola.net | Ripetizioni
Registrati via email