| Initialiser la fonction Rnd() ? | |
|
+5papydall JL35 Pedro Ouf_ca_passe mimic 9 participants |
Auteur | Message |
---|
mimic
Nombre de messages : 103 Localisation : france Date d'inscription : 02/09/2009
| Sujet: Initialiser la fonction Rnd() ? Jeu 12 Jan 2017 - 10:43 | |
| BONJOUR,
Je souhaite produire une même séquence de nombres pseudo-aléatoires, cependant, comment modifier la "graine" du générateur ?
Merci d'avance.
| |
|
| |
Ouf_ca_passe
Nombre de messages : 285 Age : 76 Localisation : Villeneuve d'Ascq (59-Dpt du NORD) France Date d'inscription : 21/12/2015
| Sujet: NE NOUS QUITTE PAS Jeu 12 Jan 2017 - 15:08 | |
| Bonjour Mimic Je ne suis pas capable de répondre à ta question - que je n'ai d'ailleurs pas comprise - mais j'interviens pour pas que tu croies qu'on s'en désinteresse et que tu nous quittes. A mon époque, dans une autre galaxie fort lointaine, il y avait RND et RANDOMIZE mais ça n'a probablement rien à voir avec ta question. Cordialement | |
|
| |
Pedro
Nombre de messages : 1595 Date d'inscription : 19/01/2014
| Sujet: Fonction Rnd. Jeu 12 Jan 2017 - 15:30 | |
| Bonjour. Notre ami Klaus a créé une fonction dans ce sens: res% = DLL_call1("RandomValue",maxi%)maxi% valeur maximale à retourner. si maxi% = -1, alors la racine du système est randomisée res%: valeur aléatoire retournéeExemple: - Code:
-
dim res% res% = DLL_call1("RandomValue",0-1) : ' randomize res% = DLL_call1("RandomValue",6) message "Valeur aléatoire: "+str$(res%) | |
|
| |
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Initialiser la fonction Rnd() ? Jeu 12 Jan 2017 - 15:36 | |
| | |
|
| |
papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: Initialiser la fonction Rnd() ? Jeu 12 Jan 2017 - 17:52 | |
| | |
|
| |
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Initialiser la fonction Rnd() ? Jeu 12 Jan 2017 - 18:43 | |
| Mea culpa papydall... et en plus j'y étais intervenu, pour dire une pseudo-bêtise Mais que penses-tu de la demande de mimic, j'ai cru comprendre qu'il voulait obtenir la même séquence à chaque appel de la fonction... Ou alors je n'ai rien compris du tout ! | |
|
| |
papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: Initialiser la fonction Rnd() ? Jeu 12 Jan 2017 - 22:50 | |
| - Jl35 a écrit:
- Mais que penses-tu de la demande de mimic, j'ai cru comprendre qu'il voulait obtenir la même séquence à chaque appel de la fonction...
A mon humble avis, ça ne sera pas possible. Ça sera du prédéterminé, donc du connu à l’avance, et quel intérêt à ça ? Mais, peut-être que si mimic a posé la question, c’est qu’il a sa petite idée derrière la tête. Je ne vois pas d’autre solution que celle que tu as proposée, à savoir "noter la séquence la première fois, dans un tableau par exemple, et la restituer ensuite dans les (pseudo) appels suivants". | |
|
| |
Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: Initialiser la fonction Rnd() ? Ven 13 Jan 2017 - 6:54 | |
| Si c'est pour avoir des séquences déterminée, mieux vaut utiliser des formules de maths. Selon la tête de ce que l'on veut, on peut avoir des résultats intéressant en utilisant des sinus ou cosinus et des tests de bornes mais ça dépend vraiment de la "forme" des résultat que l'on souhaite obtenir. Sinon, tu peux utiliser les data ou les fichiers de données. | |
|
| |
mimic
Nombre de messages : 103 Localisation : france Date d'inscription : 02/09/2009
| Sujet: Re: Initialiser la fonction Rnd() ? Ven 13 Jan 2017 - 10:58 | |
| Merci à tous, pour votre intervention (oui, tous!)
Bien, je vois que, je n'ai pas été très clair...
Tout d'abord, c'est pour un petit jeu sans prétention, donc la qualité des séquences générées importe assez peu.
Je cherche à générer aléatoirement des grilles de chiffres ( toujours les mêmes grilles). Les mémoriser dans un tableau me semble un peu lourd, supposons 8 niveaux * 30 grilles par niveaux, taille de la grille jusqu'à 9*9.
Bilan :
pas de fonction dédiée dans Panoramic, n'ayant pas besoin d'une générateur de compétition, je vais me contenter d'un générateur maison (simpliste).
Je garde quand même le générateur de Papydall, sous le coude... | |
|
| |
Jack Admin
Nombre de messages : 2395 Date d'inscription : 28/05/2007
| Sujet: Re: Initialiser la fonction Rnd() ? Ven 13 Jan 2017 - 12:16 | |
| Pour le moment, la fonction RND(X) retourne un nombre aléatoire entre 0 et X. Elle est basée sur une distribution gaussienne qui est centrée sur X/2 et dont l'écart-type est X. Pour générer un nombre aléatoire, il utilise le nombre de ticks du système. Ce n'est pas parfait comme génération, mais suffisant pour la plupart des applications. Je peux créer des commandes: - pour imposer la "graine" : RND_SEED X afin de réinitialiser le générateur à une certaine valeur, ce qui permettra de générer des séquences aléatoires répétitives, - pour générer aléatoirement la "graine" : RANDOMIZE afin de générer des séquences aléatoires non prévisibles. Il faut noter que Panoramic, à son démarrage effectue l'équivalent de la commande RANDOMIZE, ce qui a pour effet de ne jamais générer les mêmes séquences de nombres aléatoires, ce qui gêne mimic. Pour le moment, j'essaye de sortir une version de Panoramic avec sa documentation à jour. Les commandes RND_SEED et RANDOMIZE seront ajoutées ensuite. Patience. _________________ username : panoramic@jack-panoramic password : panoramic123 | |
|
| |
jjn4
Nombre de messages : 2747 Date d'inscription : 13/09/2009
| Sujet: +++ Ven 13 Jan 2017 - 16:47 | |
| | |
|
| |
Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Sam 14 Jan 2017 - 11:55 | |
| Ca y est ! La TODO_LIST de Jack a repris sa taille normale. ...Environ 250 pages. | |
|
| |
Ouf_ca_passe
Nombre de messages : 285 Age : 76 Localisation : Villeneuve d'Ascq (59-Dpt du NORD) France Date d'inscription : 21/12/2015
| Sujet: TODO List Lun 16 Jan 2017 - 9:54 | |
| @ Ygeronimi Pour finir, tu n'as pas été déconnecté si longtemps que ça. J'avais tort de m'inquiéter. Qu'appelles-tu TODO list ? Est-ce la liste des choses qui restent à faire à JACK ? ou bien a-t-il fini l'actualisation des mots-clés classés dans l'ordre alphabétique and IF YES how can I download it | |
|
| |
Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Lun 16 Jan 2017 - 11:09 | |
| - Ouf_ca_passe a écrit:
- Qu'appelles-tu TODO list ? Est-ce la liste des choses qui restent à faire à JACK ?
C' est cela même. | |
|
| |
papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: Initialiser la fonction Rnd() ? Lun 16 Jan 2017 - 11:19 | |
| Une todo list ( to do list) est une liste de tâches. Elle peut être représentée par un fichier qui contient l’énumération des tâches avec une date limite de réalisation. | |
|
| |
Contenu sponsorisé
| Sujet: Re: Initialiser la fonction Rnd() ? | |
| |
|
| |
| Initialiser la fonction Rnd() ? | |
|