nombre aléatoire

nombre aléatoire - Ada - Programmation

Marsh Posté le 02-03-2004 à 15:10:46    

je subis des TP en ADA, j'aime pas ça, mais bon le langage tourne bien.
 
deux petites questions :  
- comment je peux faire pour avoir un entier pseudo-aléatoire sur [i;j]
- est ce que c'est thread-safe ?
- je vois pas trop comment initialiser tout ça au tout début du programmes avant que les tâches commence à utiliser le générateur

Reply

Marsh Posté le 02-03-2004 à 15:10:46   

Reply

Marsh Posté le 02-03-2004 à 15:54:17    

1) http://www.grammatech.com/rm95html [...] 05-02.html
(y'a un exemple vers le bas)
 
http://www.cs.uofs.edu/~beidler/Ada/gnat/a-numran.html
version condensée
 
2) dans la mesure où tu déconnes pas avec le générateur (tu le fous dans un "protected object" en gros, et tirer un nombre est une *procédure* sur l'objet en question).
http://www.iuma.ulpgc.es/users/jmi [...] A-9-4.html
 
3) dans la procédure principale, tu passes le générateur protégé comme paramètre aux taches ou à l'entrée de démarrage ?
http://www.iuma.ulpgc.es/users/jmi [...] A-9-1.html
(2ème exemple pour une tache avec paramètre)


---------------
trainoo.com, c'est fini
Reply

Marsh Posté le 02-03-2004 à 16:08:27    

hum hum , je connaissais pas les protected object :D
ouais en fait, ça me dépasse un peu, et j'ai pas trop envie d'aller trop loin, même si ça à l'air très riche. :sol:


Message édité par Taz le 02-03-2004 à 16:10:27
Reply

Marsh Posté le 02-03-2004 à 17:27:47    

si tu mets le doigt dans le multitâche, tu vas avoir du mal à ne pas jouer le jeu jusqu'au bout.
 
Par contre, si tu arrives à l'éviter, tu peux éviter un gros morceau du langage.


---------------
trainoo.com, c'est fini
Reply

Marsh Posté le 02-03-2004 à 17:37:52    

ben si tu veux, je suis un gros débutant de chez débutant, j'essaie juste de réaliser mes pauvres TP de processus parallèles en ADA. j'ai aucune idée sur comment on fait de l'objet en ADA ... l'an dernier déjà, je me suis débrouillé. en gros je fais des tasks et des broutilles (en gros tout ce que je sais je le tire de là http://www.adahome.com/Ammo/Cplpl2Ada.html) mais bon si j'arrive pas à résoudre mon problème avec une solution simple, je m'y collerais

Reply

Marsh Posté le 22-03-2004 à 20:12:20    

Citation :

procedure main is
 
i : constant Integer := ....;  
j : constant Integer := ....;  
 
 
subtype Intervalle is Integer range i .. j;
   package Aleatoire is new Ada.Numerics.Discrete_Random(Intervalle);
use Aleatoire;
 
 
 
function nb return Integer is  
 
      Nombre     : Integer;  
      Generateur : Generator;  
 
begin
      Reset(Generateur);
      Nombre:=Random(Generateur);
      return Nombre;
end nb;
 
 
begin
...
end main;


 
 
dsl si ce n'était pas ca qu'il te fallait :(
 
 
 

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed