xx_unity_xx
Messages postés5Date d'inscriptionvendredi 14 novembre 2003StatutMembreDernière intervention 6 décembre 2003 6 déc. 2003 à 22:22
en vb ta huste a utiliser randomize timer c ben plus simple meme si tu utilise rnd au moin sa marche bien
Helkanen
Messages postés54Date d'inscriptionmardi 24 décembre 2002StatutMembreDernière intervention 9 juin 2004 31 oct. 2003 à 14:39
merci sibi12, c bien ce que je pensais...
sibi12
Messages postés337Date d'inscriptionjeudi 19 décembre 2002StatutMembreDernière intervention15 avril 2006 31 oct. 2003 à 13:42
Bonjour à tous,
Pour helkanen les opérateur And Or et Not sont des opérateurs logique.Si tu veux juste avoir l'explication booléenne fait F1 en le selectionnant c'est très bien expliquer ds l'aide. Sinon ca s'applique aussi a des entiers il suffit d'appliquer bit à bit l'operateur sur chacun des 2 operandes:
par exemple :
10010011
OR 01010010
-------------
11010011
Il y a aussi sous VB les opérateurs Imp Xor et Not(un seul opérande) je crois que c tout
Mindiell
Messages postés558Date d'inscriptionjeudi 25 juillet 2002StatutMembreDernière intervention 5 septembre 20071 31 oct. 2003 à 10:02
Bon, c'est pas mal tout ca, je vous conseille comme l'ai dit CyberDevil de regarder des generateurs de nombre aleatoires beaucoup plus simples !!!
Genre : c1 = a*c0 + b
c0 est le premier nombre, il permet de creer c1, puis on reinjecte c1 dans la formule : c2 = a*c1 + b
Ainsi, seul le premier nombre a besoin de tickCount (ce qui est une bonne graine de départ).
!!! Attention !!!
a et b ne peuvent etre choisis n'importe comment, faites des essais, vous verrez bien :o). Le mieux serait de prendre des nombres premiers.
De plus, un bon truc tout simple pour eliminer les repetitions est de calculer un resultat beaucoup plus grand que l'ecart voulu, et de le ramener a l'ecart par un modulo :
ecart (0-10)
resultat (0-16000)
ainsi, meme si on a que des chiffres proches les uns des autres, on obtiendra un nombre aleatoire different :o)
Je vais tacher de retrouver le site qui expliquait tout ca :o)
Helkanen
Messages postés54Date d'inscriptionmardi 24 décembre 2002StatutMembreDernière intervention 9 juin 2004 30 oct. 2003 à 21:07
merci Geff
c'est pas mal ce truc...
et si j'ai bien compris, X c'est par exemple gettickcount ?
parce que si c'est ça, il reste juste un problème (qui ne se posait peut etre pas à toi), c'est qu'en faisant 2 nombres aléatoires en moins d'une ms (très probable), et ben... on a pas deux nombres aléatoires, mais égaux...
par contre (eh oui, je suis encore presque un newbie...), euh j'aimerais bien savoir comment fonctionnent les opérateurs booléens (And, Or, Not..) avec des nombres... comme dans l'exelmple ci-dessus... et à quoi ils servent.
bon ben sur ce...
bonne prog à vous
Helkanen
cs_Geff
Messages postés192Date d'inscriptionvendredi 2 mars 2001StatutMembreDernière intervention10 janvier 2006 30 oct. 2003 à 20:53
J'ai un piti générateur de nombre aléatoire (entre -1 et 1) je l'ai codé à l'occasion d'un générateur de texture procédurale voila l'exemple en VB.Net ::
Function Noise(ByVal X As Double) As Double
Return 1.0 - ((X * (X * X * 15731 + 789221) + 1376312589) And 2147483647) / 1073741824.0
End Function
Tous ces nombres étranges sont premiers!
Helkanen
Messages postés54Date d'inscriptionmardi 24 décembre 2002StatutMembreDernière intervention 9 juin 2004 30 oct. 2003 à 18:43
clair, j'y suis allé à la bourrin... mais c'est pas grave...
enfin bon, si tu trouves un bon algo, je suis preneur !
Cyberdevil
Messages postés483Date d'inscriptionmardi 10 juillet 2001StatutMembreDernière intervention12 juillet 2006 30 oct. 2003 à 18:34
g pas essayé mais ça peut etre pas mal, mais tu nutilise pas un alogirithm très précis, c'est un pdu bidule comme tu dit ! Je vais essayer d'en faire un en utilisait des algo. deja connu sur ce sujet ça serap lus puissant !
A+
6 déc. 2003 à 22:22
31 oct. 2003 à 14:39
31 oct. 2003 à 13:42
Pour helkanen les opérateur And Or et Not sont des opérateurs logique.Si tu veux juste avoir l'explication booléenne fait F1 en le selectionnant c'est très bien expliquer ds l'aide. Sinon ca s'applique aussi a des entiers il suffit d'appliquer bit à bit l'operateur sur chacun des 2 operandes:
par exemple :
10010011
OR 01010010
-------------
11010011
Il y a aussi sous VB les opérateurs Imp Xor et Not(un seul opérande) je crois que c tout
31 oct. 2003 à 10:02
Genre : c1 = a*c0 + b
c0 est le premier nombre, il permet de creer c1, puis on reinjecte c1 dans la formule : c2 = a*c1 + b
Ainsi, seul le premier nombre a besoin de tickCount (ce qui est une bonne graine de départ).
!!! Attention !!!
a et b ne peuvent etre choisis n'importe comment, faites des essais, vous verrez bien :o). Le mieux serait de prendre des nombres premiers.
De plus, un bon truc tout simple pour eliminer les repetitions est de calculer un resultat beaucoup plus grand que l'ecart voulu, et de le ramener a l'ecart par un modulo :
ecart (0-10)
resultat (0-16000)
ainsi, meme si on a que des chiffres proches les uns des autres, on obtiendra un nombre aleatoire different :o)
Je vais tacher de retrouver le site qui expliquait tout ca :o)
30 oct. 2003 à 21:07
c'est pas mal ce truc...
et si j'ai bien compris, X c'est par exemple gettickcount ?
parce que si c'est ça, il reste juste un problème (qui ne se posait peut etre pas à toi), c'est qu'en faisant 2 nombres aléatoires en moins d'une ms (très probable), et ben... on a pas deux nombres aléatoires, mais égaux...
par contre (eh oui, je suis encore presque un newbie...), euh j'aimerais bien savoir comment fonctionnent les opérateurs booléens (And, Or, Not..) avec des nombres... comme dans l'exelmple ci-dessus... et à quoi ils servent.
bon ben sur ce...
bonne prog à vous
Helkanen
30 oct. 2003 à 20:53
Function Noise(ByVal X As Double) As Double
Return 1.0 - ((X * (X * X * 15731 + 789221) + 1376312589) And 2147483647) / 1073741824.0
End Function
Tous ces nombres étranges sont premiers!
30 oct. 2003 à 18:43
enfin bon, si tu trouves un bon algo, je suis preneur !
30 oct. 2003 à 18:34
A+