|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Member
Iscritto dal: Jan 2007
Messaggi: 112
|
riempire una matrice con numeri casuali
devo creare una cartella della tombola.
prima di mettere tutte le condizioni necessarie, volevo provare a riempire la matrice a caso. perchè mi genera sempre lo stesso numero anche se utilizzo la funzione time? grazie anticipatamente a chi può essermi d'aiuto Codice:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int genera_num();
void main()
{
int a[3][5],i,j;
for(j=0;j<3;j++)
{
for(i=0;i<5;i++)
{
a[i][j]=genera_num();
if(a[i][j]==a[i-1][j-1])
{
a[i][j]=genera_num();
}
}
}
for(j=0;j<3;j++)
{
for(i=0;i<5;i++)
{
printf(" %d",a[i][j]);
}
printf("\n");
}
system("Pause");
return 0;
}
int genera_num()
{
int n;
srand(time(NULL));
n=1+rand()%90;
return n;
}
|
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Ti ho descritto come generare la cartella nell'altro thread...
Comunque srand(time(NULL)); lo devi chiamare una sola volta per l'intero programma. rand ti ritorna lo stesso numero perchè inizializzi ogni volta il generatore casuale con lo stesso valore (quello appunto ritornato da time)... |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 10:23.



















