Problemele interesante de pe pbinfo sau de pe alte site nu sunt explicate aprope deloc. Nu exista idea explicarii pe intelesul tuturor a unor algoritmi interesanti, optimizati si eficienti. In activitatea de programator, munca de creare a unor algoritmi cat mai eficienti este din ce in ce mai ceruta si mai greu de realizat. In…
Read MoreNe punem problema cum se determina divizorii unui numar dat si cati divizori are un numar dat? Prima problema care iti cer sa o abordezi aici este de a stabili care sunt divizorii unui numar nr citit de la tastatura. De exemplu 24 are divizorii 1, 2, 3, 4, 6, 8, 12, 24. Ar trebui sa parcurgi tot intervalul de valori de la 1 la `nr` ca sa gasesti toate aceste numere. Daca observi insa ca aceste numere apar in pereche, deci daca parcurgi numai pana la jumatate intervalul si gasesti un divizor `d`, atunci sigur si `nr/d` va fi un divizor. Optimizeaza si mai mult si cauta numai pana la parte intreaga din radical din numar. Daca nu gasesti pana acolo un divizor, nu vei gasi nici mai departe. Algoritmul in pseudocod este: ALGORITM DIVIZORI ESTE: CITESTE nr; PENTRU (d=1; d*d<n;…
Read More“ Ați auzit de regula celor 30 de minute? Toți programatorii o folosesc!” Dacă ești un programator avansat (senior level) sau poate doar un programator nou (junior level), ar trebui sa afli despre regula celor 30 de minute. Aceasta regula exista de mult timp și cred ca te-ar ajuta foarte mult, mai ales dacă ești…
Read MoreCum calculam aria unui trapez oarecare daca se cunosc laturile trapezului? Problema se poate gasi pe site pbinfo – #Arie trapez Cerința Se dau lungimile laturilor unui trapez ABCD cu AB||CD. Aflati aria acestuia. Date de intrare Programul citește de la tastatură lungimile laturilor AB, BC, CD, AD. Date de ieșire Programul va afișa pe ecran numărul A reprezentand aria trapezului,…
Read More