PDA

Visualizza la versione completa : [c++] esercizio con vettori mappe e iteratori


fabio.beginner
12-12-2013, 13:31
Buongiorno a tutti, avrei bisogno di un aiuto per questo tipo di esercizio, sarei grato se qualcuno potesse aiutarmi. Ho iniziato a programmare in c++ qualche settimana fa ed ecco i primi problemi..

Come esercizio devo leggere il contenuto di un file di testo, nominato alimento.txt, che contiene su ogni riga un cibo e il suo contenuto calorico per grammo, divisi da una tabulazione orizzontale.
Inoltre devo inserire il contenuto del file in una mappa, e il programma mi deve calcolare il contenuto calorico di un cibo in base al suo peso secondo il calcolo = contenuto_calorico * peso.

Io ho creato 3 vettori di tipo string, nel primo ho inserito tutto il contenuto del file, nel secondo ho messo i nomi dei cibi e nel terzo il contenuto calorico per grammo di ogni cibo presente nel file. Ora, poichè il terzo vettore contiene dei numeri, come faccio a convertire un vettore di stringhe in un vettore di interi?

Inoltre ho creato una mappa di questo tipo

map<vector<string>, vector<int>> mymap;
e pensavo di usare un iteratore per poter lavorare con vector<int>, ma come si fa?

Grazie

oregon
12-12-2013, 16:12
Qualche interlinea potevi anche inserirla nel testo per leggere un po' meglio ...

Qual è la domanda precisa? Esiste già del codice che hai scritto?

fabio.beginner
12-12-2013, 16:32
Si ho già del codice ma non so come postarlo in maniera corretta e leggibile... Le domande chiave sono come faccio a convertire un vettore di stringhe in un vettore di interi? E come posso usare l'iteratore per lavorare con gli elementi di una mappa?

fabio.beginner
13-12-2013, 16:24
Perdonatemi ma sugli iteratori è veramente panico..

Scara95
13-12-2013, 17:08
Per postare il codice

Qui il codice

In ogni caso non mi pare tu abbia scelto correttamente il tipo della mappa secondo la tua descrizione...

fabio.beginner
14-12-2013, 18:39
Per postare il codice

Qui il codice

In ogni caso non mi pare tu abbia scelto correttamente il tipo della mappa secondo la tua descrizione...

perchè?

Scara95
14-12-2013, 18:51
perchè?
Necessiti solo di una mappa string int che colleghi nome e contenuto calorico. Tutto il resto è in eccesso.

fabio.beginner
15-12-2013, 16:16
Necessiti solo di una mappa string int che colleghi nome e contenuto calorico. Tutto il resto è in eccesso.

Ok grazie.. ma il mio problema è che non so usare gli iteratori per utilizzare gli elementi della mappa

Scara95
15-12-2013, 16:22
Ok grazie.. ma il mio problema è che non so usare gli iteratori per utilizzare gli elementi della mappa
Qui (http://www.cplusplus.com/reference/map/map) la documentazione con degli esempi, a parte che non ti serve perché puoi inserire e leggere gli elementi con l'operatore []...

fabio.beginner
15-12-2013, 17:07
ma l'operatore [] non puó inserire delle liste!

Loading