Simulacija semaforja
Poskusimo še malo simulirati kakšno avtomatizacijo. Denimo, da poskušamo v Scratchu napisati program na naslednji način. Vzemimo lik (avto), ki vozi v neskončni zanki, torej brez prekinitve levo in desno. Ko pride do roba, se obrne itd. Prikažimo v zgornjem desnem kotu manjši semafor, ki se mu spreminjajo luči (videzi) po naslednjem režimu:
a) rdeča luč sveti 10 sekund,
b) ob rdeči se prižge še oranžna in skupaj gorita 1 sekundo,
c) rdeča in oranžna skupaj ugasneta, prižge se zelena in zelena sveti nato 10 sekund,
d) zelena ugasne, prižge se oranžna, ki sveti 1 sekundo,
e) oranžna ugasne in spet se prižge rdeča, ki sveti 10 sekund.
Ta ciklus prav tako ponavljamo v neskončni zanki. Avto ves čas, ko sveti zelena luč, potuje z najvišjo hitrostjo (poljubno jo izberi) levo in desno. Čim se zelena ugasne in prižge oranžna, hitrost avtomobila v času oranžne luči pade na polovično vrednost. Ko se prižge rdeča, avto obstoji. ko gre rdeča luč h koncu in se poleg nje prižge še oranžna, avto spelje s polovično hitrostjo, ko pa se pokaže samo zelena, pa spet vozi z najvišjo hitrostjo.
Dodajmo še naslednji pogoj. Prikaži levo zgoraj na zaslonu še deževen oblak, kar pomeni, da v času prikaza tega oblaka na cesti dežuje. Če dežuje, je treba najvišjo hitrost omejiti na polovično. Ko oblak izgine, pa je spet dovoljena najvišja hitrost potovanja. Denimo, da se oblak prikaže s klikom na smerno tipko "gor", skrijemo pa ga s klikom na smerno tipko "dol".
Bo šlo?
Učitelj Borut P. :)
Komentarji
Objavite komentar