FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  MembresMembres  Connexion  
Derniers sujets
» select intégrés
Initialiser la fonction Rnd() ? Emptypar jjn4 Aujourd'hui à 18:33

» Aide de PANORAMIC
Initialiser la fonction Rnd() ? Emptypar leclode Aujourd'hui à 18:23

» PANORAMIC V 1
Initialiser la fonction Rnd() ? Emptypar Klaus Aujourd'hui à 9:53

» Je teste PANORAMIC V 1 beta 1
Initialiser la fonction Rnd() ? Emptypar Klaus Aujourd'hui à 9:52

» bouton dans autre form que 0
Initialiser la fonction Rnd() ? Emptypar leclode Hier à 13:59

» KGF_dll - nouvelles versions
Initialiser la fonction Rnd() ? Emptypar Klaus Hier à 11:41

» Gestion d'un système client-serveur.
Initialiser la fonction Rnd() ? Emptypar Klaus Hier à 10:23

» Editeur EliP 6 : Le Tiny éditeur avec 25 onglets de travail
Initialiser la fonction Rnd() ? Emptypar Froggy One Jeu 2 Mai 2024 - 11:16

» @Jack
Initialiser la fonction Rnd() ? Emptypar Jack Mar 30 Avr 2024 - 20:40

» trop de fichiers en cours
Initialiser la fonction Rnd() ? Emptypar papydall Lun 29 Avr 2024 - 23:39

» Une calculatrice en une ligne de programme
Initialiser la fonction Rnd() ? Emptypar jean_debord Dim 28 Avr 2024 - 8:47

» Form(résolu)
Initialiser la fonction Rnd() ? Emptypar leclode Sam 27 Avr 2024 - 17:59

» Bataille navale SM
Initialiser la fonction Rnd() ? Emptypar jjn4 Ven 26 Avr 2024 - 17:39

» Les maths du crocodile
Initialiser la fonction Rnd() ? Emptypar jean_debord Jeu 25 Avr 2024 - 10:37

» Naissance de Crocodile Basic
Initialiser la fonction Rnd() ? Emptypar jean_debord Jeu 25 Avr 2024 - 8:45

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Mai 2024
LunMarMerJeuVenSamDim
  12345
6789101112
13141516171819
20212223242526
2728293031  
CalendrierCalendrier
Le deal à ne pas rater :
Funko POP! Jumbo One Piece Kaido Dragon Form : où l’acheter ?
Voir le deal

 

 Initialiser la fonction Rnd() ?

Aller en bas 
+5
papydall
JL35
Pedro
Ouf_ca_passe
mimic
9 participants
AuteurMessage
mimic

mimic


Nombre de messages : 103
Localisation : france
Date d'inscription : 02/09/2009

Initialiser la fonction Rnd() ? Empty
MessageSujet: Initialiser la fonction Rnd() ?   Initialiser la fonction Rnd() ? EmptyJeu 12 Jan 2017 - 11: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.
Revenir en haut Aller en bas
Ouf_ca_passe




Nombre de messages : 285
Age : 75
Localisation : Villeneuve d'Ascq (59-Dpt du NORD) France
Date d'inscription : 21/12/2015

Initialiser la fonction Rnd() ? Empty
MessageSujet: NE NOUS QUITTE PAS   Initialiser la fonction Rnd() ? EmptyJeu 12 Jan 2017 - 16: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. Very Happy

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
Revenir en haut Aller en bas
Pedro

Pedro


Nombre de messages : 1555
Date d'inscription : 19/01/2014

Initialiser la fonction Rnd() ? Empty
MessageSujet: Fonction Rnd.   Initialiser la fonction Rnd() ? EmptyJeu 12 Jan 2017 - 16: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ée


Exemple:
Code:
dim res%
res% = DLL_call1("RandomValue",0-1)  : '  randomize
res% = DLL_call1("RandomValue",6)
message "Valeur aléatoire: "+str$(res%)
Revenir en haut Aller en bas
JL35




Nombre de messages : 7095
Localisation : 77
Date d'inscription : 29/11/2007

Initialiser la fonction Rnd() ? Empty
MessageSujet: Re: Initialiser la fonction Rnd() ?   Initialiser la fonction Rnd() ? EmptyJeu 12 Jan 2017 - 16:36

Même en pseudo-aléatoire, je ne crois qu'on puisse obtenir la même séquence de nombres dans des appels successifs à une fonction RND, il faudrait demander à nos amis mathématiciens.
Mais si tu veux obtenir exactement la même séquence plusieurs fois successivement, pourquoi ne pas noter la séquence la première fois, dans un tableau par exemple, et la restituer ensuite dans les (pseudo) appels suivants ?
Mais je dis peut-être une bêtise par rapport à ce que tu cherches.

Effectivement en Panoramic il n'est pas prévu de commande d'initialisation comme en basic autrefois.

