Izmjenično paljenje i gašenje pojedine svjetleće diode do pritiska tipkala

Zadatak

Izradite kôd po kojem će robot izmjenično paliti svjetleće diode svaku sekundu tako da se po uključivanju robota najprije upali desna svjetleća dioda crvenom bojom dok je lijeva ugašena, a nakon toga da se plavom bojom upali lijeva svjetleća dioda dok je desna ugašena. Ovakva izmjena paljenja i gašenja svjetlećih dioda neka traje sve dok se na robotu ne pritisne tipkalo kada su obje svjetleće diode ugašene.

Rješenje

Objašnjenje

Da bi se svjetleće diode palile i gasile sve dok se ne pritisne tipkalo koristi se naredba repeat until when on-bord button pressed. Unutar te petlje smještene su naredbe koje će se izvršavati sve dok se ne zadovolji uvjet pritiskanja tipkala. Nakon što se uvjet ispuni, svjetleće diode neće svijetliti i to definirano naredbom turn on all light with color red 0 green 0 blue 0 koja je postavljena ispod repeat until petlje.

Naredba turn on right light with color red 150 green 0 blue 0 se nalazi na prvom mjestu unutar repeat petlje i zbog toga će desna svjetleća dioda po uključivanju robota zasvijetliti crveno. Lijeva će tada biti ugašena (turn on left light with color red 0 green 0 blue 0). Takva situacija će trajati jednu sekundu (wait 1 seconds). Nakon toga se desna gasi naredbom turn on right light with color red 0 green 0 blue 0, a lijeva se pali plavom bojom (turn on left light with color red 0 green 0 blue 150) te to također traje jednu sekundu (wait 1 seconds). Nakon toga će se ponovno paliti desna svjetleća dioda crveno, pa lijeva plavo sve dok se ne pritisne tipkalo. Nakon pritiska tipkala, svjetleće diode se gase.