« Simscript III/Dictionnaire des instructions/PROCESS » : différence entre les versions

Contenu supprimé Contenu ajouté
Djihane (discussion | contributions)
Aucun résumé des modifications
Aucun résumé des modifications
Ligne 18 :
|}
''P'' doit être un nom de processus ou de méthode processus déclaré dans le préambule (<font color="#0000FF">preamble</font>) (rubrique <font color="#0000FF">processes</font>). ''E''<sub>1</sub>,...,''E''<sub>n</sub> est une liste de variables locales à la routine ''P'' (qui devront donc être déclarées par un <font color="#0000FF">define&nbsp;...&nbsp;variables</font> à moins que le type des paramètres n<nowiki>’</nowiki>est été déclaré dans un <font color="#0000FF">define … process method</font>) dans lesquelles sont stockées les valeurs des attributs de ''P'' dans l<nowiki>’</nowiki>ordre défini par le préambule (<font color="#0000FF">preamble</font>) (on peut se passer de cette forme <font color="#0000FF">given</font> en référençant directement les attributs par leurs noms tels qu<nowiki>’</nowiki>ils sont définis dans le <font color="#0000FF">preamble</font>) et et ''S''<sub>1</sub>,&nbsp;...,&nbsp;''S''<sub>m</sub> est une liste de paramètres de sortie si la méthode processus est appelée par un énoncé <font color="#0000FF">call</font>.
 
 
Une méthode processus peut être appelée directement par un énoncé "<font color="#0000FF">call</font>" ou peut être ordonnancée à un temps donné par l<nowiki>’</nowiki>énoncé "<font color="#0000FF">schedule a</font>". Une méthode processus pourpeut avoir des argumentsparamètres de retour (<font color="#0000FF">yielding</font>..) lorsqu<nowiki>’</nowiki>elle est appelée par un énoncé "<font color="#0000FF">call</font>"; lorsqu<nowiki>’</nowiki>ordonnancée par un "<font color="#0000FF">schedule a</font>", les paramètres de sortie sont supprimés.
 
 
Ligne 32 :
methods for the Véhicule class
process method Voyage given Distance, Vitesse_Moyenne
yielding Durée
define Temps_DébutDistance, Vitesse_Moyenne, Durée as double variablevariables;
 
let Temps_Début = time.v ;
define Temps_Début as double variable;
let Vitesse_Courante = min.f(Vitesse_Moyenne, Vitesse_Maximale) ;
let Temps_Début = time.v ;
wait (Distance / Vitesse_Courante) hours ;
let Vitesse_Courante = 0min.0f(Vitesse_Moyenne, Vitesse_Maximale) ;
let Durée = (time.v -wait Temps_Début(Distance )/ *Vitesse_Courante) hours.v ;
wait (Distance / let Vitesse_Courante) hours = 0.0 ;
let Distance_Voyage = Distance ‘‘Mettre à jour l’odomètre
let Durée = (time.v - Temps_Début ) * hours.v ;
let Distance_Voyage = Distance ‘‘Mettre à jour l’odomètre
end ‘‘Voyage
</source>