Embehh!!!

non vogliamo andare avanti con queste combinazioni???

io nel mio (molto) piccolo sono arrivato a modificare quello che avete fatto finora per renderlo univoco per il maggior numero di volte.
Com'era prima ripeteva anche se alternativamente, solo tre combinazioni (una in particolare!!).

Ecco a che punto sono arrivato;

<?php
mt_srand ((double)microtime()*1000000);
$TotSquadre = "10";

foreach(range(1, $TotSquadre) as $num_Squadre)
{$sq[] .= "$num_Squadre";}

shuffle($sq);


$n_squadre = count($sq); // conto le squadre

# creo l'array
for ($i=0; $i<$n_squadre; $i++){
for ($j=$i; $j<$n_squadre; $j++){
if ($i!=$j)

$arr[$i][$j] = $sq[$i]." - ".$sq[$j];}}
# invertendo a dx dell'operatore
# $i e $j genero le partite del ritorno

# Genero le giornate
for ($i=0; $i<$n_squadre-2; $i++)
{
$champion[$i] = array();

# genero 2 array con le chiavi dell'array $arr
$ri = $col = range(0,$n_squadre-1);
shuffle($ri);
shuffle($col);




#while (count($champion[$i])<floor($n_squadre/2))
for ($j=0; $j<$n_squadre*10; $j++)
{
if (count($champion[$i])==floor($n_squadre/2)) break;


$x = array_rand($ri);
$y = array_rand($col);

if (isset($arr[$ri[$x]][$col[$y]]) && $x!=$y)
{
$champion[$i][] = $arr[$ri[$x]][$col[$y]];
unset($arr[$ri[$x]][$col[$y]]);
unset($ri[$x], $ri[$y], $col[$x], $col[$y]);
}
}
}
//asort($champion);

# Nell'ultima giornata ci infilo le partite rimanenti
# nell'array $arr
foreach ($arr as $ary)
foreach ($ary AS $val)
$champion[$n_squadre-2][] = $val;


# Leggo l'array
for ($i=0; $i<count($champion); $i++)
{
if(count($champion[$n_squadre-2])>$n_squadre/2) header("location:".$_SERVER['PHP_SELF']);
$stampa = "GIORNATA ".($i+1)." | ";
foreach ($champion[$i] AS $p) $stampa .= $p." | ";
echo "$stampa
";
}


?>


e le domande sono:
- ho inserito al posto giusto la funzione srand??
- l'array $TotSquadre contenitore dei numeri, è per ora composto di soli dieci numeri, ma se io lo volessi di circa venti numeri...... per farlo funzionare senza farlo andare in loop, quali parametri devo cambiare????

- i grafi del C??? che cosa sono ed a che cosa servono?? mi sono un pochino documentato ma non ci ho capito praticamente nulla!!???

e per i grafi in java???

- l'unico neo di questo script è praticamente il fatto che i numeri non vengono ben mescolati:
- ad esempio il numero 2 viene sempre inserito (calcisticamente parlando!!...) in casa;
- il numero 1 è sempre in casa tranne che con il 2 (vedi precedente esempio);
e così via.....

Non c'è nessun modo per evitare tutto ciò!!???

vi ringrazio per l'attenzione e mi scuso in anticipo se per voi questa discussione era ormai defunta e sepolta!!

saluti a tutti!!.