(* 
      in tutte e tre le versioni u rappresenta il numero di urne *)

(* 
      in questo primo listato ho usato un ciclo While *) 

u = 100;

    A  =  Table[0 ,  {u}];

    c = 0;

    While[
      Min[A] == 
        0, 
x = 
            Random[Integer, {1, 
                u}];
A[[x]]++;
c++
]

(* 
      qui ho usato un ciclo For per fare la stessa cosa *) 

u = 100;

    A  =  Table[0 ,  {u}];
 (* 
      notate che la condizione d' 
        arresto del ciclo For non usa il contatore c *) 

    For[c = 0, 
      Min[A] == 0, c++, 
x = 
        Random[Integer, {1, 
            u}]; 
A[[x]]++;
]

(* 
      in quest' 
        ultimo listato è stato ottimizzato il codice calcolando la variabile c solo alla fine *) 

u = 
        10;

    A  =  Table[0 ,  {u}];

    While[
      Min[A] == 0, 
x  =  
        Random[Integer, {1, 
            u}]; 
A[[x]]++;
]

    c  =  Sum[ A[[i]], {i, u} ];