Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
void main()
{
int scelta,I=0,count=0;
char anno[5],mese[10];
do
{
cout<<"Questo programma serve per la gestione delle schedine del totocalcio"<<endl;
cout<<"1-Gioca schedina del totocalcio"<<endl<<"2-Ricerca schedina(per anno e per mese)"<<endl<<"3-Esci"<<endl;
cin>>scelta;
switch (scelta)
{
case (1):
cout<<"Inserisci il codice della scheda"<<endl;
cin>>appoggio[0].codice;
cout<<"Inserisci il giorno"<<endl;
cin>>appoggio[0].giorno;
cout<<"Inserisci il mese"<<endl;
cin>>appoggio[0].mese;
cout<<"Inserisci l'anno"<<endl;
cin>>appoggio[0].anno;
for (I=0;I<13;I++)
{
strcpy_s(giocate[I].codice,appoggio[0].codice);
strcpy_s(giocate[I].giorno,appoggio[0].giorno);
strcpy_s(giocate[I].mese,appoggio[0].mese);
strcpy_s(giocate[I].anno,appoggio[0].anno);
cout<<"Inserisci il nome della squadra che gioca in casa"<<endl;
cin>>giocate[I].locali;
cout<<"Inserisci il nome della squadra ospite"<<endl;
cin>>giocate[I].ospiti;
do
{
cout<<"inserire il risultato[1,X,2] "<<endl;
cin>>giocate[I].risultato;
}
while( (strcmp(giocate[I].risultato,"x")!=0) && (strcmp(giocate[I].risultato,"1")!=0) && (strcmp(giocate[I].risultato,"2")!=0) );
cin.ignore();
}
count=count+1;
break;
case (2):
cout<<"Inserisci l'anno delle schedine che vuoi cercare"<<endl;
cin>>anno;
cout<<"Inserisci il mese delle schedine che vuoi cercare"<<endl;
cin>>mese;
for (I=0;I<count*13;I++)
{
if (strcmp(giocate[I].anno,anno)==0 && strcmp(giocate[I].mese,mese)==0)
{
strcpy_s(finale[I].codice,giocate[I].codice);
strcpy_s(finale[I].giorno,giocate[I].giorno);
strcpy_s(finale[I].mese,giocate[I].mese);
strcpy_s(finale[I].anno,giocate[I].anno);
strcpy_s(finale[I].locali,giocate[I].locali);
strcpy_s(finale[I].ospiti,giocate[I].ospiti);
strcpy_s(finale[I].risultato,giocate[I].risultato);
}
}
break;
case (3):
break;
default:
cout<<"Attenzione.E' stato inserito un numero non valido."<<endl;
}
}while(scelta!=3);
system("pause");
}
il programma riscontra uin problema nella ricerca perchè se metto o meglio inserisco tre schedine ne trova solo una e le altre se le cerco successivamente sono come scomparse.Perchè uff come posso fare a modificarlo????????
il programma riscontra uin problema nella ricerca perchè se metto o meglio inserisco tre schedine ne trova solo una e le altre se le cerco successivamente sono come scomparse.Perchè uff come posso fare a modificarlo????????
Il problema e' che ogni volta l'inserimanto lo fai a partire dalla posizione 0.
Prova a fare cosi', nel ciclo dell'inserimento fai:
Codice sorgente - presumibilmente C/C++
[...]
int J = Count * 13;
for (I = 0; I < 13; I++)
[...]
giocate[J + I].codice
[...]
Per la ricerca poi, si puo' ottimizzare cosi':
Codice sorgente - presumibilmente C/C++
[...]
for (J = 0; J < count * 13; J += 13)
{
if ((strcmp(giocate[J].anno,anno) == 0) && (strcmp(giocate[J].mese,mese) == 0))
{
for (I = 0; I < 13; I++)
{
[...]
strcpy_s(finale[J + I]
[...]
}
}
[...]
Ultima modifica effettuata da gigisoft il 16/04/2009 alle 10:49