View Single Post
Old 23-01-2007, 17:08   #17
yorkeiser
Senior Member
 
L'Avatar di yorkeiser
 
Iscritto dal: Jul 2006
Città: Tristram
Messaggi: 515
Non può ripetere lo stesso numero, poichè i random vengono usati solo come seed per l'ordinamento.
Ti posto il codice, magari lo comprendi meglio

Codice:
#include <stdlib.h>
#include <time.h>

main()
{
int ordinati;
int array[90][2],i,j,temp;
time_t t;
srand((unsigned)time(&t));

for (i=0;i<90;i++)
{
	array[i][0]=i+1; //numeri
	array[i][1]=rand(); //casuale per ordinare array nel bubble sort
}

//BUBBLE SORT
for (i=0;i<90;i++)
{
	ordinati = 1;
	for (j=0;j<89;j++)
	{
		if (array[j][1]>array[j+1][1])
		{
			ordinati=0;
			temp=array[j][1];
			array[j][1]=array[j+1][1];
			array[j+1][1]=temp;
			temp=array[j][0];
			array[j][0]=array[j+1][0];
			array[j+1][0]=temp;
		}
	}
	if (ordinati==1) exit;
}

//STAMPA DELL'ARRAY
for (i=0;i<90;i++)
	printf("%2d %2d\n",i+1,array[i][0]);
}
yorkeiser è offline   Rispondi citando il messaggio o parte di esso