2 Comments

  1. poate cineva sa explice codul? Daca mergi pe exemplu, adaugi pana la 6 in vector, dupa de ce mai faci de 2 ori n % 10? N-ar trebui sa iasa 259[restul de cifre] in loc de 257 dupa logica de aici?

    1

    Reply

    1. Salut. Sigur. Dupa primul while vectorul ‘a’ o sa fie a = [1, 3, 4]. Ne oprim la 9 pentru ca a doua conditie din while (n % 10 < n / 10 % 10) este adevarata atata timp cat cifra curenta (n % 10) este mai mica decat urmatoarea cifra (n / 10 % 10). Cifra 9 nu respecta conditia asta pentru ca 9 > 6. Dupa acest while n = 257869 si a = [1, 3, 4]. Mergem pe else si adaugam ultima cifra din variabila n in a (in cazul acesta 9). Acum a = [1, 3, 4, 9], n = 25786. Salvam in c1 ultima cifra din n. Deci, c1 = 6, n = 2578. Parcurgem a pana cand gasim un element mai mare decat 6. Deci ne oprim cand i = 4, a[4] = 9, 9 > 6. In acest moment, punem 6 in loc de 9 in vector si punem in c1 cifra 9. Deci c1 = 9, a = [1, 3, 4, 6]. Adaugam c1 la n, n = 25789. In final scoatem element cu element din a si il bagam in n. Deci, n devine 257891346. Asta e solutia. Spor.

      1

      Reply

Leave a Reply

Your email address will not be published. Required fields are marked *