09/10/08 16:11
Overflow
Postato originariamente da totipianurese:
Ciao raga sapete dirmi dove sbaglio??
Ciao raga sapete dirmi dove sbaglio??
#include <iostream> #include <string.h> int z,N; void Unita(void); using namespace std; int main() { string car[9]; car[0]="uno"; car[1]="due"; car[2]="tre"; car[3]="quattro"; car[4]="cinque"; car[5]="sei"; car[6]="sette"; car[7]="otto"; car[8]="nove"; cout<<" Inserisci un numero "<<endl; cin>>N; Unita(); getchar(); } void Unita(void) { cout<<car[N-1]<<Endl; }
l'array car è definito nella funzione main() (è visibile quindi solo in main) e non è visibile alla funzione Unita().
Quindi o definisci car all'esterno(in globale), oppure lo passi come parametro alla funzione Unita.
Ma queste ti ripeto sono basi della programmazione, ti consigli di rivederle. Studiati un buon manuale.
aaa
09/10/08 16:31
totipianurese
Ho fatto così:
ma mi da sempre errore. Lo so, infatti in 10 giorni ho letto 100 pagine di C++, ma devo consegnare questo programma al piu presto.
#include <iostream> #include <string.h> int z,N; void Unita(void); using namespace std; string car[9]; int main() { car[0]="uno"; car[1]="due"; car[2]="tre"; car[3]="quattro"; car[4]="cinque"; car[5]="sei"; car[6]="sette"; car[7]="otto"; car[8]="nove"; cout<<" Inserisci un numero "<<endl; cin>>N; Unita(); getchar(); } void Unita(void) { cout<<car[N-1]<<Endl; }
ma mi da sempre errore. Lo so, infatti in 10 giorni ho letto 100 pagine di C++, ma devo consegnare questo programma al piu presto.
aaa
09/10/08 17:14
totipianurese
scusami ancora, ma xche adesso mi da errore su "dec[0]"???
#include <iostream> #include <string.h> int z,N,I,num,conta; int vet[8]; void Unita(void); void Decine(void); using namespace std; string car[9]; string dec[9]; int main() { car[0]="uno"; car[1]="due"; car[2]="tre"; car[3]="quattro"; car[4]="cinque"; car[5]="sei"; car[6]="sette"; car[7]="otto"; car[8]="nove"; dec[0]="dieci"; dec[1]="venti"; dec[2]="trenta"; dec[3]="quaranta"; dec[4]="cinquanta"; dec[5]="sessanta"; dec[6]="settanta"; dec[7]="ottanta"; dec[8]="novanta"; cout<<"Inserisci il numero di numeri da inserire = "; cin>>num; for (I=0;I<num;I++) { cout<<"Inserisci "<<I+1<<" numero = "; cin>>vet[I]; conta++; } if (conta==1) { I=0; Unita(); } if (conta==2) { I=1; Decine; } getchar(); getchar(); } void Unita(void) { switch (vet[I]) { case 1: cout<<car[0]; break; case 2: cout<<car[1]; break; case 3: cout<<car[2]; break; case 4: cout<<car[3]; break; case 5: cout<<car[4]; break; case 6: cout<<car[5]; break; case 7: cout<<car[6]; break; case 8: cout<<car[7]; break; case 9: cout<<car[8]; break; } } void Decine(void) { cout<<"AA"; }
aaa
09/10/08 17:14
Overflow
cout << "testo" << endl;
endl è diverso da Endl.
Ricordati che N deve essere compreso tra 1 e 8.
1 <= N <= 9
aaa