1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 | #include using namespace std; struct Personne { char nom[32]; char numero[32]; }; void nouveau_numero(Personne *nouveau) { cout << "Nouvelle entree dans la base de donnees:" << endl; cout << "Entrez le nom: " ; cin >> nouveau->nom; cout << "Entrez le numero: " ; cin >> nouveau->numero; if (nouveau->nom[0] >= 'a' && nouveau->nom[0] <= 'z' ) // minuscule nouveau->nom[0] += 'A' - 'a' ; // majuscule } void recherche(Personne *db, int taille) { char search[32]; cout << " Entrez le nom a chercher: " ; cin >> search; int index = 0; while (index < taille && strcmp (db[index].nom, search) != 0) index++; if (index < taille) cout << "Le numero de " << search << " est " << db[index].numero << endl; else cout << "Le nom '" << search << "' n'existe pas dans la base de donnees." << endl; } void liste(Personne *db, int taille) { cout << endl << "Liste:" << endl; for ( int i=0; i<taille; i++) cout << i+1 << ") " << db[i].nom << " " << db[i].numero << endl; cout << endl; } int main( int argc, char **argv) { const int max_adresses = 20; Personne db[max_adresses]; int nombre_adresses = 0; bool fin = false ; char choix; do { cout << "1) Nouveau numero" << endl; cout << "2) Recherche" << endl; cout << "3) Liste" << endl; cout << "4) Quitter" << endl; cin >> choix; switch (choix) { case '1' : if (nombre_adresses < max_adresses) { nouveau_numero(db + nombre_adresses); nombre_adresses++; } else cout << "Base de donnees pleine\n" ; break ; case '2' : recherche(db, nombre_adresses); break ; case '3' : liste(db, nombre_adresses); break ; case '4' : fin = true ; break ; } } while (!fin); return 0; } |
- Friday
- May 16th, 2025
- Ajouter un cours