Pipe
08-07-2007, 08:13
allora l'esercuizio è questo:
http://img156.imageshack.us/img156/6946/eserciziocq2.jpg
io ho fatto questo:
#include <iostream.h>
#include <fstream.h>
//#include <string.h>
struct scultura {
string nome; int anno;
};
const int N = 3;
int schermoMenu (int &scelta){
int a;
//while (scelta !=0){
cout << " Scegli\n\n ";
cout << " 1 per inserire i dati delle sculture\n ";
cout << " 2 per visualizzare la lista delle sculture\n ";
cout << " 0 per uscire dal programma\n " << endl;
cout << "> ";
cin >> scelta;
cin.ignore();
// }
return a;
}
void leggiDato (string &nome, int& anno){
int i;
for (i=1; i<=N; i++){
cout << "\nInserisci il nome della statua numero " << i << ": ";
getline(cin, nome);
cout << "\nInserisci la data di creazione della statua " << nome << ": ";
cin >> anno;
cin.ignore();
}
return;
}
void main(){
int i,anno1;
scultura s;
scultura sculture[N];
int scelta2 = -1;
string nome1;
schermoMenu(scelta2);
if (scelta2 == 1){
leggiDato (nome1, anno1);
}else{
if (scelta2 == 2){
void stampaLista();
}else{
exit(0);
}
}
}
il problema sta nel fatto che una volta premuto il tasto 1 chiamata e portata a termine la procedura leggiDato, non riesco a riportare il programma alla funzione schermoMenu.
http://img156.imageshack.us/img156/6946/eserciziocq2.jpg
io ho fatto questo:
#include <iostream.h>
#include <fstream.h>
//#include <string.h>
struct scultura {
string nome; int anno;
};
const int N = 3;
int schermoMenu (int &scelta){
int a;
//while (scelta !=0){
cout << " Scegli\n\n ";
cout << " 1 per inserire i dati delle sculture\n ";
cout << " 2 per visualizzare la lista delle sculture\n ";
cout << " 0 per uscire dal programma\n " << endl;
cout << "> ";
cin >> scelta;
cin.ignore();
// }
return a;
}
void leggiDato (string &nome, int& anno){
int i;
for (i=1; i<=N; i++){
cout << "\nInserisci il nome della statua numero " << i << ": ";
getline(cin, nome);
cout << "\nInserisci la data di creazione della statua " << nome << ": ";
cin >> anno;
cin.ignore();
}
return;
}
void main(){
int i,anno1;
scultura s;
scultura sculture[N];
int scelta2 = -1;
string nome1;
schermoMenu(scelta2);
if (scelta2 == 1){
leggiDato (nome1, anno1);
}else{
if (scelta2 == 2){
void stampaLista();
}else{
exit(0);
}
}
}
il problema sta nel fatto che una volta premuto il tasto 1 chiamata e portata a termine la procedura leggiDato, non riesco a riportare il programma alla funzione schermoMenu.