
4. Menekülő
4. Menekülő
4. Példa – Menekülő robot
Írjon olyan programot, amelyet végrehajtva a robot tolat 5 cm-t, ha 15 cm belül észlel maga előtt valamilyen akadályt! Ha nincs ilyen akadály, akkor álljon egyhelyben.
Megoldás

Mit kell csinálnia a robotnak?
- Ha 15 cm-en belül akadály van → tolat.
- Ha nincs akadály → áll.
1) Egyszerű elágazás (IF) – de ez még kevés
- A robot megnézi a távolságot.
- Ha < 15 cm → tolat 5 cm-t.
- Ha ≥ 15 cm → nem mozdul.
- Ez csak egyszer fut le, utána a program véget ér.
🔁 2) Folyamatos figyelés – végtelen ciklus

Az IF-et végtelen ciklusba tesszük:
- minden körben újra mér
- ha közel az akadály → tolat
- ha nincs → áll
Így a robot folyamatosan reagál.
⚠️ 3) Miért nem jó az 5 cm-es tolatás?
Mert a robot így "darabokban" mozog:
- tolat 5 cm
- újra mér
- megint tolat 5 cm
- stb.
Ez szaggatott, nem folyamatos mozgás.
✔️ 4) Szebb megoldás: IF–ELSE folyamatos motorvezérléssel

- IF: akadály < 15 cm → motorok negatív sebességgel = folyamatos tolatás
- ELSE: nincs akadály → stop moving
Így a robot:
- folyamatosan hátrál, amíg akadályt lát
- megáll, ha már nincs előtte semmi
🔧 Fontos technikai részlet
- A negatív motorsebesség = tolatás (a motorok visszafelé forognak).
