Misiunea taRobotul merge înainte până la primul perete, se întoarce la dreapta și merge din nou până la perete. Acolo este steagul. Programul trebuie să funcționeze în camere de mărimi diferite.
Ideea de azi
Senzorul ultrasonic măsoară cât de departe este peretele din față. distanta() întoarce numărul de pătrățele libere. Cu while distanta() > 0: inainte(), robotul înaintează până la perete, oricât de lung ar fi drumul.
Un exemplu
while distanta() > 0:
inainte()
Pe un culoar de 3 pătrățele, bucla se repetă de 3 ori; pe unul de 7, de 7 ori. Același program merge peste tot.
Comenzile robotului
Comenzile robotului:
inainte(pasi=1), inapoi(pasi=1), stanga(), dreapta()
distanta() → câte pătrățele libere sunt în față
perete_in_fata(), perete_stanga(), perete_dreapta()
pe_linie(), linie_in_fata(), linie_stanga(), linie_dreapta()
culoare(), obiect(), ridica(), lasa(), cara()
la_tinta(), pozitie() → (x, y), directie() → 'E', 'S', 'V' sau 'N'
harta() → listă de rânduri ('#' perete, '.' liber, 'T' țintă, 'R' robot)
spune(mesaj) → robotul afișează un mesaj
Verifică înainte de predare
Compară lucrarea cu fiecare cerință. Folosește Verifică pentru feedback și Indiciu atunci când ai nevoie. Poți corecta și verifica din nou; profesorul vede versiunea pe care o predai.
MOD DEMONSTRATIVLucrezi fără cont: lucrarea se păstrează doar în acest browser. Verificarea și indiciile funcționează complet. Creează un cont ca să predai lucrarea și să strângi XP.