1 #include <iostream> 2 #include <cstdlib> 3 using namespace std; 4 5 #define TAILLE 200 6 7 /* Fonction raz: Remet le tableau a zero 8 Parametres: A = tableau, 9 taille = taille du tableau 10 */ 11 void raz(int A[], int taille) { 12 for(int i=0;i<taille;i++) { 13 A[i]=0; 14 } 15 } 16 17 /* Fonction imp: imprime le tableau complet 18 Parametres: A = tableau 19 taille = taille du tableau 20 21 */ 22 void imp(int A[], int taille) { 23 for (int i=0;i<taille;i++) { 24 cout << A[i]; 25 }; 26 cout << "\n"; 27 } 28 29 /* Fonction cella: renvoie une CELLule du tableau choisie Aleatoirement, sous forme de lvalue 30 Parametres: A = tableau 31 taille = taille du tableau 32 renvoie: la case du tableau 33 */ 34 35 int& cella(int A[], int taille) { 36 int z; 37 z=rand() % taille; 38 return A[z]; 39 } 40 41 int main() { 42 43 // Tableau declare de maniere statique 44 int A[TAILLE]; 45 46 // Remet le tableau a zero 47 raz(A,TAILLE); 48 49 // Initialise le generateur aleatoire 50 // Le resultat sera le meme si on lance le programme plusieurs fois par seconde 51 srand(time(NULL)); 52 53 // Initialise le tableau de maniere aleatoire 54 // On choisit une case au hasard et on met 1 dedans 55 // On le fait tourner TAILLE/2 fois, tout ne sera donc pas initialise 56 for(int i=0;i<TAILLE/2;++i) { 57 cella(A,TAILLE) = 1; 58 } 59 60 // imprime le resultat 61 imp(A,TAILLE); 62 cout << endl; 63 64 return 0; 65 } 66