instancevariables
elements : setof Element := {}; invcard elements <= 3
operations
public AddElement: Element ==> bool
AddElement(es) == if(es notinset elements) then
(
elements := elements union {es}; returntrue;
) else returnfalse;
private ExtraElement: () ==> setof Element
ExtraElement() == let es = elements in (
elements := {};
World`graphics.tableCleared();
IO`print("table clear"); return es);
public TakeElements: setof Element ==> setof Element
TakeElements(es) == (
let e inset es in cases e:
<Tobacco> -> MissingPM(),
<Paper> -> MissingTM(),
<Match> -> MissingTP() end;
ExtraElement();) precard es = 1;
MissingPM : () ==> ()
MissingPM() == skip;
MissingTM : () ==> ()
MissingTM() == skip;
MissingTP : () ==> ()
MissingTP() == skip;
sync per MissingPM => elements = {<Paper>,<Match>}; per MissingTM => elements = {<Tobacco>,<Match>}; per MissingTP => elements = {<Tobacco>, <Paper>};
--per AddElements => elements = {}; --per TakeElements => card elements = 2;
end Table
¤ Dauer der Verarbeitung: 0.12 Sekunden
(vorverarbeitet)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung ist noch experimentell.