Informatică, întrebare adresată de Isteața200, 8 ani în urmă

REPEDE INFORMATICA! VA ROG SA MĂ AJUTAȚI! AM FOTO CU PROBLEMA PE CARE TREBUIE SA O REZOLV! DACĂ PUTEȚI VĂ ROG PUNEȚI ȘI O EXPLICAȚIE (rezolvare) PENTRU CA TREBUIE SA ȘTIU CUM ESTE REZOLVAREA!

Anexe:

Răspunsuri la întrebare

Răspuns de cosmaandra2000
1

Explicație:

Tot ce trebuie sa faci, este un fel de tabel cu valorile pe care le ai.

  1. Prima oara se citeste n ( adica 52381 ), iar z incepe de la 0
  2. cat timp n>0 este o instructiune repetitiva si vei iesi din ea, doar atunci cand n va fi 0
  3. c=n%10 inseamna ca variabila c ia valoarea ultimei cifre a lui n ( adica 1 )
  4. n=n/10 inseamna ca se sterge ultima cifra din numar ( n devine 5238 )
  5. daca c-ul curent este < 5 atunci se intra in instructiunea urmatoare ( 1<5 deci intram )
  6. z=z*10+2*c de fapt formeaza un nou numar, si z devine 2 pentru ca z=0*10+2*1

Dupa ce ai facut asta, continui cu urmatoarele valori pana n devine 0. Ce face de fapt ? Se tot schimba z-ul ala in functie de cifrele mai mici decat 5.

b) ai nevoie de un numar cu toate 3 cifrele mai mari decat 5 ca sa ramana z=0, e nevoie sa nu se intre in acel "daca", pentru a nu schimba z-ul. Si aici sunt multe posibilitati: 678, 555, 666. 987. 879, 599. etc

Anexe:
Alte întrebări interesante