Diferente pentru problema/telefon intre reviziile #5 si #10

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. 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.
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.
h2. Date de intrare
h2. Date de ieşire
În fişierul de ieşire $telefon.out$ se vor scrie comenzile care trebuie să le execute robotul pentru a apela numărul de telefon dat. Comenzile se vor scrie pe o singură linie, în ordinea în care va trebui să le efectueze robotul. Două comenzi se vor despărţi printr-un singur spaţiu.
În fişierul de ieşire $telefon.out$ se vor scrie comenzile pe care trebuie să le execute robotul pentru a apela numărul de telefon dat. Comenzile se vor scrie pe o singură linie, în ordinea în care va trebui să le efectueze robotul. Două comenzi se vor despărţi printr-un singur spaţiu.
h2. Exemplu
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:

 
4722