Pagini recente » Istoria paginii utilizator/andreioan | Diferente pentru utilizator/danalex97 intre reviziile 135 si 134 | Concursuri Virtuale | mex2d | Diferente pentru problema/telefon intre reviziile 10 si 6
Nu exista diferente intre titluri.
Diferente intre continut:
== include(page="template/taskheader" task_id="telefon") ==
== include(page="template/badtests") ==
!> problema/telefon?telefon.png 70%!
Avem un telefon pe care butoanele cu cifre sunt aranjate ca în figura alăturată. Acest telefon este acţionat de către un robot care, iniţial, are capul de acţionare deasupra butonului $*$. Robotul se comandă cu următoarele comenzi:
h2. Cerinţă
Scrieţi un program care citeşte un număr de telefon, având cel mult $10$ cifre, apoi realizează apelarea acelui număr prin intermediul robotului, parcurgând un drum de lungime minimă deasupra tastaturii.
Scrieţi un program care citeşte un număr de telefon, având cel mult $10$ cifre, apoi realizează apelarea acelui număr prin intermediul robotului, parcurgând un drum de lungime minimă deasupra tastaturii. Dacă pentru a ajunge deasupra următorului buton, mişcarea capului presupune deplasare şi pe orizontală şi pe verticală, atunci _mai întâi trebuie efectuată mişcarea pe verticală_, cea pe orizontală urmând acesteia.
h2. Date de intrare
h3. Explicaţie
Mai întâi trebuie să mutăm capul de acţionare de deasupra butonului $*$ deasupra butonului $1$. În acest scop ne mutăm în sus $3$ poziţii $(S 3)$ şi apăsăm butonul $(A)$. Urmează butonul $2$, deci mutăm capul o poziţie la dreapta $(DR 1)$ şi apăsăm $(A)$. Pentru a ajunge la butonul $3$, din nou facem o mutare la dreapta cu o poziţie $(DR 1)$ şi apăsăm $(A)$. Pentru a ajunge deasupra butonului $8$, mai întâi mutăm capul în jos $2$ poziţii $(J 2)$, apoi la stânga o poziţie $(ST 1)$ şi apăsăm $(A)$. 0 se află sub $8$, deci avem o mutare $(J 1)$ şi apăsăm $(A)$. Acum trebuie să ajungem la $4$, deci urcăm $2$ poziţii $(S 2)$, apoi mutăm capul o poziţie la stânga $(ST 1)$ şi apăsăm $(A)$. În final mutăm capul deasupra butonului $#$ cu comenzile $J 2$ şi $DR 2$. Aici nu trebuie să apăsăm butonul.
Mai întâi trebuie să mutăm capul de acţionare de deasupra butonului $*$ deasupra butonului $1$. În acest scop ne mutăm în sus $3$ poziţii $(S 3)$ şi apăsăm butonul $(A)$. Urmează butonul $2$, deci mutăm capul o poziţie la dreapta $(DR 1)$ şi apăsăm $(A)$. Pentru a ajunge la butonul $3$, din nou facem o mutare la dreapta cu o poziţie $(DR 1)$ şi apăsăm $(A)$. Pentru a ajunge deasupra butonului $8$, mai întâi mutăm capul în jos $2$ poziţii $(J 2)$, apoi la stânga o poziţie $(ST 1)$ şi apăsăm $(A)$. 0 se află sub $8$, deci avem o mutare $(J 1)$ şi apăsăm $(A)$. Acum trebuie să ajungem la $4$, deci urcăm $2$ poziţii $(S 2)$, apoi mutăm capul o poziţie la stânga $(ST 1)$ şi apăsăm $(A)$. În final mutăm capul deasupra butonului $#$ cu comenzile $J 2$ şi $DR 2$. Aici nu trebuie să apăsăm butonul.
== include(page="template/taskfooter" task_id="telefon") ==
Nu exista diferente intre securitate.
Diferente intre topic forum: