Derniers sujets
» L'ile oubliée
Aujourd'hui à 22:02 par Dom50

» Des propositions graphiques pour Oricutron
Aujourd'hui à 18:37 par TotoShampoin

» Bus d'extension - accès à la RAM
Aujourd'hui à 18:20 par laurentd75

» Annonces insolites
Hier à 20:15 par kenneth

» opération compliquée
Lun 18 Mar 2019 - 22:58 par laurentd75

» Novalight
Dim 17 Mar 2019 - 21:33 par Symoon

» Route en effet 3d
Dim 17 Mar 2019 - 18:37 par Dbug

» musique en c
Ven 15 Mar 2019 - 14:54 par laurentd75

»  Oric Atmos problème de sortie vidéo
Ven 15 Mar 2019 - 14:48 par kenneth

» 65c816 et dédicace à Fabrice F :)
Jeu 14 Mar 2019 - 11:20 par Jede

» cherche quelqu'un(e)(s) avec qui retravailler la rom basic 16 kos
Jeu 14 Mar 2019 - 10:45 par Jede

» Aux couleurs de l'Atmos
Jeu 14 Mar 2019 - 3:04 par Voyageur

» ORIC-1 sur LE BON COIN
Lun 11 Mar 2019 - 23:20 par kenneth

» Cumulus
Lun 11 Mar 2019 - 17:01 par Jede

» rs
Lun 11 Mar 2019 - 11:47 par kenneth

Qui est en ligne ?
Il y a en tout 2 utilisateurs en ligne :: 0 Enregistré, 0 Invisible et 2 Invités

Aucun

Le record du nombre d'utilisateurs en ligne est de 29 le Mer 25 Fév 2015 - 14:01
Connexion

Récupérer mon mot de passe

Statistiques
Nous avons 175 membres enregistrés
L'utilisateur enregistré le plus récent est ZodiacFR

Nos membres ont posté un total de 6906 messages dans 594 sujets
Portail ORIC




BASIC - Tirage au sort aléatoire - fonction RND()

Aller en bas

BASIC - Tirage au sort aléatoire - fonction RND()

Message par maximus le Ven 11 Jan 2019 - 9:10

Pour faire des tirages au sort on utilise la commande RND()

Or le souci c'est qu'elle renvoie souvent le même résultat même en rebootant l'émulateur

On m'avait il y a très longtemps suggéré de rajouter au début du programme:

A=DEEK(#308):R=RND(-A)

ce que je fais sans en comprendre le sens et ça semblait fonctionner

ce matin je me replonge dans mes programmes abandonnés depuis 6 mois Embarassed  et en tirant au sort les caracs d'un personnage je vois sortir la même chaine de chiffres étonnant non ?

j'ai essayé plusieurs fois et zou la même série !! Shocked Shocked Shocked

Je soumets ce mystère à votre expertise Cool

Question
maximus
maximus

Messages : 1239
Date d'inscription : 02/12/2012
Age : 58
Localisation : Nimes

http://cinema.forumactif.org/

Revenir en haut Aller en bas

Re: BASIC - Tirage au sort aléatoire - fonction RND()

Message par drpsy le Ven 11 Jan 2019 - 10:09

Je suggère d'ajouter un petit "GET A$" affublé d'un message "appuyer sur une touche". Cela permet d'introduire un délai aléatoire avant de faire une lecture sur la mémoire de l'oric et garantit quasiment la non repetabilite de la série

_________________
>++++++++++[<++++++++>-]<.>++++++[<++++>-]<+.----.+++++++++++++..-------------.[-]
drpsy
drpsy

Messages : 195
Date d'inscription : 20/07/2014
Age : 47
Localisation : Lagny sur Marne

Revenir en haut Aller en bas

Re: BASIC - Tirage au sort aléatoire - fonction RND()

Message par maximus le Ven 11 Jan 2019 - 10:59

en fait il y a déjà plein de GET ds le module de création, donc ça ne fonctionne pas
je fais un break CTRL-C puis je relance par RUN sans rebooter et là ça gaze Shocked Shocked Suspect Suspect Question Question
maximus
maximus

Messages : 1239
Date d'inscription : 02/12/2012
Age : 58
Localisation : Nimes

http://cinema.forumactif.org/

Revenir en haut Aller en bas

Re: BASIC - Tirage au sort aléatoire - fonction RND()

Message par kenneth le Ven 11 Jan 2019 - 11:40

drpsy a écrit:Je suggère d'ajouter un petit "GET A$" affublé d'un message "appuyer sur une touche". Cela permet d'introduire un délai aléatoire avant de faire une lecture sur la mémoire de l'oric et garantit quasiment la non repetabilite de la série
c etait un procédé utilisé pour la protection des jeux:
le prog annonce un nombre entre 1 et 100 et on doit répondre par la couleur de la case numérotée d'une image papier fournie avec la cassette. A l'époque, faire la copie de la copie d'une image couleur était difficile.
Pour éviter de désigner la même case l'intro prétextait d'appuyer sur "enter" pour choisir le code, c'est le délai d'appui sur la touche en milisecondes, impossible a reproduire à l'identique qui servait de base à la pioche au hasard du numéro de la case. Demander au pirate de participer a la protection du jeu contre lui-même, c est pas banal... clown
kenneth
kenneth
Modérateur

Messages : 597
Date d'inscription : 13/01/2013
Age : 51
Localisation : 972

Revenir en haut Aller en bas

Re: BASIC - Tirage au sort aléatoire - fonction RND()

Message par drpsy le Ven 11 Jan 2019 - 13:13

Maximus : le premier GET doit se faire avant le DEEK. RND(-A) a pour effet d'initialiser la fonction Random.

_________________
>++++++++++[<++++++++>-]<.>++++++[<++++>-]<+.----.+++++++++++++..-------------.[-]
drpsy
drpsy

Messages : 195
Date d'inscription : 20/07/2014
Age : 47
Localisation : Lagny sur Marne

Revenir en haut Aller en bas

Re: BASIC - Tirage au sort aléatoire - fonction RND()

Message par maximus le Ven 11 Jan 2019 - 13:57

Embarassed rhoo que je suis nouille j'avais mis l'initialisation en tout début de programme, je l'ai juste déplacée plus loin, après de nombreux GET, et là c'est nickel, merci
maximus
maximus

Messages : 1239
Date d'inscription : 02/12/2012
Age : 58
Localisation : Nimes

http://cinema.forumactif.org/

Revenir en haut Aller en bas

Re: BASIC - Tirage au sort aléatoire - fonction RND()

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum