l Lab Nr1pc c Tp 15

25
LUCRAREA DE LABORATOR nr. 1  Tema: Cartea de vizită a studentului—informatician  Scopul lucrării: E viden ţierea nivelului de cunoştinţe a fiecărui student la informatică, în mod deosebit algoritmizarea, pentru elaborarea unui plan individual de studiu pe viitor la lucrările practice şi lucrările de laborator pe parcursul semestrului.  Obiectivele temei 1. Apre ciere a person ală a nivel ului de cun oaşte re a urmă toarelor compartimente: a echipamentelor periferice şi unităţilorcomponente ale calculatorului electronic personal !"#$% a acţiunilor elementare referitoare la sistemele de operare !&'$ (s)'&, *indo+s etc.%a manipulărilor de  bază referitor la principalele activităţi în prelucrarea fişierelor de sistem cu autorul membranelor -ar(anage r)' &/av igator /or ton#om mander, &tart, (0#omputer, bare şi feres trele *indo+sului instalat, 'ffice 223% a mediului dezvoltat integrat 4urbo "ascal !4"$ şi 4#, a algoritm izării şi a proc edeelor de scrierecitire a datelor şi utilizarea construcţiilor elementare a limbaului 4" predestinate calculelor valorilor conform formulelor din matematică şi fizică, elabor5nd algoritmi cu structuri liniare, ramificative, ciclice% a tehnicilor de programare şi principilor de elaborare a modelelor de calcul. 6nsuşirii principiului algoritmizării şi programării cu rezolvarea propriilor variante: însuşirea unei g5ndiri algoritmice dezvoltarea abilităţilor de proiectare de soluţii algoritmice  Subiectele temei şi ordinea executării  &ubiectele temei se împart în două categorii în dependenţă de nivelul de preg ătire a fiecărui student.  I. Pentru cei care sunt mai slab iniţiaţi  în pro gramare se recomandă să expună conci s în editoru l W ord 2x următoarele: 1.1. #om par tim ent ele cunosc ute din domeniul inf orm atic ii, per for ma nţ ele şi pos ibi lit ă ţ ile uti liză rii "#, sistemele de calcul şi metodele algoritmizării. 1.. /ivelu l însuşiri i comenzilor de bază a &' şi cunoa şterea destinaţiei panourilor şi tastelor fun cţiona le. (embranele &' de tipul /orton #ommander sau scenariul de lucru în &' *indo+s şi *o rd. 1.7. /ivelu l de cunoaşter e al mediului de prog ramar e 4urbo "ascal şi #. 8epre zenta rea meniului princip al, submeniurilor din mediul integrat dezvoltat 4urbo "ascal şi comenzile editorului. 1.9. )upă însuşirea noţiunilor de bază ale algoritmizării din îndrumarul prezent:   notarea şi descrierea blocurilor schemelor logice%  regulile elaborării diferitor structuri ale algoritmilor%  modul de transpunere ale algoritmilor şi organizare a programului 4" pentru prelucrarea datelor citite, calculul şi afişarea lor. 1. . "rincipiile depănării programului simplu şi e3ecutarea programului pas cu pas, urmărirea evaluării e3presiilor etc. 1.;. < alida rea rez ult ate lor cu a utorul "# ului, verificarea cor ect itu dinei alc ătuirii pro gramel or con for m condiţiilor problemelor. 1.=.6n 4urbo"ascal să efectueze calculele conform formulelor propuse fie din matematicăfizică, fie din Ane3a lucrării , utilizînd funcţiile predefinite în 4". &ă reformuleze problemele şi să elaboreze schemele logice conform cărora se vor efectua calculele. 1.>.&ă elaboreze la indicaţia profesorului un set de algoritmi în (& *ord.  II. Pentru cei avansaţi  în pro gramare se r ecomandă să expună concis în editorul Word 2x următoarele: .1. #ompartimentele din obiectivele temei, e3puse m ai sus, prin noţiuni şi definiţii concise, totod ată, apreciind  propriul nivel de cunoaştere în s istemul zecimal. .. &ă se elabo reze schema logic ă a algor itmulu i şi prog ramu l în l imba ul 4" pentru efec tuarea calculelor confo rm condiţii lor prob lemelo r propuse din matem aticăfizică, utiliz înd divers e structur i de date !tablouri, şiruri, fişiere, liste etc.$. &ă foloseas că principiul modular , utilizînd propriile subprograme cu comentariile de vigoare. Conţinutul şi forma dării de seamă conform modelului recomandat 1. #operta !foia de titlu$ cu indicarea numărului lucrării de laborator şi denumirea temei. . < ar ianta, n umăr ul prob lemei, scopul şi s arcin a !descrierea su ccintă a sa rcinii re form ulate, ad ică adap tată la metoda rezolvării$. 7. E3pun erea părţ ii teoretice se efectueaz ă în baza materialu lui teoret ic, formu l5nd între bări cu răspu nsuri . 9. &chema logică a algoritmului sc hi ţ a algori tmu lui şi tab elul varia bil elo r uti liza te în pro gram. /oţ iunile generale, formulele de bază, răspunsurile la întrebări, descrierea tehnicilor şi nuanţelor de realizare a  programului !perfectate în *o rd$. . #on ţ in utul programului !listing ul com ple t$. ;. 8ez ult atele i nte rme dia re ş i f ina le

description

laborator

Transcript of l Lab Nr1pc c Tp 15

Page 1: l Lab Nr1pc c Tp 15

7/17/2019 l Lab Nr1pc c Tp 15

http://slidepdf.com/reader/full/l-lab-nr1pc-c-tp-15 1/25

LUCRAREA DE LABORATOR nr. 1 Tema: Cartea de vizită a studentului—informatician  Scopul lucrării:  Evidenţierea nivelului  de cunoştinţe a fiecărui student la informatică, în mod

deosebit algoritmizarea, pentru elaborarea unui plan individual de studiu pe viitor la lucrările practice şilucrările de laborator pe parcursul semestrului.

  Obiectivele temei1. Aprecierea personală a nivelului de cunoaştere a următoarelor compartimente: a echipamentelor periferice şi unităţilorcomponente ale calculatorului electronic personal !"#$% a acţiunilor elementare referitoare la sistemele de operare !&'$ (s)'&, *indo+s etc.%a manipulărilor de

 bază referitor la principalele activităţi în prelucrarea fişierelor de sistem cu autorul membranelor -ar(anager)'&/avigator /orton#ommander, &tart, (0#omputer, bare şi ferestrele *indo+suluiinstalat, 'ffice 223%

a mediului dezvoltat integrat 4urbo "ascal !4"$ şi 4#, a algoritmizării şi a procedeelor de scrierecitire adatelor şi utilizarea construcţiilor elementare a limbaului 4" predestinate calculelor valorilor conformformulelor din matematică şi fizică, elabor5nd algoritmi cu structuri liniare, ramificative, ciclice%

a tehnicilor de programare şi principilor de elaborare a modelelor de calcul. 6nsuşirii principiului algoritmizării şi programării cu rezolvarea propriilor variante:

– însuşirea unei g5ndiri algoritmice– dezvoltarea abilităţilor de proiectare de soluţii algoritmice

  Subiectele temei şi ordinea executării  &ubiectele temei se împart în două categorii în dependenţă de nivelul de pregătire a fiecărui student.  I. Pentru cei care sunt mai slab iniţiaţi  în programare se recomandă să expună concis în editorul Word 2xurmătoarele:1.1. #ompartimentele cunoscute din domeniul informaticii, performanţele şi posibilităţile utilizării "#,

sistemele de calcul şi metodele algoritmizării.1.. /ivelul însuşirii comenzilor de bază a &' şi cunoaşterea destinaţiei panourilor şi tastelor funcţionale.

(embranele &' de tipul /orton #ommander sau scenariul de lucru în &' *indo+s şi *ord.1.7. /ivelul de cunoaştere al mediului de programare 4urbo "ascal şi #. 8eprezentarea meniului principal,

submeniurilor din mediul integrat dezvoltat 4urbo "ascal şi comenzile editorului.1.9. )upă însuşirea noţiunilor de bază ale algoritmizării din îndrumarul prezent:  notarea şi descrierea blocurilor schemelor logice%  regulile elaborării diferitor structuri ale algoritmilor%  modul de transpunere ale algoritmilor şi organizare a programului 4" pentru prelucrarea datelor citite,calculul şi afişarea lor.1.. "rincipiile depănării programului simplu şi e3ecutarea programului pas cu pas, urmărirea evaluării

e3presiilor etc.1.;. <alidarea rezultatelor cu autorul "#ului, verificarea corectitudinei alcătuirii programelor conform

condiţiilor problemelor.1.=.6n 4urbo"ascal să efectueze calculele conform formulelor propuse fie din matematicăfizică, fie din Ane3a

lucrării , utilizînd funcţiile predefinite în 4". &ă reformuleze problemele şi să elaboreze schemele logiceconform cărora se vor efectua calculele.

1.>.&ă elaboreze la indicaţia profesorului un set de algoritmi în (& *ord.

  II. Pentru cei avansaţi  în programare se recomandă să expună concis în editorul Word 2x următoarele:.1. #ompartimentele din obiectivele temei, e3puse mai sus, prin noţiuni şi definiţii concise, totodată, apreciind

 propriul nivel de cunoaştere în sistemul zecimal... &ă se elaboreze schema logică a algoritmului şi programul în limbaul 4" pentru efectuarea calculelor 

conform condiţiilor problemelor propuse din matematicăfizică, utilizînd diverse structuri de date!tablouri, şiruri, fişiere, liste etc.$. &ă folosească principiul modular, utilizînd propriile subprograme cucomentariile de vigoare.

Conţinutul şi forma dării de seamă conform modelului recomandat1. #operta !foia de titlu$ cu indicarea numărului lucrării de laborator şi denumirea temei.. <arianta, numărul problemei, scopul şi sarcina !descrierea succintă a sarcinii reformulate, adică adaptată la

metoda rezolvării$.

7. E3punerea părţii teoretice se efectuează în baza materialului teoretic, formul5nd întrebări cu răspunsuri.9. &chema logică a algoritmuluischiţa algoritmului şi tabelul variabilelor utilizate în program. /oţiunilegenerale, formulele de bază, răspunsurile la întrebări, descrierea tehnicilor şi nuanţelor de realizare a

 programului !perfectate în *ord$.. #onţinutul programului !listingul complet$.;. 8ezultatele intermediare şi finale

Page 2: l Lab Nr1pc c Tp 15

7/17/2019 l Lab Nr1pc c Tp 15

http://slidepdf.com/reader/full/l-lab-nr1pc-c-tp-15 2/25

=. Analiza rezultatelor în baza testelor elaborate şi concluzia: simularea numerică.>. ?ibliografia !doar sursele real utilizate cu referinţe concrete la capitole, paragrafe, etc$@. Ane3e. E3emple şi rezultate. -işiere intrareieşire. 4abelediagrame.12. #onţinutul raportuluidării de seamă se prezintă tipărit pe hîrtie şi pe suport magnetic.   Notă: Aceste cerinţe către Conţinutul şi forma dării de seamă” trebuie să se respecte la toate lucrările delaborator.

1. Noţiuni generale1.1. Modelul de calcul al problemei 

"rogramarea veritabilă nare frontieră între ştiinţele e3acte şi artă. Btiinţele e3acte îţi coordonează

conduita, iar arta îţi sugerează soluţiile netradiţionale prin posibilitatea neordinară de a găsi nuanţele coloreC alsuccesului în timpul analizei şi soluţionarea problemei. "ractica rezolvării ro!lemelor folosind un limba! de

 programare  a determinat dea lungul timpului diverse abordări în funcţie de performanţa limbaului de programare, performanţa calculatorului şi nu în ultimul r5nd, în funcţie de metodele şi tehnicile avansate, privind implementarea raţionamentelor pentru demonstraţiile corespunzătoare problemelor 

Este cunoscut faptul că în timpul studiului problemei trecem prin etapele pregătirii problemei !conştientsau inconştient, în mod implicit sau e3plicit$ pentru rezolvarea ei cu autorul "#ului: formularea problemeigenerale, determinarea soluţiei generale, în dependenţă de datele iniţiale şi metodele logicomatematice, prinstrategii şi tehnici eficiente, redefinirea corectă şi elaborarea algoritmilor !algoritmi de calcul numeric, algoritmide prelucrare a informaţiei$ în baza celor tradiţionali sau euristici, reieşind din propriile cunoştinţe şi e3perienţeacumulate. Apoi transpuneţi respectivii algoritmi în programe al limbaului de programare ales. )upă aceastadepanări, derulări, ameţeli, verificări la corectitudine, testări la eficienţă şi la sf5rşit, după ce aţi obţinutobiectivele propuse, treceţi întro stare euforică cu un refrenbîzîit, plăcut: D#e geniu suntD.

#aracteristica fundamentala a prelucrării automate a informaţiei este natura algoritmica a proceselor ce see3ecuta pe sistemele de calcul. 8ezolvarea prin calcul automat a unei probleme este posibila doar daca se

 precizează e3act datele de intrare, calculele ce trebuie efectuate si succesiunea lor.Astăzi, perfomanţa unui in"ormatician#programator  este determinată de e3perienţa şi competenţa obţinută

în desfaşurarea celor două etae " A#AL$%&' (RO)RA*ARE+ :• �etaa ,-ndirii o!iectuale "A#AL$%& (RO$ECTARE+  modul de analiză şi abstactizare a

 problemelor prin definirea corectă a obiectelor, a tipurilor de obiecte, a relaţiilor între obiecte şi aoperatorilor specifici!elaborarea $%P & etapa de concep'ie şi anali(ă) proiectare$ %

• etaa ,-ndirii al,oritmice "(RO)RA*ARE E/ECU0$E+  alegerea şi aplicarea corectă a unor metode de rezolvare prin precizarea e3actă a operatorilor de prelucrare a obiectelor, reprezentarea corectă a

strategiilor algoritmice, reprezentarea codificată a obiectelor şi a prelucrărilor conform unui limba de programare !elaborarea algoritmului şi programului & etapa de programare ) codi"icare implementare şiexecu'ie$.

Etaele ela!orării ro,ramului. 6n rezolvarea problemelor cu calculatorul se recomanda respectareaurmătoarelor etape:

1. &pecificarea precizarea completa a problemei de rezolvat prin stabilirea unui enunţ clar si definireae3acta a datelor de intrare si a celor de ieşire.

. "roiectarea căutarea algoritmului de rezolvare si descrierea logicii fiecărei reguli de calcul si a relaţiilor dintre reguli.

7. Fmplementarea soluţiilor elaborarea algoritmilor   şi codi"icarea acestora întrun limba de programaremodern.

9. Analiza soluţiilor prin simularea numerică e"icien'a solu'iilor  raportată la resursele utilizate: memorie*

timp* utili(area dispo(itivelor I#O, etc.. 4estarea şi depanarea veri"icarea execu'iei programului cu diverse seturi de date de intrare pentru a

 putea răspunde rezolvării oricărei probleme pentru care aplicaţia a fost elaborată.;. Actualizarea şi întreţinerea adaptarea soluţiilor implementate pentru eliminarea erorilor  în rezolvarea

unei anumite probleme şi compatibilitatea cu sistemul de calcul şi sistemul de operare folosite.=. )ocumentarea scrierea documentaţiei de utilizare a programului sau completarea programului cu

comentariile de rigoare.#onform acestor faze iese în evidenţă interdeendena  între urmatoarele activită'i  importante:

8E"8EGE/4A8E , EHA?'8A8E "8'FE#4A8E şi EIE#JKFE, şi anume se poate sintetiza prin următoareaschemă!&#Lsistem de calcul, &'Lsistem de operare$:

 

Page 3: l Lab Nr1pc c Tp 15

7/17/2019 l Lab Nr1pc c Tp 15

http://slidepdf.com/reader/full/l-lab-nr1pc-c-tp-15 3/25

"relucrarea informatiilor intrun sistem de calcul se realizeaza prin e3ecutia unor operatii simple. 'peratiilese aplica asupra unor reprezentari ale informatiilor, numite date . Fnlantuirea acestor operatii simple, respectandlogica de rezolvare, va conduce la obtinerea rezultatelor dorite.

Algoritmul reprezinta ansamblul de reguli !de calcul$ împreuna cu ordinea in care se succed, in vedereasolutionarii unui tip de probleme.

&pre e3emplu, notand cu / si ( doua numere intregi pozitive si cu # cel mai mare divizor comun al lor,atunci algoritmul lui Euclid pentru aflarea celui mai mare divizor comun a doua numere intregi pozitive date

 poate fi descris astfel:M #F4E&4E valorile lui ( si /.

M A48F?JFE lui # valoarea lui /.M A48F?JFE lui 8 restul împartiri intregi a lui ( la /.M )A#A 8 NO 2 !8 diferit de 2$ A4J/#F 48E#F HA pasul =.M &#8FE valoarea lui #.M &4'".M A48F?JFE lui ( valoarea lui /.M A48F?JFE lui / valoarea lui 8.M 48E#F la pasul .(odul in care este prezentat acest algoritm este imperativC% propozitiile fiind de fapt niste comenzi pe care

trebuie sa le e3ecute cineva !omul sau masina$. -iecare comanda a algoritmului specifica o operatie !actiune$ cese aplica datelor.

Al,oritmul va trebui să simule(e e3ecuţia pe o maşină virtuală asemănătoare maşinii reale, iar (ro,ramul se

va executa pe o maşină "i(ică#reală reprezentată de un sistem de calcul !&#$ şi un sistem de operare!&'$. Acestlucru înseama că restric'iile  modelului "i(ic  trebuie considerate şi în modelul virtual , prin urmare e3ecuţiaalgoritmului trebuie să simuleze e3ecuţia programului pe maşină reală.

4rebuie de menţionat că constantele si variabilele reprezinta datele asupra carora opereaza algoritmii.<ariabilele pot fi interpretate ca nume de zone de memorie iar valorile atribuite lor în timpul e3ecutieialgoritmului trebuie interpretate ca fiind continutul acestor zone.

  )e asemenea, interdependen'a precizată mai sus se transmite şi între componentele de pe nivelulinferior din schema arborescentă alăturată. Cometena şi e2eriena  în rezolvarea ro!lemelor�se pot obţine doar dacă permanent se are în vedere această interdependenţă şi dacă se întreprindeforturi pentru însuşirea de noi cunoştin'e şi pentru conoaşterea corespunzătoare a tuturor aspectelor 

 privind (')EHJH -FGF# , respectiv (')EHJH <F84JAH, aspecte determinate de interdependenţa&F&4E( )E #AH#JH� AHP'8F4(F#Q� "8'P8A(A8E:

"entru a obţine un model de calcul al unei probleme care să fie implementat pe "# trebuie de respectatetapele algoritmizării şi creării programului conform regulilor sintactice şi semantice ale limbaului de

 programare ales ca să atingem scopul scontat c5t mai eficient. )e aceea pentru adoptarea unor decizii c5t maicorecte şi eficiente, este necesar să se folosească rezultatele obţinute în toate celelalte etape !niveluri decunoaştere a metodelor de rezolvare, formule, e3perimente sau măsurătoarele efectuate, legi stabilite etc.$.Aceste rezultate pot fi sintetizate şi folosite întrun model de calcul. (odelul de calcul poate fi reprezentat

 printrun model matematic, adică RdublicatulC fenomenelor analizate, conceput în funcţie de cunoştinţelenoastre asupra naturii problemei, închegate în cadru unei teorii sau experiment . "e baza acestor supoziţii, sedefinesc variabilele modelului !care pot fi mai mult sau mai puţin agregate$, legile care intervin în fenomenulanalizat, formulele, metodele şi restricţiile, precum şi criteriile de optim. #onstruirea modelului este dependentăde informaţiile obţinute, mai ales de cele numerice !date de iniţializare, coeficienţi sau parametri care intervin înfuncţiile care descriu o anumită legitate sau restricţie etc.$.

6n unele cazuri se dispune de date analitice, iar alte ori de mărime agregată !de regulă ca o combinaţieliniară a mărimilor analitice$. 6n momentul elaborării modelului apare problema luării în consideraţie şi a

Page 4: l Lab Nr1pc c Tp 15

7/17/2019 l Lab Nr1pc c Tp 15

http://slidepdf.com/reader/full/l-lab-nr1pc-c-tp-15 4/25

resurselor de calcul !echipamente de calcul, viteză de prelucrare, memorie etc.$, în funcţie de o anumită precizie."entru rezolvarea modelului se folosesc diverşi algoritmi.

"entru problemele comple3e algoritmul, la un mod general, reprezintă o succesiune coerentă de operaţiiaritmetice şisau logice desfăşurate în vederea realizării unui anumit scop !rezolvarea modelului$ întrun număr de paşi finit..  &oluţia modelului obţinută cu autorul unui algoritm ales de noi va fi analizată, în scopulfundamentării eficiente a deciziei finale. )acă în urma unei ample analize!ştiinţifice, tehnice, economice,

 psihologice etc.$ soluţia este considerată corespunzătoare, se trece la transpunerea în practică număr5nduse,efectele care se obţin. 6n caz contrar, se revine la analiza fie la datele de intrare, fie la algoritm, fie chiar lamodel.

(odelarea matematică presupune observarea fenomenelor !obţinerea formulelor şi datelor necesare$,elaborarea modelelor în conformitate cu cea mai riguroasă teorie cunoscută, elaborarea unui algoritm derezolvare a modelului şi, în final, folosirea unui echipament de calcul pentru a aplica algoritmul elaborat învederea obţinerii soluţiei optime. Acest tip de modelare este foarte dificil de implementat în practică din lipsaunor cunoştinţe profunde.

)e multe ori, se evită elaborarea modelului şi în acest caz, se procedează astfel:- în funcţie de informaţiile disponibile se elaborează algoritmii de calcul în baza căruia se obţine

 programul în limbaul de programare care se derulează şi, apoi, se analizează soluţia obţinută%- dacă soluţia obţinută satisface criteriile considerate în analiză se trece la aplicare. )acă nu, se reia

observaţiile sau se elaborează un alt algoritm sau se încearcă elaborarea unui model, corect5ndusealgoritmul de calcul în mod corespunzător.

"entru problemele simple prin algoritm vom înţelege un ansamblu de reguli de calcul, care indica operaţiilenecesare rezolvării unei probleme si ordinea lor de efectuare. 6n acest caz se mai poate spune că un  algoritmreprezintă o metoda de rezolvare specifică a problemelor de un anumit tip. )eci a rezolva o problema înseamnăa obţine, pentru anumite date de intrare, rezultatul problemei !date de ieşire $. Astfel algoritmul este constituitdintro succesiune de operaţii care descriu, pas cu pas, modul de obţinere a datelor de ieşire întrun număr de

 paşi finit, plec5nd de la datele de intrare. )e obicei * regulile de calcul constituie paşii elementari al algoritmuluicu o succesiune anumită şi clară.

E3emple de algoritmi sunt: algoritmul lui Euclid pentru calculul celui mai mare divizor comun a doua numere naturale regula lui #ramer pentru rezolvarea sistemelor liniare ciurul lui Eratostene pentru determinarea numerelor prime, etc.

  )eci, pot e3ista cazuri în care modelul nici nu se mai elaborează. /umai dacă elaborarea algoritmului nu a

fost satisfăcătoare se trece la elaborarea modelului care cere reformularea problemei, reieşind din cunoştinţeleacumulate şi condiţiile reale. Este posibil că acest model să nu fie complet. )upă aplicarea algoritmului şianaliza unor rezultate, modelul se completează, se aplică din nou algoritmul, se analizează din nou rezultateleetc. 6n acest caz , avem un proces iterativ cu o modelare multilaterală, numită şi procedurală. )eci , modelarea

 procedurală este caracterizată prin acordarea unui rol mai mare algoritmului şi a unuia secundar modelului. )efapt, în modelarea procedurală nu se mai poate face o distincţie prea clară între model şi algoritm. &e poate descris chiar un Ralgoritm de elaborare a modeluluiC . 6n consecinţă, este necesar ca şi din punct de vedere teoreticsă acordăm o atenţie deosebită algoritmilor. 6n general, un algoritm trebuie să îndeplinească trei proprietăţi:generalitatea !universalitatea$, unicitatea !determinismul$ şi finititudinea . "rima condiţie se referă la

 posibilitatea că algoritmul să asigure prelucrarea unui număr mare de date de intrare !chiar infinitC$. A douacondiţie se referă la claritatea operaţiilor din fiecare bloc. "rin intermediul regulilor algoritmului, informaţiainiţială este transformata în rezultate bine definite, care determina în mod unic pasul următor. Adică, la orice

e3ecuţie a algoritmului cu date de intrare identice, rezultatele sunt aceleaşi. A treia se referă la numărul de paşifinit în care se furnizează rezultatele !care trebuie să fie din punct de vedere practic de ordinul secundelor minutelor $. Această caracteristică precizează că orice algoritm se termina întrun număr finit de paşi.

  6n continuare , prezentăm o clasificare a algoritmilor din punct de vedere a comple3ităţii problemei şie3actităţii soluţiei. &e poate defini trei clase mari de algoritmi: algoritmi exac'i !riguroşi$, algoritmiaproximativi şi algoritmi euristici.

  "entru a caracteriza aceşti algoritmi, introducem următoarele notaţii: /3 Lvectorul soluţiei furnizat dealgoritm% /4L vectorul adevăratei soluţii, Lvector al unor abateri admisibile, dinainte stabilite.

 %lgoritm exact !riguros$ are următoare proprietate : IS IT L2 !1.1$ %lgoritmul aproximativ are proprietatea că pentru orice ε dat se găseşte soluţia IT  astfel ca:

 IS IT NLε  !1.$

  %lgoritmul euristic

este de căutare prin încercări bazate prin intuiţie şi e3periment care se îmbunătăţeşteîn general succesiv, cu proprietatea că , pentru un ε dat, nu avem siguranţa că găsim o soluţie IT , astfel înc5tsă se respecte proprietatea !1.$.

  Algoritmul euristic se compune în general , dintro mulţime de reguli inteligibile, care sunt încercate întimpul calculelor, şi se îmbunătăţesc pe baza analizei rezultatelor obţinute. 6n urma acestor încercări,

 programatorul constată care sunt regulile cele mai adecvate pentru anumite situaţii !tipuri de probleme,

Page 5: l Lab Nr1pc c Tp 15

7/17/2019 l Lab Nr1pc c Tp 15

http://slidepdf.com/reader/full/l-lab-nr1pc-c-tp-15 5/25

metodele etc.$. 8ezultă că mulţimea regulilor elementare care pot fi folosite întrun algoritm euristic este practicinfinita, deoarece acestea sunt create pe măsură ce algoritmul se aplică de mai multe ori. )ar, o procedură lacare nu se cunosc regulile nu se poate algoritmiza !deoarece la elaborarea schemei unui algoritm ar trebui săştim ce reguli putem să aplicam$. &ar părea, deci, că este un nonsens să vorbim despre un algoritmi euristici.#ontradicţia se rezolvă făc5nd convenţia că pentru o anumită perioadă sau un anumit număr de aplicaţii,algoritmul se compune dintrun anumit număr de aplicaţii, algoritmul se compune dintrun număr finit de regulielementare, cunoscute iniţial. 6n afara regulilor elementare !independente$, nu pot e3ista reguli compuse!trunchiateC sau amendateC etc.$. )acă regula de compunere este cunoscută, atunci numărul de regulicompuse poate fi finit, procedura fiind algoritmizabilă. 6n consecinţă, rezultă că o procedură euristică poate fi,

cel puţin temporar, algoritmizabilă.  (ulţimea algoritmilor euristici aplicaţi pentru adoptarea deciziilor se numeşte euristică. 6ntruc5t un algoritmeuristic se compune din reguli elementare !şi eventual reguli compuse $, putem afirma că orice euristicăreprezintă o mulţime deschisă de reguli !elementare şisau compuse$, adică depinde de e3perienţa

 programatorului şi atunci e obligator de elaborat şi scenariul de testare al programului în baza unui set de date.6nsă astfel de cazuri vor fi analizate la alte teme de lucrări de laborator.

"rin operaţia de descriere a algoritmilor se urmăreşte prezentarea acestora întro forma precisa si clara,accesibila omului sau calculatorului. )escrierea algoritmilor se poate face prin: scheme logice, limba

 pseudocod, limba de programare.

Atunci c5nd vorbim despre instrucţiunile specifice programării structurate, trebuie să amintim de teorema destructură a lui ?ohm şi Uacopini: Orice algoritm poate fi compus din numai trei structuri de calcul: 

•  Structuri secvenţiale L secvenţe în care instrucţiunile se e3ecută în ordine. "resupune e3ecutareaunei prelucrari in ordinea precizata . ! ele nu se e3ecuta conditional sau repetitiv $. E3ista cateva tipuri ,

 printre care:

  1.$ )eclararea variabilelor se face cu sinta3a ,, tip data variabila VV. )efinirea variabilei pune in legaturanumele variabilei cu tipul sau .  .$#itirea variabilei reprezinta operatia prin care continutul unei variabile e incarcat de la tastatura.  7.$Atribuirea este operatia prin care o valoare e asociata unei variabile.  9.$Afisarea se realizeaza cu sinta3a scrie e3p 1 , ... , e3p n  .$Fnstructiunea compusa reprezinta un set de prelucrari cuprinse intre acolade .

•  Structuri alternative L decizii decid dacă să se continue e3ecuţia pe o ramură sau alta. &#'" : permite

efectuarea unei prelucrari in functie de valoarea unei conditii şi permite e3ecutarea unei prelucrari dacao conditie este indeplinita.

•  Structuri repetitive L cicluri e3ecuţia repetată a unui corp de instrucţiuni

-iecare dintre aceste structuri are o singură intrare şi o singură ieşire.)eci un algoritm de rezolvare presupune stabilirea pasilor necesari. "asii necesari pot fi descrisi intrun

limba de programare , insa nu toata lumea cunoaste acel program si niciun program nu sa impus ca fiindsingurul utilizat de programatori . )in acest motiv sau impus niste metode generale de descriere a algoritmilor independente de limbaul de programare . "rogramele se scriu pe baza acestor descrieri . (etodele cele maiimportante sunt :  W pseudocodul  W schema logica

1.. (roiectarea al,oritmului' folosind ca instrument seudocodul."&EJ)'#')JH  reprezinta un set restrans de cuvinte in romana sau engleza asociate unor 

operanti.Astfel , cuvintele utilizate sunt : intreg , real , citeste , scrie , daca , atunci , altfel , sfarsit daca , pentru ,cat timp , sfarsit cat timp , e3ecuta cat timp .

"seudocodul folosit cuprinde:

• operaţii de intrare ieşire:

citeşte var + * var 2 *, scrie expresie+ * expresie2 *,

• structuri de control:

• decizia:

dacă expresie atunci  instruc'iune+&alt"el 

  instruc'iune2&

• ciclul:

Page 6: l Lab Nr1pc c Tp 15

7/17/2019 l Lab Nr1pc c Tp 15

http://slidepdf.com/reader/full/l-lab-nr1pc-c-tp-15 6/25

c-t timp expresie repetă  instruc'iune&

• secvenţa:

X instruc'iune+&  ...  instruc'iunen&Y

 %lgoritmul de(voltat pe ba(a acestui pseudocod este:

reali a,b,c,delta,31,3,3r,3i%citeşte a,b,c%dacă aL2 atunci dacă b≠2 atunci  scrie Zcb%  altfel  dacă c≠2 atunci

 scrie nu avem nici o solutieC%  altfel

 scrie o infinitate de solutiiC%  altfel

  X deltaLbSb9SaSc%  dacă delta OL 2 atunci X  31L!bs[rt!delta$$!Sa$%  3L!b\s[rt!delta$$!Sa$%  scrie 31,3% Y altfel X  3rLb!Sa$%  3iLs[rt!delta$!Sa$%  scrie 3r,3i%

  Y Y1.!. Descrierea al,oritmilor rin sc5eme lo,ice &chema logica este descrierea grafica a unui algoritm cu

autorul unor simboluri care indica paşii algoritmului si ordinea lor de e3ecuţie. -iecărei operaţii sau pas i se

ataşează un simbol geometric în interiorul căruia se înscrie operaţia de e3ecutat. &uccesiunea operaţiilor estesimbolizata prin săgeţi. &chema logica reflecta de fapt modul de e3ecuţie al programului corespunzător algoritmului. <om analiza în continuare simbolurile grafice utilizate.

a$ terminal marchează începutul, sf5rşitul sau un punct de revenire în schema logica. 6ntro schema logicae3ista un singur terminal de &4A84 si un singur terminal de &4'".

&4A84 &4'" 8E4J8/

  -igura .1. &imbolul terminal al schemei logice'bservaţii: Jn algoritm poate să aibă doar un singur bloc start6 Jn algoritm trebuie să aibă cel putin un blocsto 

 b$ bloc de intrareieşire !citirescriere$ permite precizarea datelor de intrare în problema prin initializarea cuvalori corespunzătoare a variabilelor care codifica aceste date sau permite afisarea unor rezultate !obtinute cadate de ieşire din algoritm$.

?loc de Fntrareieşire 8EA) a, b, c% *8F4E 31, 3% în 4"  scanf printf% în #

-igura .. ?locul de citirescriere date, reprezentat printrun paralelogram

c$ atribuire sau bloc de calcul reprezintă o operaţie de calcul cu atribuirea rezultatului variabilei din

membrul st5ng. &imbolul de atribuire poate fi: ] sau :^calcul 31 :a ba% T ] T \ 1

Page 7: l Lab Nr1pc c Tp 15

7/17/2019 l Lab Nr1pc c Tp 15

http://slidepdf.com/reader/full/l-lab-nr1pc-c-tp-15 7/25

  -igura .7. ?locul de calcul<ariabilele din membrul drept al blocului de calcul trebuie sa aiba valori bine definite !rezultate în urma

citirii sau calculului$% vechea valoare a variabilei din membrul stang se pierde, peste ea scriinduse noua valoarerezultata în urma operaţiei de calcul.

d$ linia de flu3 indica directia flu3ului operaţiilor

-igura .9. 8eprezentarea unei linii de flu3e$ conectorul indica punctul în care o linie de flu3 se conecteaza cu o alta linie de flu3 sau o întrerupere a

liniei de flu3.

-igura .9. &chema unui conector de flu3f$ decizia logica indica un test logic al carui rezultat poate fi adevarat !true$ sau fals !false$, continuarea

flu3ului de prelucrare facanduse pe ramura în care condiţia este îndeplinita.#ondiţie )A A7B  /J )A /J

  -igura .. 8eprezentarea grafica a deciziei logiceg$ procedura reprezintă un algoritm sau un subalgoritm descris în alt loc, pentru care se cunosc datele de

intrare% procedura returneaza rezultatele sau face doar anumite prelucrări asupra datelor de intrare."rocedura Ecgr!a,b,c,31,3$ (ed!a,b$

  -igura .;. ?loc pentru apelul procedurilorAlgoritmii pot fi descrisi pe baza unor structuri sau succesiuni de structuri rezultate din combinarea

simbolurilor definite mai sus.4ipuri de structuri:1. &tructura liniara este data de un bloc sau de o succesiune de blocuri de calcul.'peraţie 1  'peraţie   'peraţie 7 'peraţie 1\\7

  -igura .=. &chema unei structuri liniare, înlocuita cu un singur bloc de calcul&#_E(A H'PF#A este reprezentarea grafica a unor prelucrari. Aceasta reprezinta un set de simboluri grafice :  &4A84 : punctul de pornire al algoritmului  &4'" : punctul de oprire al algoritmilor   #iteste variabila : operatia de citire a variabilei  &crie variabila : operatia de scriere a variabilei.

Page 8: l Lab Nr1pc c Tp 15

7/17/2019 l Lab Nr1pc c Tp 15

http://slidepdf.com/reader/full/l-lab-nr1pc-c-tp-15 8/25

. &48J#4J8A AH4E8/A4F<A&#'" : permite efectuarea unei prelucrari in functie de valoarea unei conditii.

)E#FGFA &#'" : permite e3ecutarea unei prelucrari daca o conditie este indeplinita.(E#A/F&( )E -J/#4F'/A8E : se evalueaza conditia sau e3presia la o valoare logica. )aca e adevarata se

realizeaza prelucrarea " , daca nu , nu se e3ecuta nimic.&EHE#4FA  &#'" : permite e3ecutarea unei prelucrari din doua posibile la un moment dat in functie de valoarea

unei conditii. Adică permite e3ecutarea unei prelucrari din doua posibile la un moment dat in functie de valoarea uneiconditii. &e reprezinta in schema logica si pseuocod.daca`cond atunci

  "1  altfel

  "  sfarsit`daca

&chema logica:

 (ecanism de functionare : se evalueaza conditia la o valoare logica.)aca este adevarat se e3ecuta "1 , daca nu , se e3ecuta".'bs : Atat pentru decizie , cat si pentru selectie se e3ecuta in mod conditionat o singura prelucrare. )aca trebuie e3ecutateconditionat , pe oricare din ramuri mai multe prelucrari , acestea trebuie cuprinse intre acolade intro instructiune bloc.

&4A84

#iteste variabila

&crie variabila

  &4'"

condLt

""1

Page 9: l Lab Nr1pc c Tp 15

7/17/2019 l Lab Nr1pc c Tp 15

http://slidepdf.com/reader/full/l-lab-nr1pc-c-tp-15 9/25

 -igura .>.E3emplu simplu pentru o structura liniara f&tructura alternativa !F- 4_E/ EH&E$ este o structura care are la baza blocul de decizie logica. #a

e3emplu se considera schema logica pentru calculul funcţiei:

-igura .@. E3emplu de structura F-4_E/EH&E&EHE#4FA (JH4F"HA  Este o structura derivata. Ea poate fi inlocuita prin struturi decizionale , deoarece esteimplementata de instructiuni in limbae de programare. Ea poate fi prezentata in schema logica:

(ecnism de functionare: se evalueaza e3presia . )aca valoarea obtinuta L <1 , atunci se e3ecuta "1 sise iese din instructiune . )aca nu , se compara valoarea cu <.)aca sunt egale se e3ecuta " . )aca nu ,valoarea se compara cu <n , daca e egala se e3ecuta "n si se iese din instructiune.

7. 8tructuri reetitive "cicluri+  sunt structuri utile în situaţii în care o anume operaţie sau grup de operaţiise repeta de un număr finit de ori. &tructurile repetitive permit e3ecutarea repetata fie a unei instructiuni, fie amai multor instructiuni, cuprinse în corpul ciclului. "ermite e3ecutarea unei instructiuni cat timp o conditie este

 <1 "1

< "

<n"n

Page 10: l Lab Nr1pc c Tp 15

7/17/2019 l Lab Nr1pc c Tp 15

http://slidepdf.com/reader/full/l-lab-nr1pc-c-tp-15 10/25

indeplinita. #a e3emplu se va considera calculul sumei elementelor dintrun şir: a1, a, , an : & ^ a1 a an.

'peraţiile ce trebuie efectuate pas cu pas sunt:& L 2 !initializarea sumei$& L & \ a1& L & \ a operaţii care se repeta, difera doar indicele& L & \ an

#iclul cu contor  DforD permite e3ecutarea unei prelucrari de un numar cunoscut de ori.

Este o instructiune cu test initial si numar cunoscut de iteratii.Fmplementeaza structura logica Dpentrusfarsit`pentruD.?locul initializareC realizeaza initializarea contorului cu o valoare initiala. &unt posibile si alte

initializari necesare in program.?locul conditieC testeaza conditia. )e regula, conditia este contor N valoare finalaC.

  'bservatie: 8epetitiva poate lucra si descrescator, caz in care conditia se schimba.?locul incrementareC realizeaza cresterea contorului cu o unitate in mod automat.

#iclul cu contorinitializareindice L indice`initial corp cicluindice L indice \ pas

 indice O indicefinal /u )a  corp ciclu  incrementare test initializare

  -igura .12 &tructura unui ciclu cu contor

-igura .11. #iclu cu contor pentru calculul sumei unui şir de n elemente

Page 11: l Lab Nr1pc c Tp 15

7/17/2019 l Lab Nr1pc c Tp 15

http://slidepdf.com/reader/full/l-lab-nr1pc-c-tp-15 11/25

Ciclul cu test initial "9:$LE ; DO+  e3ecuta corpul ciclului atat timp cat condiţia este adevarata !-igura.1$.

-igura .1.#iclul *_FHE )'

 -igura .17. #iclul cu test final aplicat la calculul sumei elementelor unui şirHa primele teme vom reduce totul la probleme mult mai simple care vor include algoritmi liniari,

ramificativi, ciclici şi mi3t care trebuie să asigure aceleaşi proprietăţi, însă sunt bazaţi numai pe deducţii logice,evidenţiind următoarele etape pentru rezolvarea problemei concrete:

 1$ 8eformularea strictă a problemei: datele iniţiale, metodaformulele, forma şi conţinutul rezultatelor. $ Elaborarea algoritmului rezolvării problemei şi verificarea lui.7$ Alcătuirea programului în conformitate cu algoritmul elaborat la etapa precedentă.

 9$ )erularea, testarea şi documentarea programului. $ Analiza rezultatelor programului.

  4rebuie de menţionat că cea mai răsp5ndită formă de reprezentare a algoritmului este descrierea prinschemele logice. (ai detaliat se e3pune şi se e3aminează în lucrările de laborator ce urmează.Aflati media aritmetica a rimelor n numere naturale.

8imulare numerica <"2 nL7 , iL1 , sL2 , medL2%"1 iL1 , 1NL7 !4$ , sL2\1L1 , medL11L1% iL1\1L %" iL , NL7 !4$, sL\1L7 , medL7 % iL\1L7 %"7 iL7, 7NL7 !4$, sL7\7L; , medL;7 % iL\1L9 %"9 iL9, 9NL7 !-$, medL;7L.

Page 12: l Lab Nr1pc c Tp 15

7/17/2019 l Lab Nr1pc c Tp 15

http://slidepdf.com/reader/full/l-lab-nr1pc-c-tp-15 12/25

  / 0 P 1 : 0odele de program TP în ba(a algoritmilor liniariX"rogram efectuat de studentul grupei 4F 21 /ume-am YX Hlab. nr.1 < A 8 F A / 4 A = Y  Program 1lbnr+&

X#ondiţia problemei: #alculaţi valorile lui d,T conform formulelor următoare: d:34 / 

2

5sin

2

 67#4ln859x7*:34cos x5cos 6 7#cos4x5675e x. )atele iniţiale se introduc de la tastatură. Y

X&chiţa algoritmului: algoritmi liniari, utilizînd funcţii predefinite în 4" Y Jses #rt%

  <ar I,,), : 8eal% Xvariabilele I, iniţiale% varle ), rezultateYBe,in #lrscr%

  *riteln!Fntroduceti valoarea lui 3LO $% 8eadln!3$%  *riteln!Fntroduceti val. LO $% 8eadln!0$%

d<="s>r"2+?s>r"sin"@+++"ln"@+?s>rt"2++63<="cos"2+?cos"@++cos"2?@+?e2"2+6

  *riteln!8ezult.1: dL ,d:$% *riteln!8ezult.: TL ,T:$%

End. "rogram Hlab1``sfera%X"rogram efectuat de studentul gr. #19` /ume-am Hlab. nr.1, <arta 1= Y

X #ondiţia problemei: #alculaţi valorile Ariei secţiunii a3iale a sferei !($ şi <olumului sferei !(7$ conform formulelorcunoscute. )atele iniţiale se introduc de la tastatură. YX&chiţa algoritmului: algoritmi liniari în baza formulelor geometrice. Y

  Jses crt%#onst piL7.191@% XAcest rînd se putea evita. "i !$ în 4" e determinatY

  <ar r,l,s,v : 8eal%?egin X Fntroducerea datelor: Y

  *riteln!Fntroduceti raza sfereiLO $% 8eadln!r$%X #alculul variabilelor: Y

  s:LpiS!rSr$% v:L97SpiSs[r!r$Sr%+riteln!Aria seci a3iale a sferei , s:>:7, !( p.$$%+riteln!$%+riteln !<olumul sferei L , v:>:7, !( cubi$$%+riteln!$% 8eadTe0%

End.

 &4A84

 #iteste n

  sL2

(edL2

  iNLn

&Ls\i

  iLi\1

&crie med

 &4'"

(edLsi

)A

 /J

Page 13: l Lab Nr1pc c Tp 15

7/17/2019 l Lab Nr1pc c Tp 15

http://slidepdf.com/reader/full/l-lab-nr1pc-c-tp-15 13/25

E I E ( " H E: (odele de algoritmi în soluţionarea problemelor:"roblema .9.;. &e cere să se realizeze algoritmul care citind o valoare de tip întreg / şi o cifră întreagă #, verifică dacă

în reprezentarea zecimală a numărului / apare #. <ariantă de soluţie: în acelaşi conte3t, se cere să se precizeze numărul deapariţii ale cifrei # în reprezentarea zecimală

Al,oritmul<

"roblema .9.=. &e cere să se redacteze algoritmul care afişează toate permutările care se pot face cunumerele 1, , 7, 9, . Fndicaţie: se vor utiliza cinci cicluri cuprinse unul în altul, cîte unul pentru fiecare

 poziţie din cadrul fiecărui ciclu se parcurg toate valorile posibile poziţiei corespunzătoare

&tart

aL2

Introducere

 / şi #

 /mod12L#

aLa\1

 /L/div12

 /O2

4ipărire

&top

da

nu

da

nu

&tart

numL2

iL1

fLtrue

 L1

 Li

fLfalse

A

A

TL1

TLi

da

fLtrue

nuTL

da

nu

lL1

lLi

fLfalse

nulL

nulLT

da da

nu

?

1

7

9

;

=

@

1

7

9

;

da

nu

>

=

>

@

da

12

11

1

17 19 1

1;

mLi mL mLT mLlnu nu nu nu

da dadada

fLfalse

fLtrueda

1>1@ 2 1

7

9

?

mL11=

Page 14: l Lab Nr1pc c Tp 15

7/17/2019 l Lab Nr1pc c Tp 15

http://slidepdf.com/reader/full/l-lab-nr1pc-c-tp-15 14/25

&imulare numerica:"o nL7 , 3L,9,; , "L1"1 iL1 , 1N`7 !a$ , 3L , "L1SL , iL1\1L" iL , N`7 !a$ , 3L9 , "LS9L> , iL1\L7"7 iL7 , 7N`7 !a$ , 3L; , "L;S>L9> , iL1\7L9"9 iL9 , 9N`7 !f$ , scrie 9>.

8E4F/E4F W "entru a calcula inversul unui numar trebuie sa folosim formula : /F/<L/F/<S12\c

  unde cLn12 , iar nLn12W "entru a demonstra daca un numar e palindrom trebuie ca acesta sa fie egal cu inversul sau.  E3 : 17 nu e palindrom  11 e palindrom.7.$ #alculati suma cifrelor unui numar .E3 : nL17&uma cifrelorL1\\7L;

&imulare numerica:"2:nL17,sL2"1:17O2 A, cL1712L7,sL2\7,nL1712L1":nL1O2 A,cL112L,sL7\L,nL112L1"7:nL1O2 A,cL112L1,sL\1L;,nL112L2"9:nL2O2 -,scrie sL;

8c5ema lo,ica

numLnum\1

4ipărireF,,T,l,m

mN;

;

da

mLm\1

1>=

lLl\1

lN; 17da

nu

nu

 L\1

 N; ;nu

da

iLi\1

 N; nu

da

&top

>

@

72

71

7

77

Page 15: l Lab Nr1pc c Tp 15

7/17/2019 l Lab Nr1pc c Tp 15

http://slidepdf.com/reader/full/l-lab-nr1pc-c-tp-15 15/25

Calculati produsul cifrelor unui numar.  Sc"ema logica:

&imulare numerica:"2:nL17,pL1"1:nL17O2 A,cL1712L7, pL1S7L7,nL1712L1":nL1O2A, cL112L,pL7SL;,nL112L1"7: nL1O2 A,cL112L1, pL;S1L;,nL112L2

 &4A84

 #iteste n

  sL2

  nO2

#Ln12

nLn12

&crie s

 &4'"

  &Ls\c

)A

 /J

 &4A84

 #iteste n

  pL1

  nO2

#Ln12

nLn12

&crie p

 &4'"

  pLpSc

)A

 /J

Page 16: l Lab Nr1pc c Tp 15

7/17/2019 l Lab Nr1pc c Tp 15

http://slidepdf.com/reader/full/l-lab-nr1pc-c-tp-15 16/25

"9:nL2O2 -,scrie pL;Calculati suma rimelor n numere naturale .

Calculati rodusul rimelor n numere naturale . 8c5ema lo,ica 

&imulare numerica :"2 nL7 , pL1

  #iteste n

  iNLn

  &Ls\i

iLi\1

  )A

  /J

&4A84

 &L2

 iL1

  &crie s

&4'"

 &4A84

 #iteste n

  pL1

  iL1

  iNLn

  iLi\1

&crie p

 &4'"

  "LpSi

)A

 /J

Page 17: l Lab Nr1pc c Tp 15

7/17/2019 l Lab Nr1pc c Tp 15

http://slidepdf.com/reader/full/l-lab-nr1pc-c-tp-15 17/25

  #iteste n

  iNLn

#iteste 3 iLi\1

  )A

  /J

&4A84

 &L2, pL1

 iL1

&crie s, p

&4'"

  iNLn

  "LpS3 &Ls\3

"1 iL1 % 1NL7 !4$ % pL1S1L1 % iL1\1L %" iL % NL7 !4$ % pL1SL % iL\1L7%"7 iL7 % 7NL7 !4$ % pLS7L; % iL7\1L9%"9 iL9 % 9NL7 !-$ &#8FE ;.

8e citesc n valori . Calculati rodusul valorilor ozitive si suma valorilor ne,ative .

 #flati produsul cifrelor nenule ale unui numar.   Sc"ema logica :

&imulare numerica:"2:nL172 ,pL1"1:nL172O2 A,cL17212L1, 2O2!-$ ,nL17212L17":nL17O2A, cL1712L7,pL1S7L7,nL1712L1"7: nL1O2 A,cL112L, pLS7L;,nL112L1"9:nL1O2 !A$ cL112L1 , pL;S1L; nL112L2,":nL2Oo!-$ scrie ;

Page 18: l Lab Nr1pc c Tp 15

7/17/2019 l Lab Nr1pc c Tp 15

http://slidepdf.com/reader/full/l-lab-nr1pc-c-tp-15 18/25

 $roblema .%.& Se cere să se redacte(e algoritmul care listea(ă tripletele 4i* !* 7 şi n* natural n3;< care satis"ac rela'iain5!n3 n. Se vor considera tripletele pentru care +=3i=!==0* unde 0 data de intrare.Fndicaţie: se lucrează în întreg de aceea ( şi n trebuiesc astfel aleşi încît ( nN7i1 adică nSln!($Nln!7i1$. 8ezultă că

 pentru un ( precizat 0 

ni

ln

 'ln(  17−

Algoritmul

  #otă< Rafinare n ai succesivi Adeseori algoritmul de rezolvare a unei probleme esterezultatul unui proces comple3, în care se iau mai multe decizii şi se precizează tot ceea ce iniţial era neclar.'bservaţia este adevărată mai ales în cazul problemelor complicate, dar şi pentru probleme mai simple în

 procesul de învăţăm5nt. Este vorba de un proces de detaliere pas cu pas a specificaţiei problemei, procesdenumit şi proiectare descendentă, sau rafinare în paşi succesivi. Algoritmul apare în mai multe versiunisuccesive, fiecare versiune fiind o detaliere a versiunii precedente. 6n versiunile iniţiale apar propoziţiinestandard, clare pentru cititor, dar neprecizate prin propoziţii standard. Jrmează ca în versiunile următoare săse revină asupra lor. Algoritmul apare astfel în versiuni succesive, tot mai complet de la o versiune la alta.

  )ntrebările de autocontrol 

1. Enumăraţi principalele caracteristici ale lui *indo+s @3223 şi principiul gestiunii ferestrelor.. )escrieţi lansarea programului *ord for *indo+s, #rearea, Editarea şi &alvarea unui document nou.7. #aracterizaţi (ediul de programare 4J8?' "A&#AH: &istemul de meniuri.şi meniul principal. 8îndul de

 os şi -ereastra Edit.9. )efiniţi structura algoritmului şi notaţia în schemelebloc.

 0 n

i

ln

 'ln(    17−

1&tart

#itire (

nL7

7

9

da

iL1

 Li\1

TL\1

in\nLTn

;

=

>

4ipărire!i, , T$ şi n

da

nu

@

TLT\1

