buongiorno a tutti..
sto provando ed eseguire un esercizio però trovo diversi problemi nell'affrontarlo, premetto che l'insegnante non ha nemmeno spiegato gli array però da quanto ho capito guardando qui e li varie guide questo esercizio dovrei svolgerlo con gli array.
così chiedo aiuto a voi
l'esercizio dice: c'è un elenco scolastico in cui ci sono nomi degli alunni e le loro rispettive classi. si vuole contare gli studenti di ogni classe. sapendo che le classi sono 5 (la sezione non è richiesta e nemmeno l'anno)
allora io ho fatto così fino ad ora però sono bloccato perchè non saprei come andare avanti inoltre ciò che ho fatto mi sa tanto che è sbagliato.
vorrei che qualcuno mi desse qualche consiglio su magari come procedere, sicuramente ho sbagliato a priori la logica con cui affrontare l'esercizio perchè lo sento che c'è qualcosa che è sbagliato così vi chiedo una mano
codice:#include<iostream> #include<string> using namespace std; int main() { string alunno,classe1[20]; char scelta; int n=0; cout<<"premere 1 per inserire gli alunni della prima classe"<<endl<<"premere 2 per inserire gli alunni della seconda classe"<<endl<<"premere 3 per inserire gli alunni della terza classe"<<endl<<"premere 4 per inserire gli alunni della quarta classe"<<endl<<"premere 5 per inserire gli alunni della quinta classe"<<endl<<"premere 6 per terminare"<<endl; cin>>scelta; do{ switch(scelta) { case '1': cout<<"quanti alunni vuoi inserire nella prima classe?"<<endl; cin>>n; for(int i=0;i<n;i++) { cout<<"inserisci l'alunno "<<i+1<<endl; cin>>classe1[i]; alunno=classe1[i]+alunno; } break; case '2': cout<<"quanti alunni vuoi inserire nella seconda classe?"<<endl; break; case '6': system("pause"); return 0; break; } }while(scelta!=6); cout<<alunno<<endl; system("pause"); return 0; }
gli errori sono: se premo 6 esce dal programma, ok, ma se io premo 1 per esempio e compilo i primi alunni appena ho terminato il progrmama mi richiede di compilare gli alunni sempre della stessa classe.
se premo 2 invece mi stampa a video infinite volte la scritta nel case 2
infine gli alunni stampati ( cout<<alunno<<endl; ) me li stampa a video in ordine decrescente e senza spazi mentre io vorrei che magari me li stampasse con gli spazi ma comunque dell'ordine non mi interessa... cioè io alla fine dovrei riuscire a contarli questi alunni come li posso contare? anche la grandezza del vettore non saprei quale mettere una vale l'altra?

Rispondi quotando