Misiunea taScoate robotul din labirint până la steag, din colțul opus. Fiecare hartă are alt labirint, generat aleatoriu.
Ideea de azi
Într-un labirint fără bucle, robotul ajunge sigur la ieșire dacă „ține mâna dreaptă pe perete”: dacă în dreapta e liber, se întoarce la dreapta și merge; altfel, dacă în față e liber, merge înainte; altfel, se întoarce la stânga.
Un exemplu
if not perete_dreapta():
dreapta()
inainte()
elif not perete_in_fata():
inainte()
else:
stanga()
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.