Newsgroup: it.comp.lang.javascript
Titolo: Numeri Random in JS.

Salve Ragazzi,
sono da poco diventato programmatore Javascript e sicuramente entrerò a far
parte attivamente di questo ng. (Spero di essere ben accetto)
Al momento mi sto dedicando alla programmazione di Giochi in Javascript....
la mia prima applicazione (gioco) è il memobox.... lo potete trovare al sito
www.alexpalmieri.com/javascript/
come potete notare bisogna attendere circa 30 sec. prima che il gioco venga
caricato... Questo problema è dovuto ad una funzione di Random (Generazione
Numeri casuali). Lo sbaglio è stato mio nel non studiare bene la funzione
Math.random di JS credevo infatti che restituisse solo 1 o 0 invece quello
che restituisce Math.random () come molti di voi sanno è un numero da 0 a 1
espresso nella seguente forma : 0.07832331810437909...
La funzione che uso ora per generare numeri casuali è questa :
function rnd(scale)   // Generatore di Numeri casuali...
{      // L'assegnazione dei numeri è la procedura che rallenta l'inizio del
gioco.
var dd=new Date();
return((Math.round(Math.abs(Math.sin(dd.getSeconds()))*1000000000)%scale));
}
Lo svantaggio di questa funzione è che si appoggia ai Millisecondi.... va
bene se devo generare un solo numero casuale.... mentre mostra i suoi
difetti quando cerco 32 Numeri casuali (30 Sec. di attesa).
Fatta questa (ahimè lunga) premessa passo al mio problema... Ho provato a
lavorare con la funzione matematica random per ottenere una serie di numeri
casuali....
Math.round(Math.random()*100)  Grazie a questa funzione ottengo un numero
casuale da 0 a 100. provandola sul memo ho notato che azzero i tempi di
attesa.... Rimane solo un piccolo problema e qui spero che qualche anica pia
mi venga incontro.... nella prima funzione Random passo il valore scale e la
funzione mi restituisce un numero random compreso in scale... per Esempio la
funzione rnd(64) mi restituisce un numero random tra 1 e 64. Io vorrei fare
lo stesso con Math.random.. cioè fare una funzione che mi restituisca un
numero casuale in base ad un valore passato.
Mi scuso per la lunghezza della mail..... Mi piacerebbe avere una vostra
opinione sul codice del memobox.... è commentato in Italiano.... e anche le
variabili che ho usato sono tutte in italiano per una facile comprensione
del programma.
Grazie per la disponibilità :))) Ricambierò partecipando spesso al NG.....
Inizio Subito ;))
Ciaooooooooooooo
Alla Prox :)
Alessandro.

 wrote in message 7k7qkg$3fg$1...@aquila.tiscalinet.it...


Ciao Alessandro, vedo che abbiamo lo stesso cognome!
Anchio seguo per ora passivamente questo Ng cercando di imparare qualcosa,
comunque se ho capito il tuo problema una soluzione possibile potrebbe
essere questa:
function rnd(scale)
{
 return (Math.round(Math.random()*scale));
}
In questo modo se scrivi rnd(50) ottieni un numero compreso fra 0 e 50..
Salutoni e visitero' il tuo sito per scoprire se siamo parenti....
--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Alessio Palmieri
Home Page : 
www.zampa.superdada.com
                  (Ancora in costruzione)
Email : 
p.al...@superdada.com
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

 wrote in message
3767b...@news.dada.it...


Innanzitutto benvenuto in questo NG!!!
Ci farà piacere una nuova presenza attiva.
Spero che ti divertirai tanto, qui con noi.
:)))
Ho visto il tuo gioco: è proprio carino. A volte mi fa vedere la foto di sfondo anche se non azzecco la coppia di icone, però va bene anche così: la tipa infatti non è davvero niente male... :)
Beh, alla proxy, come si dice da queste parti...
Ciao.
Darius. (
www.infotronica.it/darius/
)

 wrote in message
7kafd9$8s8$1...@serv1.iunet.it...


te.... Quella foto l'ho scattata io ad un concerto ;P
Mi raccomando, metti tutte foto come quella... :)))
Alla proxy!
Ciao.
Darius. (
www.infotronica.it/darius/
)