codice:
#include <iostream>
#include <fstream>
#include <string>
#include <sstream>
#include <map>
using namespace std;
int main() {
fstream in("file.txt");
if(in.is_open()){
cout<<"";
}
else{
cerr<<"error opening file";
exit(-1);
}
map<string,int> scalaValori;
scalaValori["inesistente"] = 0;
scalaValori["disastroso"] = 1;
scalaValori["tremendo"] = 2;
scalaValori["scarso"] = 3;
scalaValori["debole"] = 4;
scalaValori["insufficiente"] = 5;
scalaValori["accettabile"] = 6;
scalaValori["buono"] = 7;
scalaValori["eccellente"] = 8;
scalaValori["formidabile"] = 9;
scalaValori["straordinario"] = 10;
scalaValori["splendido"] = 11;
scalaValori["magnifico"] = 12;
scalaValori["fuoriclasse"] = 13;
scalaValori["sovrannaturale"]= 14;
scalaValori["titanico"] = 15;
scalaValori["extraterrestre"]= 16;
scalaValori["mitico"] = 17;
scalaValori["magico"] = 18;
scalaValori["utopico"] = 19;
scalaValori["divino"] = 20;
string buffer;
int id;
int TSI;
int STIPENDIO;
int percentuale;
int valoreInteroTsi;
int valoreInteroStipendio;
int intcross;
int intregia;
int intforma;
int intresistenza;
int intparate;
int intpassaggi;
int intdifesa;
int intattacco;
int intcalcipiazzati;
string nome;
string cognome;
string forma;
string resistenza;
string parate;
string tsi;
string stipendio;
string regia;
string passaggi;
string cross;
string difesa;
string attacco;
string calcipiazzati;
size_t trovato;
size_t trovato1;
getline(in, nome, ' '); //legge il nome
getline(in, cognome, ' '); //legge il cognome
getline(in, buffer, '('); //salta fino alla '('
in >> id; //legge l'id
getline(in,buffer,' ');//ignora la seconda riga
getline(in,buffer);//ignora la terza riga
getline(in,forma,' ');//legge la forma
getline(in,buffer,' ');
getline(in,buffer,' ');
getline(in,resistenza,' ');//legge la resistenza
getline(in,buffer);
getline(in,buffer); //ignoro tre righe
getline(in,buffer);
getline(in,buffer,' ');
getline(in,buffer,' ');
getline(in,buffer,' ');
getline(in,buffer,':');
getline(in,tsi);
tsi.erase(0,1);
trovato=tsi.find_first_of(' ');
tsi = tsi.erase(trovato,1);
istringstream temp(tsi);
temp >> valoreInteroTsi;
getline(in,buffer,' ');
getline(in,stipendio,'€');
stipendio.erase(0,1);
trovato1=stipendio.find_first_of(' ');
stipendio= stipendio.erase(trovato1,1);
istringstream temp1(stipendio);
temp1 >> valoreInteroStipendio;
getline(in,buffer,'o');
in >> percentuale;
getline(in,buffer);
getline(in,buffer);
getline(in,buffer);
getline(in,buffer);
getline(in,buffer);
getline(in,buffer,' ');
getline(in,buffer,' ');
getline(in,buffer,' ');
getline(in,buffer,' ');
getline(in,parate);
parate=parate.erase(0,1);
getline(in,buffer,' ');
getline(in,regia,' ');
regia=regia.erase(0,1);
getline(in,buffer,' ');
getline(in,passaggi);
passaggi= passaggi.erase(0,1);
getline(in,buffer,' ');
getline(in,cross,' ');
cross = cross.erase(0,1);
getline(in,buffer,' ');
getline(in,difesa);
difesa = difesa.erase(0,1);
getline(in,buffer,' ');
getline(in,attacco,' ');
attacco=attacco.erase(0,1);
getline(in,buffer,' ');
getline(in,buffer,' ');
getline(in,calcipiazzati);
calcipiazzati=calcipiazzati.erase(0,1);
forma=forma.erase(0,1);
resistenza=resistenza.erase(0,0);
intcross=scalaValori[cross];
intdifesa=scalaValori[difesa];
intattacco=scalaValori[cross];
intcalcipiazzati=scalaValori[calcipiazzati];
intforma=scalaValori[forma];
intresistenza=scalaValori[resistenza];
intparate=scalaValori[parate];
intpassaggi=scalaValori[passaggi];
intregia=scalaValori[regia];
cout<<nome<<endl;
cout<<cognome<<endl;
cout<<id<<endl;
cout<<"Forma: "<<forma<<endl;
cout<<"Resistenza: "<<resistenza<<endl;
cout<<"Tsi: "<<valoreInteroTsi<<endl;
cout<<"Stipendio: "<<stipendio;
if (percentuale == 20) cout<<" incluso bonus"<<endl; //c'è o no il bonus??
else cout<<endl;
cout<<"Parate: "<<parate<<endl;
cout<<"Regia: "<<regia<<endl;
cout<<"Passaggi: "<<passaggi<<endl;
cout<<"Cross: "<<cross<<endl;
cout<<"Difesa: "<<difesa<<endl;
cout<<"Attacco: "<<attacco<<endl;
cout<<"Calci Piazzati: "<<calcipiazzati<<endl;
}