Derniers sujets
» Arttu
Hier à 23:54 par kenneth

» Moment musical....
Hier à 23:52 par Moonchild

» CEO-MAG 345 et VISU HIVERNALE
Hier à 23:35 par laurentd75

» musique en c
Hier à 15:23 par Ladywasky

» Comment mettre le son de l'oric atmos sur un TV ?
Mar 15 Jan 2019 - 13:33 par romu3

» The quest of the Holly Grail
Lun 14 Jan 2019 - 21:46 par didierv

» **NEW** EDGE for ORIC !!!!
Lun 14 Jan 2019 - 19:28 par Symoon

» Codage d'une carte déroulante en BASIC, C et Assembleur
Dim 13 Jan 2019 - 21:40 par laurentd75

» Combien de jeux d'aventure sur oric ?
Dim 13 Jan 2019 - 20:29 par romu3

» Nemausus: RPG du CEO
Dim 13 Jan 2019 - 8:01 par Voyageur

» Archives du site Oric Games
Ven 11 Jan 2019 - 23:01 par kenneth

» ~High Score Challenge ~
Ven 11 Jan 2019 - 20:46 par Dom50

» BASIC - Tirage au sort aléatoire - fonction RND()
Ven 11 Jan 2019 - 13:57 par maximus

» Tyrann I
Ven 11 Jan 2019 - 2:22 par Ladywasky

» passage d'une variable du C à l'assembleur à l'aide de la fonction asm();
Jeu 10 Jan 2019 - 16:37 par drpsy

Qui est en ligne ?
Il y a en tout 1 utilisateur en ligne :: 0 Enregistré, 0 Invisible et 1 Invité

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 165 membres enregistrés
L'utilisateur enregistré le plus récent est retroric

Nos membres ont posté un total de 7891 messages dans 590 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
avatar
maximus

Messages : 1274
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

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

Messages : 168
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
avatar
maximus

Messages : 1274
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
avatar
kenneth
Modérateur

Messages : 530
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.

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

Messages : 168
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
avatar
maximus

Messages : 1274
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