Tyto příkladové otázky si, prosím, zkuste před zkouškou vyřešit. Některé z nich se mohou objevit ve zkouškové písemce.
program par; const n = 50; var tally: integer; procedure total; var count: integer; begin for count := 1 to n do tally := tally + 1 end; begin (* hlavní program *) tally := 0; cobegin total | total coend; write(tally) (* Kolik? *) end.
Určete spodní a horní mez pro koncovou hodnotu sdílené proměnné tally, kterou může tento paralelní program vypsat. Předpokládejte, že oba procesy mohou běžet relativně vůči sobě libovolně rychle a že pro zvětšení hodnoty proměnné musí být tato hodnota nejprve zavedena do registru samostatnou strojovou instrukcí.
Lukáš Petrlík