TN(da

>

12

11

 L\11

 N(1=da

nu

nu

iLi\1

iN(;

da

nu

nLn\1

nu

&top

17

19

1;

1

Page 19: l Lab Nr1pc c Tp 15

7/17/2019 l Lab Nr1pc c Tp 15

http://slidepdf.com/reader/full/l-lab-nr1pc-c-tp-15 19/25

. )efiniţi structura programului 4" şi sinta3a e3presiilor în limbaul 4".;. #um se definesc tipurile de date şi variabile în 4"=. #e reprezintă funcţiile predefinite în 4".>. #e tipuri de date predefinite cunoaşteţi în 4".@. <erificaţi ce rezultate se vor obţine pentru următoarele secvenţe de program:

a$ ?egin Xpentru 3L1, aL1 şi 3L1, aL1YfLSaS3\abs!a1$% f3Le3p!s[r!3$$s[rt!s[r!a$$%+rite!jfLV,f,Vf3LV,f3$End%

 b$ ?egin z:L 7S= div mod =7 Z trunc!sin!1$$% +riteln!jzLV, z$ end%c$  ?egin v:L succ!round!$ Z pred!7$$% +riteln!jvLV, v:9$ end%

@S. #um trebuie scrisă în 4" instrucţiunea de atribuire, fără a utiliza cicluri, pentru calcularea valorii E prinurmătoarea formulă:  3 37 39

EL1\ 3\ k \ \   7 912S.#5te operaţii în 4" se vor efectua în timpul calcului următoarei e3presii: !3 \ 1$S!0 \ =12$Z7911S. &unt date punctele pe plan ca valori reale a,b,c,d,s,t,u. &e cunoaşte că punctele !a,b$ şi !c,d$ nu se află pedreapta e3primată prin egalitatea sS3\tS0\uL2. &ă se determine dacă punctele !a,b$ şi !c,d$ aparţin diferitor semiplane.1. )escrieţi modalităţile de soluţionarea ale problemelor asistate de "#.

Anexa  Varintele problemelor Ll.nr.1

#r.ar.

  ormulele entru calculalorile daatelor iniiale

1   !c sin!3π7$$ c\zF

GL% vL    !1=\lnF0$% !7\zG$

3L2,79=,9% cu pasul 2,10L 2,=2cL1,>

0Lcvva aG ac % 0\ sinF vva

  +L .  ,2221\!0vv$G

cL1,27=aL2,11,% cu pasul 2,1vvL,@=>

7 ````  aLe;5 Hcos!h T$\ 

T % bLa ln!a sinh$T.  L 2,11,2% cu pasul 2,1TL,=hL2,@9

9 ```` ````  [L

 dF\f Z f FlnG!d\3$d% 0LcosG[  Z [ f F\dF

dL,7@fL1,3L2,1,@% cu pasul 2,1

```  aLgIlgF!n\m$ F\m

 

,\n % bL!ngGa$!ea2=$gL1,21,;9% cu pasul 2,1mL,19nL1,79

; ```  

uLsin

G

!s1$ptg

G

!sst$ % oL u

s\sin

!sp$

 "L2,=&L1,;2tL2,1,2% cu pasul 2,1

= `` aL7tgI!e+F$

 

>+ % bLaG[sinG !a[[$[L2,7,1% cu pasul 2,1+L1,7eL,11

> `````  atLarcsin d+F\  e+ % asLat ln!t$\log at

dL1,=11t,eL1,21,+L,1121

@ afL e9zdgGd zg% aaLaf arctg!zdg$9 d,zL9,121gL1,,2% cu pasul 2,1

12 ```

+L!ssin r F

$\lnG

!r[$% ffLe;J

 

r+ ss%

[L1,21

rL2,1,2% cu pasul 2,1sL1,7%11

ddLln!dvFr\r$!r1$% drLddGd arcsin!r\v$r vL,221dL2,2291,2=% cu pasul 2,1rL1,97

Page 20: l Lab Nr1pc c Tp 15

7/17/2019 l Lab Nr1pc c Tp 15

http://slidepdf.com/reader/full/l-lab-nr1pc-c-tp-15 20/25

1 ````````` `````eeL e;Fr\h  d+Fv lnr% TLr Gtg

 

vF\eeF

vL2,7,1% cu pasul 2,1hL,29% rL2,121% dL1,=11+L2,121

17 ggLv e;r log rm !mv1$% gLsinr!ggmFrr$ vL1,7=,2% cu pasul 2,1m,rL2,>=

19   c 

30F lnc 0!3zz$F

GGL% vL    !1=\lnF0$% !7\zzG$

3L2,79,% cu pasul 2,10L 2,=2cL1,>

1 ```  lL log v r\mIarcsinF!m$% llL l\1 e;m r

mL2,92,% cu pasul 2,1r,vL1,>

1;S. )e alcătuit algoritmul pentru: &e dă un număr natural / şi numerele A1,...,A/. )e precăutat subşirurilenumerelor formate din:

a$ pătrate întregi% b$ puterile cinciului% c$ numere simple.  "entru fiecare caz de obţinut cea mai mare lungime a subşirului precăutat. Este de dorit, pentru cei avansa'i în

 programare* să încerce să utili(e(e  subprograme care ar găsi patratele întregi, puterile numerelor prime,numere multiple şi alte situaţii de prelucrare a şirurilor de numere prin diverşi algoritmi.1=. "roblema 'U=1 &e ştie că un număr natural este deosebit dacă e3istă un număr natural m astfel încît nLm\&!m$unde &!m$ este suma cifrelor lui m. &e cere un program care verifică dacă un număr natural 3 este deosebit.

(etoda folosita: daca 3 are a cifre atunci şi m va avea m sau a1 cifre şi ele pot să aibă sumă minimă dacă toatecifrele lui m sînt R1C şi &!m$La1 şi suma cifrelor n este ma3imă dacă toate sînt R@C şi atunci &!m$LaS@. )eci m poate să varieze de la naS@ pînă la na\11>. )e alcătuit algoritmul pentru programul 4"!pr127%$ de mai os.X )e obţinut toate combinaţiile din 12 elemente !1,...,12$, c5te 9 elemente in fiecare Y

 program 127%const nL12% numL9%var i:integer%

 a:arra01..n of 1..n% procedure tipareste% var i:integer%  begin  for i:L1 to num do +rite!ai, $%  +riteln%  end%

 procedure permuta!T:integer$% var i,3:integer%  begin  if TL1 then tipareste else begin  for i:L1 to T do begin  3:Lai%ai:LaT%aT:L3%  permuta!T1$%  3:Lai%ai:LaT%aT:L3%  end% end%end%

 begin for i:L1 to n do ai:Li% +riteln% permuta!n$%end.LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL Y

1@. )e alcătuit algoritmul pentru programul 4" de mai os şi de determinat ce efectuează.uses crt%const nL1%  a:arra01..n of integerL!2,2,,2,,2,,9,9,9,@,$%var i,,T,[:b0te%

  z,+:integer% beginclrscr%

for i:L1 to n do begin  +rite!ai, $%  end%

+riteln%+riteln%

Page 21: l Lab Nr1pc c Tp 15

7/17/2019 l Lab Nr1pc c Tp 15

http://slidepdf.com/reader/full/l-lab-nr1pc-c-tp-15 21/25

for i:L1 to n do beginif aiO2 then inc!T$%end%i:Ln%

repeatif aiO2 then begin  z:Lai%  for :Li do+nto do begin a:La1%end%  a1:Lz%  end  else dec!i$%

if ai N 2 then begin  inc![$% +:Lai%  for :Li to n[ do begin a:La\1%end%  an[\1:L+%  end%

until iLT%for i:L1 to n do begin+rite!ai, $%end% readTe0%end.

2. "roblema. )e alcătuit algoritmul şi programul pentru următoare condiţie: Avionul poate efectua o cursadin #hişinău in una din localitatile H1, H, ...Hn. #ostul unui bilet la cursa D#hişinău localitatea HiD este de Ailei. Prupul de pasageri include (1 persoane care pleaca in localitatea H1, ( persoane care pleaca in

localitatea H s. a. m. d. )in localitatea Hi !iL1,,...,n$ in localitatea H !L1,,...,n$ se circula cu trenul, costulunui bilet fiind de 4i lei. &e considera, ca costul unui bilet direct DHi HD este mai mic dec5t costul unui biletcu transportari DHi HT HD, adica 4i N4iT \4T. Elaboraţi un program care determina localitatea undeva ateriza avionul, garant5nd minimizarea costului total al biletelor procurate de pasageri.Y

1. "roblema 'U=>. )e alcătuit algoritmul şi programul pentru următoare condiţie: -ie < o multime cecontine elementele 1 si 2.ILI1,I...In cu n mai mare ca 1 !n este dat$si Ii apartine lui <.&e mai dau: si sapartin multimii numerelor naturale mai mari ca 1.&a se genereze toate cuvintele L1...T, unde1\\...\TL&. &a se determine pentru fiecare dun cuvintele generate de cite ori apar ca subcuvinte ale luiI.Y

. "roblema. )e alcătuit algoritmul şi programul pentru următoare condiţie: -ie " o permutare aelementelor 1,....T &punem ca " este un ciclu de lungime l daca o submultime i1,i....il a multimii 1,...Teste astfel inc5t urmatoarele relatii sa fie indeplinite:

- 1."!i1$Li,....,"!l1$L"!l$, "!il$Li1- ."!3$L3 pu oricare 3 din 1,..Ti1,i,...il

7. "roblema 'U= )e alcătuit algoritmul şi programul pentru următoare condiţie: -ie un vector < cu pcomponente, ocupat partial cu elemente din multimea AL!a,b,c,d,e,f,g$. #omponentele lui < se consideraocupate incepind in ordine cu F componenta, fara sa e3iste locuri libere intre componentele ocupate. -iind dateun element 0, se cere:

  a$ &a se verifice daca 0 in A si daca se gaseste printre elementele ocupate in vector   b$ Fn cazul in care 0 nu se gaseste in vector, sa se ordoneze crescator componentele aflate in vector si apoi

sa se introduca 0 pe locul care i se cuvine in ordine crescatoare!le3icografic$  c$ )aca 0 se gaseste in vector, sa se scoata si sa se comprime locurile ocupate astfel incit locurile libere sa

ramina ultimele.Y9. "roblema )e alcătuit algoritmul şi programul pentru următoare condiţie: &e dă o matrice A patratica

formata din elementele 2 şi1. &e cere:)e gasit sirul ? cu proprietatile:  1.Elementele sirului sint distincte doua cite doua.  ."entru orice doua elemente l si m consecutive ale sale ,Al,mL1.  7.#onsiderind elementul ?i, succesorul ?i\1 este cel mai mic indice cu proprietatile cerute. EIE("HJ:  2 1 1 1

AL 1 2 1 21 2 1 11 2 2 2 ,unde ?L!1,,7,9$

 "recautam de la inceput primul element al matricei L1,apoi se precauta pe rindul iL alt element al matriceiL1 .)aca nu sa gasit trecem la succesorul primului element al matricei L1,etc.

. "roblema 'U1@ )e alcătuit algoritmul şi de derulat programul pentru următoare condiţie: &e daumulţimile <La,b,c,d si &LA,?. /umim cuv5nt format cu elementele lui <J& o succesiune formata conformregulilor:  1$orice 3 din <a,d este un cuv5nt.  $daca 3 este cuv5nt atunci a3d este cuv5nt.  7$daca 3,0 sunt cuvinte atunci 3A0, a?0 sunt cuvinte.

Page 22: l Lab Nr1pc c Tp 15

7/17/2019 l Lab Nr1pc c Tp 15

http://slidepdf.com/reader/full/l-lab-nr1pc-c-tp-15 22/25

 d5nduse succesiune 3L31,3,...,3n cu elemente <J&, sa se determine daca 3 este cuv5nt.

"8'P8A( 8A)F#AH% X"rogramul . #alculează radical din 3Y<A8 eps, XepsL precizia cu care se calculeazăY  3, Xradical din 3, epsO2 si 3OL2Y  r, Xvaloarea radicalului 3Y  a,b, Xcapetele intervalului ce conţine pe rY  m : 8EAH% Xmilocul intervalului a,bY?EPF/  *8F4EH/!&e calculează radical din 3 cu precizia eps:$%  *8F4E!epsL$% 8EA)H/!eps$%  *8F4E! 3 L$% 8EA)H/!3$%  F- 3N1 4_E/ ?EPF/ a:L3% b:L1 E/) XFniţializează pe a si bY  EH&E ?EPF/ a:L1% b:L3 E/)%

8E"EA4  m:L!a\b$%  F- !aSa3$S!mSm3$N2

4_E/ b:Lm Xrădăcina în st5ngaYEH&E a:Lm% Xrădăcina in dreaptaY

  J/4FH baNeps%  r:L!a\b$%  *8F4EH/% *8F4EH/%  *8F4EH/!8adical!,3:;:1,$ L ,r:;:7$% Xqrrad!3$qNepsY  8EA)H/E/).

2>. )e alcătuit algoritmul şi de derulat programul pentru următoare condiţie:  ?$0@ PIT%AO@IB . /umerele a*b*c, se numesc pitagorice dacă 2 2 2a 5 b 3 c 1. &ă se tipărească toate tripletele !a*b*c$ de numere

 pitagorice, cu 2Na=b=c şi a5b5c  n ordonate după suma a5b5c.&pecificarea problemei este:

 C%T n& DnE ?& pentru n=+2 nu există tripleteF @G$1T%T toate tripletele de numere pitagorice 4a*b*c7 cu proprietatea

=a=b=c şi a5b5cHn.

= )e alcătuit algoritmul şi de derulat programul pentru următoare condiţie: <om nota prin S  suma a5b5c.

&e ştie că !7,9,$ este primul triplet de numere pitagorice. 6n acest caz S  ia valori de la 1 la n. 6ntruc5t <a=S   variabila a iavalori de la 7 la S 7. Apoi bNS)a deci b va lua valori de la a5+ la !S)a$. Algoritmul pentru rezolvarea problemei este dat încontinuare :

 %lgoritmul ?@PIT%AO@IB este : Cate n& DnE ?& pentru n=+2 nu există tripleteF Cacă n=+2  atunci Tipăreşte ?u există numerele cerute   alt"el Pentru S3+2*n execută  Pentru a3<*S#< execută  Pentru b3a5+*4S)a7#2 execută  Jie c:3S)a)b&  Cacă c 3a 5b atunci Tipăreşte4a*b*c7 S")dacă

  S")pentru

  S")pentru  S")pentruS")dacă

S")algoritm.

"rogramul "ascal corespunzător este dat în continuare."8'P8A( /8"F4AP'8F#E% X"rogramul 1.1.. /umere pitagoriceY<A8 n, X n /% a\b\cn Y  &, X & L a\b\c Y  a,b,c, X!a,b,c$ triplet de numere pitagoriceY

X 2 N a N b N c Y  T : integer% X contor Y?EPF/

 *8F4EH/!&e tipăresc tripletele!a,b,c$ de numere pitagorice$% *8F4EH/!cu proprietatea: a\b\cNLn, pentru n dat$% *8F4E!)aţi valoarea lui n:$% 8EA)H/!n$% -or T:L1 to 9 do +riteln% T:L2% F- nN1

Page 23: l Lab Nr1pc c Tp 15

7/17/2019 l Lab Nr1pc c Tp 15

http://slidepdf.com/reader/full/l-lab-nr1pc-c-tp-15 23/25

  4_E/ *8F4EH/!/u e3ista numerele cerute$  EH&E -'8 &:L1 4' n )'  -'8 a:L7 4' & )F< 7 )'  -'8 b:La\1 4' !&a$ )F< )'  ?EPF/  c:L&ab%  F- cScLaSa\bSb 4_E/ ?EPF/  T:LT\1%  *8F4EH/!4ripletul !a,b,c$,T:7,L ,a:7, b:7,c:7$%  E/) XF-Y

  E/)% 8EA)H/%E/).

2K. P@OL10 P@OP$S2K.+. -ie i*!*E. &ă se scrie un algoritm pentru ca să se determine restul împărţirii numărului natural i ! la  .

2K.2. &ă se scrie un algoritm pentru ca să se tipărească toate tripletele 4i*!*7 de numere naturale care verificăcondiţiile

i2 5 !2 3  2

+ = i = ! = H n 

2K.<. &ă se scrie un algoritm pentru ca să se verifice dacă numărul nE este perfect. !Jn număr  n este perfect dacăeste egal cu suma divizorilor lui diferiţi de n% e3emplu: ;L1\\7$.

2K.M. &ă se scrie un algoritm pentru determinarea numerelor perfecte din intervalul a*b, pentru a*b date.

2K.N. )ouă numere întregi x şi  6 sunt DprieteneD dacă suma divizorilor numărului x  este egală cu suma divizorilor numărului 6. &ă se scrie un algoritm pentru ca să se găsească numerele DprieteneD din intervalul a*b.

2K.>. &ă se scrie un algoritm pentru calcul şi să se tipărească primii n termeni din şirul -ibonacci, şir definit de relaţiade recurenţă

i5+ i i)+t    3 t   5 t  , iL1,,...

av5nd +t  3 t  3 +7.

2K.. -ie n* E G 5 , n    . &ă se scrie un algoritm pentru calculul numărului combinărilor de n elemente luate c5te  .

2K.K. -ie a E ? . &ă se scrie un algoritm pentru calculul mediei aritmetice, geometrice şi armonice a tuturor divizorilor lui a.

2K.. &ă se scrie un algoritm care să determine toate numerele întregi de trei cifre abc 9 cu proprietatea

abc 3 a   5 b   5 c< < < .

2K.+. &ă se scrie un algoritm pentru formula de generare a unui şir de numere ! 6i$ este

n

2 6   3 n   ) OPn 5 +>+;.2K.++. &ă se scrie un algoritm care să e3prime orice sumă de lei S , în minimum de monede de 1 leu, 7 lei, lei, 12

lei , 2 lei, 2 lei şi 122 lei.2K.+2. &ă se scrie un algoritm pentru ca să se găsească soluţiile întregi şi pozitive ale ecuaţiei ax 5 b6 3 c, cu

 proprietatea x56=n, pentru a*b*c apar'ine lui G  şi nO2.2K.+<. &e dă n E  .  &ă se scrie un algoritm pentru calcularea

:3+

n

B : 

n4+5

+

25...5

+

:  7∑ =

2K.+M. -ie a*b,c E 5. &ă se scrie un algoritm pentru rezolvarea ecuaţiei2 x 5 dx 5 p 3

unde d 3 !a*b$ este cel mai mare divizor comun al numerelor a şi b, iar p este probabilitatea ca un număr n E  ce verificăcondiţia nHc, luat la înt5mplare, să fie prim.

2K.+N. &e cere un algoritm pentru determinarea numerelor impare succesive a căror sumă este egală cu n7, pentrunL1,...,2. !E3. < < <

+ 3+* 2 3<5N* < 3O5P5++ >, etc$.2K.+>. %nali(a'i algoritmul şi scri'i codul sursă pentru solu'ionarea ecua'iei de grad doi a/ 25b/5c3 4a*b*c∈ @

 i a≠ 7.

Page 24: l Lab Nr1pc c Tp 15

7/17/2019 l Lab Nr1pc c Tp 15

http://slidepdf.com/reader/full/l-lab-nr1pc-c-tp-15 24/25

(etoda de rezolvare a ecuaţiei de gradul doi este cunoscută. Ecuaţia poate avea rădăcini reale, respectiv comple3e, situaţierecunoscută după semnul discriminantului d L b  9ac.

2K.+. %nali(a'i algoritmul şi scri'i codul sursă pentru solu'ionarea următoarelor probleme. #a model matematicvom folosi formula:

-ormula nu este întotdeauna aplicabilă. <om distinge următoarele situaţii:1. aL2, caz în care nu avem de a face cu o ecuaţie de gradul , ci1.1. este posibil să avem ecuaţia de gradul 1: b3\cL2, cu soluţia

3L cb , dacă b ≠ 2.1.. dacă şi bL2, atunci1..1. dacă c≠2, atunci nu avem nici o soluţie, în timp ce1... dacă şi cL2, atunci avem o infinitate de soluţii.. a≠2 corespunde ecuaţiei de gradul . Fn acest caz avem alte două situaţii:.1. -ormula este aplicabilă pentru rădăcini reale !discriminant pozitiv$.. "entru discriminant negativ, întruc5t nu dispunem de aritmetică comple3ă, va trebui să efectuăm separat

calculele pentru partea reală şi cea imaginară. 

-ig.>.a. Algoritm pentru rezolvarea ecuaţiei de gradul doi -ig.>.b. Algoritm pentru calculul sumei vaorilor  pozitive a unui tablou unidimensional

Algoritmul de rezolvare a problemei va citi mai înt5i datele problemei, marcate prin variabilele a* b  şi c. <acalcula apoi discriminantul d  şi va continua în funcţie de valoarea lui d , aşa cum se poate vedea în fig.>.a.

+.2b. %nali(a'i şi scri'i codul sursă pentru calcularea sumei elementelor po(itive ale unui şir de numere realedat.

&chema logică !dată în -ig.>.b$ va conţine imediat după blocul &4A84 un bloc de citire, care precizează datelecunoscute în problemă, apoi o parte care calculează suma cerută şi un bloc de tipărire a sumei găsite, înaintea blocului&4'". "artea care calculează suma S   cerută are un bloc pentru iniţializarea cu 2 a acestei sume, apoi blocuri pentru

 parcurgerea numerelor: 31, 33n şi adunarea celor pozitive la suma S . "entru această parcurgere se foloseşte o variabilăcontor i, care este iniţializată cu 1 şi creşte mereu cu 1 pentru a atinge valoarea n, indicele ultimului număr dat.

Bi!lio,rafie<

. #ristea <alentin, 4ehnici de programare. Ed.: ?ucur., 4eora, 1@@7. ;>1.7% 4@7. (arşanu 8adu. (&`)'& şi J/FI. &isteme de operare. Jtilizare *indo+s, Hotus, *ord"erfect. ?ucur., Ed.4ehnic,

1@@. ;@1.7% (79. 4. ?ălănescu .a. "A&#AH şi 4urbo"ascal. v.1,. ?ucur., Ed.: 4ehnica,1@@.. 17. <asiu H., Prama 8., Aldica A. 4urbo "ascal ;.2. "rograme#l./apoca: (icro Fnformatica ,1@@9.7@@ p.

!&er."#$. F&?/ @=7@;=92 #GJ ;>1.7 <7;. 'dagescu Foan, #opos #ristina s.a. (etode si 4ehnici de programare. enunturi, solutii, probleme propuse Ed.:?ucur.:

F/4A#4, 1@@9;>1.7% '7=. )r. ris Uamsa si Hars lander VV4otul despre # si #\\VV, traducere de Eugen )umitrescu

a2

ac4bbx

2

2,1

−±−=

Page 25: l Lab Nr1pc c Tp 15

7/17/2019 l Lab Nr1pc c Tp 15

http://slidepdf.com/reader/full/l-lab-nr1pc-c-tp-15 25/25

>. wxxy{| }. ~{•€€{ ‚{ƒ•„{ €{ …†„y ‡•.!9 „€.$ ~.: ‡ |̂‡•‰Šyx. 1@@7@. ‹Œy{€• Ž. ˆ‚{xx•ˆ{€•y €{ …†„y ‡•. ~.: ‘{’•ˆ • ‰.. 1@>>. ;>1.7% ‹92@12. “”Šx Ž. – ’. —…†„ ‡•. ~.: ‘{’•ˆ • ‰.. 1@>>.;>1.7% “@=11. ˜y• ‘., ~•„•€… ˜. —…†„ ‡•. ™. ’| šˆ‚{xx•‰Š̂ . ~.: ›•€{€‰† • ‰Š. 1@>>.;>1.7% ˜1>1. "rogramare calculatoarelor. Fndrumar de laborator.A."opescu, &. (arin s.a. #hişinău.: J4(, 1@@;.