NB: mimic, tu pourrais peut-être trouver des idées chez notre ami papydall:
https://panoramic.1fr1.net/t3271-statistiques-sur-le-generateur-pseudo-aleatoire?highlight=al%E9atoire
et surtout:
https://panoramic.1fr1.net/t2158-la-fonction-x-rnd1-est-elle-vraiment-aleatoire?highlight=al%E9atoire
Revenir en haut Aller en bas
papydall

papydall


Nombre de messages : 7004
Age : 73
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

Initialiser la fonction Rnd() ? Empty
MessageSujet: Re: Initialiser la fonction Rnd() ?   Initialiser la fonction Rnd() ? EmptyJeu 12 Jan 2017 - 18:52

Hello World !
Merci JL35 pour les liens, mais tu as oublié le meilleur!

Voici mon générateur : https://panoramic.1fr1.net/t4456-generateur-de-nombres-pseudo-aleatoires
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
JL35




Nombre de messages : 7095
Localisation : 77
Date d'inscription : 29/11/2007

Initialiser la fonction Rnd() ? Empty
MessageSujet: Re: Initialiser la fonction Rnd() ?   Initialiser la fonction Rnd() ? EmptyJeu 12 Jan 2017 - 19:43

Mea culpa papydall... et en plus j'y étais intervenu, pour dire une pseudo-bêtise Very Happy

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 ! scratch
Revenir en haut Aller en bas
papydall

papydall


Nombre de messages : 7004
Age : 73
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

Initialiser la fonction Rnd() ? Empty
MessageSujet: Re: Initialiser la fonction Rnd() ?   Initialiser la fonction Rnd() ? EmptyJeu 12 Jan 2017 - 23: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".
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Jicehel

Jicehel


Nombre de messages : 5947
Age : 51
Localisation : 77500
Date d'inscription : 18/04/2011

Initialiser la fonction Rnd() ? Empty
MessageSujet: Re: Initialiser la fonction Rnd() ?   Initialiser la fonction Rnd() ? EmptyVen 13 Jan 2017 - 7: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.
Revenir en haut Aller en bas
mimic

mimic


Nombre de messages : 103
Localisation : france
Date d'inscription : 02/09/2009

Initialiser la fonction Rnd() ? Empty
MessageSujet: Re: Initialiser la fonction Rnd() ?   Initialiser la fonction Rnd() ? EmptyVen 13 Jan 2017 - 11: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...
Revenir en haut Aller en bas
Jack
Admin
Jack


Nombre de messages : 2386
Date d'inscription : 28/05/2007

Initialiser la fonction Rnd() ? Empty
MessageSujet: Re: Initialiser la fonction Rnd() ?   Initialiser la fonction Rnd() ? EmptyVen 13 Jan 2017 - 13: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. Very Happy  Very Happy  Very Happy

_________________
Initialiser la fonction Rnd() ? Webdav username : panoramic@jack-panoramic password : panoramic123
Revenir en haut Aller en bas
https://panoramic.1fr1.net
jjn4

jjn4


Nombre de messages : 2695
Date d'inscription : 13/09/2009

Initialiser la fonction Rnd() ? Empty
MessageSujet: +++   Initialiser la fonction Rnd() ? EmptyVen 13 Jan 2017 - 17:47

Super !
cheers alien cheers
Revenir en haut Aller en bas
http://jjn4.e-monsite.com
Yannick




Nombre de messages : 8610
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Initialiser la fonction Rnd() ? Empty
MessageSujet: re   Initialiser la fonction Rnd() ? EmptySam 14 Jan 2017 - 12:55

Ca y est ! 
La TODO_LIST de Jack a repris sa taille normale.
...Environ 250 pages.
lol!
Revenir en haut Aller en bas
Ouf_ca_passe




Nombre de messages : 285
Age : 75
Localisation : Villeneuve d'Ascq (59-Dpt du NORD) France
Date d'inscription : 21/12/2015

Initialiser la fonction Rnd() ? Empty
MessageSujet: TODO List    Initialiser la fonction Rnd() ? EmptyLun 16 Jan 2017 - 10: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 Question
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8610
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Initialiser la fonction Rnd() ? Empty
MessageSujet: re   Initialiser la fonction Rnd() ? EmptyLun 16 Jan 2017 - 12: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.
Wink
Revenir en haut Aller en bas
papydall

papydall


Nombre de messages : 7004
Age : 73
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

Initialiser la fonction Rnd() ? Empty
MessageSujet: Re: Initialiser la fonction Rnd() ?   Initialiser la fonction Rnd() ? EmptyLun 16 Jan 2017 - 12: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.
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Contenu sponsorisé





Initialiser la fonction Rnd() ? Empty
MessageSujet: Re: Initialiser la fonction Rnd() ?   Initialiser la fonction Rnd() ? Empty

Revenir en haut Aller en bas
 
Initialiser la fonction Rnd() ?
Revenir en haut 
Page 1 sur 1

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: A l'aide!-
Sauter vers: