+ Rispondi al messaggio
Visualizzazione dei risultati da 1 a 7 su 7

[C++] Gestione database problema in ricerca e gestione file

  1. #1
    Sebjudo89 non è in linea Novello
    Post
    3
    Like Inviati  
    0
    Like Ricevuti  
    0
    Salve ragazzi, mi sn appena iscritto a masterdrive, e sn un programmatore alle primissime armi, quindi mi scuso fin d'ora x tutti gli errori ke potrò commettere, e sn naturalmente disponibile ad accettare suggerimenti e critiche purché siano costruttive. Il mio problema è qst: sto preparando un codice x gestire un database, ma sto trovando alcuni problemi e x qst chiedo il vostro aiuto:
    - il primo è la ricerca ke nn va(il prof vuole x forza la ricerca dicotomica, e la devo effettuare su almeno 2 campi )

    
    
    struct volontario
    {
       char nome[30];
       char cognome[30];
       char indirizzo[40];
       int eta;
       char numero_cellulare[20];
    };
    
    class listavolontari
    {
    public:
       listavolontari(void);
       int addvolontario (volontario v);
       int rimuovivolontario (volontario* v);
       int modificavolontario (volontario* v);
       void scegli_visualizza(void);
       void scegli_cerca(void);
       void ordina_cognome(void);
       void ordina_eta(void);
       void visualizzalista (void);
       void ricerca_dicotomica_cognome(void); 
       void ricerca_dicotomica_eta(void);
       void modifica();
       char NomeComponente[30];
       private:
       int numerodeivolontari;
       volontario lista[Num_massimo_volontari];
    };
    
    void listavolontari:: scegli_visualizza(void)
    {
         while (scelta != 3)
    	 {
              system ("CLS");
              cout << " Se desideri visualizzare l'elenco ordinato per cognome premi 1: \n "; 
              cout << " Se desideri visualizzare l'elenco ordinato per età premi 2: \n";
              cout << " Se desideri tornare al menu di componente premi 3: \n";
              scelta = ReadNumber();
       	      switch (scelta)
    	            {
       		           case 1:   
                       ordina_componente_cognome();
                       visualizzalista ();
                       system ("PAUSE");
                       break;
                  
                       case 2:   
                       ordina_componente_eta();
                       visualizzalista ();
                       system ("PAUSE");
                       break;
                  }
        }
    }
    
    void listavolontari :: ordina_componente_cognome(void)
    {
       int i,j;
       if(numerodeivolontari ==0){"Non ci sono volontari da ordinare \n";}
       else
       {
           for(i=0; i< numerodeivolontari-1; i++)
           {
              for(j=i+1; j< numerodeivolontari; j++)
              {
                 if (strcmp(lista[i].cognome,lista[j].cognome)>= 1)
                 {
                     strcpy(buffer,lista[j].nome);
                     strcpy(lista[j].nome,lista[i].nome);
                     strcpy(lista[i].nome,buffer);
                     strcpy(buffer,lista[j].cognome);
                     strcpy(lista[j].cognome,lista[i].cognome);
                     strcpy(lista[i].cognome,buffer);
                     strcpy(buffer,lista[j].indirizzo);
                     strcpy(lista[j].indirizzo,lista[i].indirizzo);
                     strcpy(lista[i].indirizzo,buffer);
                     buffer_eta = lista[j].eta;
                     lista[j].eta = lista[i].eta;
                     lista[i].eta = buffer_eta;
                     strcpy(buffer,lista[j].numero_cellulare);
                     strcpy(lista[j].numero_cellulare,lista[i].numero_cellulare);
                     strcpy(lista[i].numero_cellulare,buffer);
                }
             }
          }
       cout << " Ordinamento per cognome completato con successo \n";
       }
    }
    
    
    void listavolontari:: scegli_cerca(void)
    {
         while (scelta != 3)
    	 {
              system ("CLS");
              cout << " Se si desidera cercare un volontario inserendo il suo cognome premi 1: \n "; 
              cout << " Se si desidera cercare un volontario inserendendo la sua età premi 2: \n "; 
              cout << " Se desideri tornare al menu di componente premi 3: \n";
              scelta = ReadNumber();
     	      switch (scelta)
    	            {
       		            case 1: 
                        ordina_componente_cognome();
                        ricerca_dicotomica_cognome(); 
                        system ("PAUSE");
                        break;
                  
                        case 2:   
                        ordina_componente_eta();
                        ricerca_dicotomica_eta();
                        system ("PAUSE");
                        break;
                  }
       }
    }      
    
    
    void listavolontari :: ricerca_cognome(void) 
    {	
       int basso=0, alto=numerodeivolontari-1, medio; 
       char cognome_trovare[30];
       system ("CLS");
       cout << " Scirivi il Cognome del volontario che stai cercando: \n";
       cin.getline(cognome_trovare, sizeof(cognome_trovare));
       
       while (basso <= alto) 
       {
               medio = (basso + alto)/2; 
               if(strcmp(lista[medio].cognome, cognome_trovare) == 0)
               { 
                   cout << lista[medio].nome << "\n";
                   cout << lista[medio].cognome << "\n"; 
                   cout << lista[medio].indirizzo << "\n";
                   cout << lista[medio].eta << "\n";
                   cout << lista[medio].numero_cellulare << "\n"; 
               }  
               if (strcmp(lista[medio].cognome, cognome_trovare) < 0) basso = medio +1; 
                  else 
                  {
                      alto = medio -1; 
                      break;
                 } 
       }
       cout << "Attualmente non c'è nessun volontario nella componente dei:" << NomeComponente << "\n";
       cout << "con il cognome " << cognome_trovare << "\n";
    }
    
    
    void listavolontari :: ricerca_eta(void) 
    {
         int basso=0, alto=numerodeivolontari-1, medio=0; 
         system ("CLS");
         cout << " Scirivi l'eta del volontario che stai cercando: \n";
         buffer_eta= ReadNumber();
         while (basso <= alto) 
         {
              medio = (basso + alto)/2; 
              if(lista[medio].eta == buffer_eta)
              { 
                 cout << lista[medio].nome << "\n";
                 cout << lista[medio].cognome << "\n"; 
                 cout << lista[medio].indirizzo << "\n";
                 cout << lista[medio].eta << "\n";
                 cout << lista[medio].numero_cellulare << "\n"; 
              } 
              if (buffer_eta > lista[medio].eta) basso = medio+1; 
                 else 
                 {
                     alto = medio -1; 
                     break;
                }
        cout << "Attualmente non c'è nessun volontario nella componente dei:" << NomeComponente << "\n";
        cout << "che abbia " << buffer_eta << " anni \n";
        }
    }
    
    Ultima modifica di Sebjudo89; 28-10-2010 12:08  Motivo: Ripensamento

  2. #2
    L'avatar di saettadizeus
    saettadizeus non è in linea Scolaretto
    Post
    69
    Blogs
    1
    Like Inviati  
    0
    Like Ricevuti  
    0
    Ciao,

    da una veloce lettura del tuo codice, ho potuto constatare che nella definizione dell'oggetto hai i metodi:

        void ordina_cognome(void);
        void ordina_eta(void);
        void ricerca_dicotomica_cognome(void); 
        void ricerca_dicotomica_eta(void);
    
    e richiami questi. Se fai attenzione però successivamente implementi dei metodi che hanno nomi differenti:

        void ordina_componente_cognome(void);
        void ordina_componente_eta(void);
        void ricerca_cognome(void); 
        void ricerca_eta(void);
    
    Non vorrei sbagliarmi; sei proprio sicuro che compila correttamente?

    CiaoCiao
    ℹ️ Leggi di più su saettadizeus ...

  3. #3
    Sebjudo89 non è in linea Novello
    Post
    3
    Like Inviati  
    0
    Like Ricevuti  
    0
    Ciao grazie x la segnalazione, l'errore ke tu mi hai segnalato è presto risolto, in effetti ho fatto un pò di confusione tra i nomi dei metodi della classe, ora metto una versione in cui penso di esser riuscito a far ordine tra i nomi dei metodi, ma resta un problema fondamentale ke nn riesco a risolvere: le 2 funzioni ke fanno la ricerca dicotomica nn funzionano. Infatti dopo aver corretto tutti nomi, sn riuscito a compilare ma le funzioni fanno confusione nella ricerca, e su qst chiedo il vostro aiuto (considerando anche il fatto ke purtroppo sn obbligato dalla traccia dell'esame a usare il metodo della ricerca dicotomica).

    struct volontario
    {
       char nome[30];
       char cognome[30];
       char indirizzo[40];
       int eta;
       char numero_cellulare[20];
    };
    
    class listavolontari
    {
    public:
       listavolontari(void);
       int addvolontario (volontario v);
       int rimuovivolontario (volontario* v);
       int modificavolontario (volontario* v);
       void scegli_visualizza(void);
       void scegli_cerca(void);
       void ordina_cognome(void);
       void ordina_eta(void);
       void visualizzalista (void);
       void ricerca_dicotomica_cognome(void); 
       void ricerca_dicotomica_eta(void);
       void modifica();
       char NomeComponente[30];
       private:
       int numerodeivolontari;
       volontario lista[Num_massimo_volontari];
    };
    
    void listavolontari:: scegli_visualizza(void)
    {
         while (scelta != 3)
    	 {
              system ("CLS");
              cout << " Se desideri visualizzare l'elenco ordinato per cognome premi 1: \n "; 
              cout << " Se desideri visualizzare l'elenco ordinato per età premi 2: \n";
              cout << " Se desideri tornare al menu di componente premi 3: \n";
              scelta = ReadNumber();
       	      switch (scelta)
    	            {
       		           case 1:   
                       ordina_componente_cognome();
                       visualizzalista ();
                       system ("PAUSE");
                       break;
                  
                       case 2:   
                       ordina_componente_eta();
                       visualizzalista ();
                       system ("PAUSE");
                       break;
                  }
        }
    }
    
    void listavolontari :: ordina_cognome(void)
    {
       int i,j;
       if(numerodeivolontari ==0){"Non ci sono volontari da ordinare \n";}
       else
       {
           for(i=0; i< numerodeivolontari-1; i++)
           {
              for(j=i+1; j< numerodeivolontari; j++)
              {
                 if (strcmp(lista[i].cognome,lista[j].cognome)>= 1)
                 {
                     strcpy(buffer,lista[j].nome);
                     strcpy(lista[j].nome,lista[i].nome);
                     strcpy(lista[i].nome,buffer);
                     strcpy(buffer,lista[j].cognome);
                     strcpy(lista[j].cognome,lista[i].cognome);
                     strcpy(lista[i].cognome,buffer);
                     strcpy(buffer,lista[j].indirizzo);
                     strcpy(lista[j].indirizzo,lista[i].indirizzo);
                     strcpy(lista[i].indirizzo,buffer);
                     buffer_eta = lista[j].eta;
                     lista[j].eta = lista[i].eta;
                     lista[i].eta = buffer_eta;
                     strcpy(buffer,lista[j].numero_cellulare);
                     strcpy(lista[j].numero_cellulare,lista[i].numero_cellulare);
                     strcpy(lista[i].numero_cellulare,buffer);
                }
             }
          }
       cout << " Ordinamento per cognome completato con successo \n";
       }
    }
    
    void listavolontari :: ordina_eta(void)
    {
       int i,j;
       if(numerodeivolontari ==0){"Non ci sono volontari da ordinare \n";}
       else
       {
           for(i=0; i< numerodeivolontari-1; i++)
           {
              for(j=i+1; j< numerodeivolontari; j++)
              {
                 if (lista[i].eta>lista[j].eta)
                 {
                     strcpy(buffer,lista[j].nome);
                     strcpy(lista[j].nome,lista[i].nome);
                     strcpy(lista[i].nome,buffer);
                     strcpy(buffer,lista[j].cognome);
                     strcpy(lista[j].cognome,lista[i].cognome);
                     strcpy(lista[i].cognome,buffer);
                     strcpy(buffer,lista[j].indirizzo);
                     strcpy(lista[j].indirizzo,lista[i].indirizzo);
                     strcpy(lista[i].indirizzo,buffer);
                     buffer_eta = lista[j].eta;
                     lista[j].eta = lista[i].eta;
                     lista[i].eta = buffer_eta;
                     strcpy(buffer,lista[j].numero_cellulare);
                     strcpy(lista[j].numero_cellulare,lista[i].numero_cellulare);
                     strcpy(lista[i].numero_cellulare,buffer);
               }
             }
          }
       cout << " Ordinamento per età completato con successo \n";
       }
    }
    
    void listavolontari:: scegli_cerca(void)
    {
         while (scelta != 3)
    	 {
              system ("CLS");
              cout << " Se si desidera cercare un volontario inserendo il suo cognome premi 1: \n "; 
              cout << " Se si desidera cercare un volontario inserendendo la sua età premi 2: \n "; 
              cout << " Se desideri tornare al menu di componente premi 3: \n";
              scelta = ReadNumber();
     	      switch (scelta)
    	            {
       		            case 1: 
                        ordina_componente_cognome();
                        ricerca_dicotomica_cognome(); 
                        system ("PAUSE");
                        break;
                  
                        case 2:   
                        ordina_componente_eta();
                        ricerca_dicotomica_eta();
                        system ("PAUSE");
                        break;
                  }
       }
    }      
    
    
    void listavolontari :: ricerca_dicotmica_cognome(void) 
    {	
       int basso=0, alto=numerodeivolontari-1, medio; 
       char cognome_trovare[30];
       system ("CLS");
       cout << " Scirivi il Cognome del volontario che stai cercando: \n";
       cin.getline(cognome_trovare, sizeof(cognome_trovare));
       
       while (basso <= alto) 
       {
               medio = (basso + alto)/2; 
               if(strcmp(lista[medio].cognome, cognome_trovare) == 0)
               { 
                   cout << lista[medio].nome << "\n";
                   cout << lista[medio].cognome << "\n"; 
                   cout << lista[medio].indirizzo << "\n";
                   cout << lista[medio].eta << "\n";
                   cout << lista[medio].numero_cellulare << "\n"; 
               }  
               if (strcmp(lista[medio].cognome, cognome_trovare) < 0) basso = medio +1; 
                  else 
                  {
                      alto = medio -1; 
                      break;
                 } 
       }
       cout << "Attualmente non c'è nessun volontario nella componente dei:" << NomeComponente << "\n";
       cout << "con il cognome " << cognome_trovare << "\n";
    }
    
    
    void listavolontari :: ricerca_dicotomica_eta(void) 
    {
         int basso=0, alto=numerodeivolontari-1, medio=0; 
         system ("CLS");
         cout << " Scirivi l'eta del volontario che stai cercando: \n";
         buffer_eta= ReadNumber();
         while (basso <= alto) 
         {
              medio = (basso + alto)/2; 
              if(lista[medio].eta == buffer_eta)
              { 
                 cout << lista[medio].nome << "\n";
                 cout << lista[medio].cognome << "\n"; 
                 cout << lista[medio].indirizzo << "\n";
                 cout << lista[medio].eta << "\n";
                 cout << lista[medio].numero_cellulare << "\n"; 
              } 
              if (buffer_eta > lista[medio].eta) basso = medio+1; 
                 else 
                 {
                     alto = medio -1; 
                     break;
                }
        cout << "Attualmente non c'è nessun volontario nella componente dei:" << NomeComponente << "\n";
        cout << "che abbia " << buffer_eta << " anni \n";
        }
    }
    
    Ultima modifica di bottomap; 30-10-2010 11:35  Motivo: formattato codice

  4. #4
    L'avatar di saettadizeus
    saettadizeus non è in linea Scolaretto
    Post
    69
    Blogs
    1
    Like Inviati  
    0
    Like Ricevuti  
    0
    Quote Originariamente inviato da Sebjudo89 Visualizza il messaggio
    Infatti dopo aver corretto tutti nomi, sn riuscito a compilare
    su questa tua affermazione ho diversi dubbi. Non credo proprio che tu sia riuscito a compilare il sorgente in quanto a colpo d'occhio ho notato altri errori:

    scelta = ReadNumber();
    
    Non trovo la definizione di questa funzione.

    void listavolontari :: ordina_componente_cognome(void)
    {
       int i,j;
       if(numerodeivolontari ==0){"Non ci sono volontari da ordinare \n";}
       ...
    }
    
    Come fa il compilatore a capire che deve stampare la scritta "Non ci sono.." se manca il cout?

    void listavolontari :: ricerca_dicotmica_cognome(void) {...}
    
    Quando implementi la funzione ricerca_dicotomica_cognome ti mangi una "o".

    Il mio punto di vista è questo: devi prima di tutto far compilare il programma eliminando gli errori presenti (che ti ho segnalato io e altri che devi trovare tu).
    Ti ricordo che la compilazione e l'esecuzione sono due fasi distinte. Attualmente sei fermo sulla compilazione e non puoi dire che il codice non funziona,
    semplicemente non riesci a compilarlo in quando contiene diversi errori sintattici.
    Successivamente possiamo andare a verificare la bontà del tuo algoritmo di ricerca dicotomica.

    CiaoCiao
    ℹ️ Leggi di più su saettadizeus ...

  5. #5
    L'avatar di bottomap
    bottomap non è in linea Amanuense
    Post
    4,130
    Like Inviati  
    0
    Like Ricevuti  
    0
    Ciao,

    @sebjudo89: Se devi postare del codice e vuoi mantenere la formattazione, utilizza i tag appositi [code] e [/code] e non il [quote]. Ho corretto io, per questa volta, il tuo ultimo post.

    Per quanto riguarda il codice mi associo appieno alle considerazioni di saettadizeus. Quello che hai postato non può compilare.

    Ciaociao
    ℹ️ Leggi di più su bottomap ...

  6. #6
    Sebjudo89 non è in linea Novello
    Post
    3
    Like Inviati  
    0
    Like Ricevuti  
    0
    Allora innanzitutto ringrazio ki mi ha risp x la disponibilità e x la pazienza, cm ho specificato nel mio primo mess sn un programmatore alle prime armi. ed evidentemente anche un pò disordinato, x quanto riguarda la readnumber la metto subito, semplicemente ho messo solo parte del mio codice xkè mi interessava focalizzare l'attenzione sulla ricerca dicotomica, quindi spero ke nella versione parziale del programma ke scrivo ora nn ci siano errori

     
    #include <cstdlib>
    #include <iostream>
    #include <fstream>
    #include <string>
    
    #define Num_massimo_volontari 100
    
    using namespace std;
    
    fstream file;
    char buffer[40]; 
    int buffer_eta;
    int  scelta = 0;
    int ReadNumber();
    
    struct volontario
    {
       char nome[30];
       char cognome[30];
       char indirizzo[40];
       int eta;
       char numero_cellulare[20];
    };
    
    class listavolontari
    {
    public:
       listavolontari(void);
       int addvolontario (volontario v);
       int rimuovivolontario (volontario* v);
       int modificavolontario (volontario* v);
       void scegli_visualizza(void);
       void scegli_cerca(void);
       void ordina_componente_cognome(void);
       void ordina_componente_eta(void);
       void visualizzalista (void);
       void ricerca_dicotomica_cognome(void); 
       void ricerca_dicotomica_eta(void);
       void modifica();
       char NomeComponente[30];
       private:
       int numerodeivolontari;
       volontario lista[Num_massimo_volontari];
    };
    
    listavolontari :: listavolontari()
    { 
        numerodeivolontari = 0;
    }               
    
    void listavolontari:: scegli_visualizza(void)
    {
         while (scelta != 3)
    	 {
              system ("CLS");
              cout << " Se desideri visualizzare l'elenco ordinato per cognome premi 1: \n "; 
              cout << " Se desideri visualizzare l'elenco ordinato per età premi 2: \n";
              cout << " Se desideri tornare al menu di componente premi 3: \n";
              scelta = ReadNumber();
       	      switch (scelta)
    	            {
       		           case 1:   
                       ordina_componente_cognome();
                       visualizzalista ();
                       system ("PAUSE");
                       break;
                  
                       case 2:   
                       ordina_componente_eta();
                       visualizzalista ();
                       system ("PAUSE");
                       break;
                  }
        }
    }
    
    
    void listavolontari:: scegli_cerca(void)
    {
         while (scelta != 3)
    	 {
              system ("CLS");
              cout << " Se si desidera cercare un volontario inserendo il suo cognome premi 1: \n "; 
              cout << " Se si desidera cercare un volontario inserendendo la sua età premi 2: \n "; 
              cout << " Se desideri tornare al menu di componente premi 3: \n";
              scelta = ReadNumber();
     	      switch (scelta)
    	            {
       		            case 1: 
                        ordina_componente_cognome();
                        ricerca_dicotomica_cognome(); 
                        system ("PAUSE");
                        break;
                  
                        case 2:   
                        ordina_componente_eta();
                        ricerca_dicotomica_eta();
                        system ("PAUSE");
                        break;
                  }
       }
    }      
    
    void listavolontari :: ordina_componente_cognome(void)
    {
       int i,j;
       if(numerodeivolontari ==0){cout<< "Non ci sono volontari da ordinare \n";}
       else
       {
           for(i=0; i< numerodeivolontari-1; i++)
           {
              for(j=i+1; j< numerodeivolontari; j++)
              {
                 if (strcmp(lista[i].cognome,lista[j].cognome)>= 1)
                 {
                     strcpy(buffer,lista[j].nome);
                     strcpy(lista[j].nome,lista[i].nome);
                     strcpy(lista[i].nome,buffer);
                     strcpy(buffer,lista[j].cognome);
                     strcpy(lista[j].cognome,lista[i].cognome);
                     strcpy(lista[i].cognome,buffer);
                     strcpy(buffer,lista[j].indirizzo);
                     strcpy(lista[j].indirizzo,lista[i].indirizzo);
                     strcpy(lista[i].indirizzo,buffer);
                     buffer_eta = lista[j].eta;
                     lista[j].eta = lista[i].eta;
                     lista[i].eta = buffer_eta;
                     strcpy(buffer,lista[j].numero_cellulare);
                     strcpy(lista[j].numero_cellulare,lista[i].numero_cellulare);
                     strcpy(lista[i].numero_cellulare,buffer);
                }
             }
          }
       cout << " Ordinamento per cognome completato con successo \n";
       }
    }
    
    void listavolontari :: ordina_componente_eta(void)
    {
       int i,j;
       if(numerodeivolontari ==0){cout<< "Non ci sono volontari da ordinare \n";}
       else
       {
           for(i=0; i< numerodeivolontari-1; i++)
           {
              for(j=i+1; j< numerodeivolontari; j++)
              {
                 if (lista[i].eta>lista[j].eta)
                 {
                     strcpy(buffer,lista[j].nome);
                     strcpy(lista[j].nome,lista[i].nome);
                     strcpy(lista[i].nome,buffer);
                     strcpy(buffer,lista[j].cognome);
                     strcpy(lista[j].cognome,lista[i].cognome);
                     strcpy(lista[i].cognome,buffer);
                     strcpy(buffer,lista[j].indirizzo);
                     strcpy(lista[j].indirizzo,lista[i].indirizzo);
                     strcpy(lista[i].indirizzo,buffer);
                     buffer_eta = lista[j].eta;
                     lista[j].eta = lista[i].eta;
                     lista[i].eta = buffer_eta;
                     strcpy(buffer,lista[j].numero_cellulare);
                     strcpy(lista[j].numero_cellulare,lista[i].numero_cellulare);
                     strcpy(lista[i].numero_cellulare,buffer);
               }
             }
          }
       cout << " Ordinamento per età completato con successo \n";
       }
    }
    
    
    void listavolontari :: ricerca_dicotomica_cognome(void) 
    {	
       int basso=0, alto=numerodeivolontari-1, medio; 
       char cognome_trovare[30];
       system ("CLS");
       cout << " Scirivi il Cognome del volontario che stai cercando: \n";
       cin.getline(cognome_trovare, sizeof(cognome_trovare));
       
       while (basso <= alto) 
       {
               medio = (basso + alto)/2; 
               if(strcmp(lista[medio].cognome, cognome_trovare) == 0)
               { 
                   cout << lista[medio].nome << "\n";
                   cout << lista[medio].cognome << "\n"; 
                   cout << lista[medio].indirizzo << "\n";
                   cout << lista[medio].eta << "\n";
                   cout << lista[medio].numero_cellulare << "\n"; 
               }  
               if (strcmp(lista[medio].cognome, cognome_trovare) < 0) basso = medio +1; 
                  else 
                  {
                      alto = medio -1; 
                      break;
                 } 
       }
       cout << "Attualmente non c'è nessun volontario nella componente dei:" << NomeComponente << "\n";
       cout << "con il cognome " << cognome_trovare << "\n";
    }
    
    
    void listavolontari :: ricerca_dicotomica_eta(void) 
    {
         int basso=0, alto=numerodeivolontari-1, medio=0; 
         system ("CLS");
         cout << " Scirivi l'eta del volontario che stai cercando: \n";
         buffer_eta= ReadNumber();
         while (basso <= alto) 
         {
              medio = (basso + alto)/2; 
              if(lista[medio].eta == buffer_eta)
              { 
                 cout << lista[medio].nome << "\n";
                 cout << lista[medio].cognome << "\n"; 
                 cout << lista[medio].indirizzo << "\n";
                 cout << lista[medio].eta << "\n";
                 cout << lista[medio].numero_cellulare << "\n"; 
              } 
              if (buffer_eta > lista[medio].eta) basso = medio+1; 
                 else 
                 {
                     alto = medio -1; 
                     break;
                }
        cout << "Attualmente non c'è nessun volontario nella componente dei:" << NomeComponente << "\n";
        cout << "che abbia " << buffer_eta << " anni \n";
        }
    }
    
    int ReadNumber()
    {
       cin.getline(buffer, sizeof(buffer));
       return atoi(buffer);
    }
    

  7. #7
    L'avatar di saettadizeus
    saettadizeus non è in linea Scolaretto
    Post
    69
    Blogs
    1
    Like Inviati  
    0
    Like Ricevuti  
    0
    Sei riuscito a compilare? "strcmp" mi risulta sia definita in "string.h" e non in "string". Pubblica anche il tuo main di prova e vedi se si esegue correttamente.

    CiaoCiao
    ℹ️ Leggi di più su saettadizeus ...

+ Rispondi al messaggio

Potrebbero interessarti anche ...

  1. Risposte: 3
    Ultimo Post: 10-09-2015, 19:25
  2. Risposte: 0
    Ultimo Post: 25-02-2013, 11:40
  3. Problema Gestione Database
    Da tolomeo nel forum Visual Basic .Net
    Risposte: 4
    Ultimo Post: 22-08-2009, 15:58
  4. Problema nella gestione dei file
    Da lorepc88 nel forum Visual Basic 6
    Risposte: 6
    Ultimo Post: 17-05-2006, 18:52
  5. problema VisualBasic6: gestione database
    Da MarcoC nel forum Visual Basic 6
    Risposte: 2
    Ultimo Post: 10-06-2003, 14:23