Sunteți pe pagina 1din 28

PROIECT INDIVIDUAL

Introducere Pascal este unul dintre limbajele de programare de re erin!" #n $tiin!a calculatoarelor% iind cel care a de init programarea calculatoarelor& Pascal a ost de'(oltat de el(e!ianul Ni)laus *irt+ #n ,-./ pentru a pune #n practic" programarea structurat"% aceasta iind mai u$or de compilat& Unul din marile sale a(antaje este asem"narea cu limbajul natural limba engle'"% ceea ce #l ace limbajul ideal pentru cei care sunt la primul contact cu programarea& Pascal este ba'at pe limbajul Algol $i a ost denumit ast el #n onoarea matematicianului 0laise Pascal% creditat pentru construirea primelor ma$ini de calcul numeric& *irt+ a mai de'(oltat limbajele 1odula23 $i Oberon% similare cu Pascal& Cele mai populare implement"ri a acestui limbaj au ost Turbo Pascal $i 0orland Pascal% ambele ale irmei 0orland cu (ersiuni pentru 1acintos+ $i DO4% care i2au ad"ugat limbajului obiecte $i au ost continuate cu (ersiuni destinate program"rii (i'uale pentru 1icroso t *indo5s 6limbajul Delp+i7 $i pentru Linu8 69:li87& ;n pre'ent e8ist" $i alte implement"ri mai mult sau mai pu!in populare% dar gratuite% printre care se remarc" <ree Pascal $i =NU Pascal&
De$i #n pre'ent este relati( rar olosit #n industria so t5are% el este #nc" util ele(ilor $i studen!ilor care doresc s" se ini!ie'e #n programare& 4pre deosebire de 0A4IC% care a stat #n trecut la ba'a #n("!"rii program"rii% Pascal este un limbaj structurat& De aceea% el ormea'" un anumit tip de g>ndire% similar limbajelor moderne% precum C??% dar nu de!ine comple8itatea $i abstracti'area acestuia din urm"% iind mai u$or de #n!eles datorit" sinta8ei $i apropiate de pseudocod&

Argument Proiectul se adresea'a in totalitate predarii la clasa% deoarece de cele mai multe ori ele(ii nu inteleg de initiile care le sunt predate ara a a(ea un e8emplu in ata& De(reme ce gra urile ie ele orientate sau neorientate nu au mai ost predate sau intalnite de ele(i inainte am ales un mod mai atragator de ale e8plica acesta iind modul gra ic o erit de programul 0orland Pascal&

Unit-ul Graph Unit @ ul standard =rap+ implementea'" un num"r de subprograme a8ate pe prelucr"ri gra ice& Programele care utili'ea'" subprogramele destinate prelucr"rilor gra ice trebuie s" con!in" directi(a uses graph. 1odul gra ic permite #mp"r!irea ecranului #n puncte in(i'ibile& In accep!iunea unit @ ului =rap+% col!ul st>ng sus al ecranului gra ic are coordonatele 6 /% / 7& Valorile 8% sau coloanele% cresc spre dreapta& Valorile :% sau liniile% cresc #n jos& ;n unit @ ul =rap+ se olose$te no!iunea de pointer actual 6 curent 7& Pointerul actual este similar cursorului din modul te8t% cu deosebirea c" acest pointer nu este (i'ibil% cursorul gra ic este de dimensiunea unui pi8el& Di(ersele unc!ii de desenare implic" deplasarea cursorului gra ic pe ecranul gra ic% analog deplas"rii (>r ului unui creion pe +>rtie& Ecranul gra ic se pre'int" ca o 'on" dreptung+iular"% caracteri'at" prin dimensiuni bine stabilite pentru iecare tip de displa: 6 sub#n!eleg>ndu2se o anumit" con igura!ie +ard5are% un anumit dri(er $i un anumit mod gra ic 7& Principalele instruc!iuni olosite #n unit2ul =rap+ ClearDevice @ $terge ecranul gra ic $i mut" cursorul gra ic #n punctul 6/% /7& CloseGrap+ @ #nc+ide modul gra ic% restabile$te modul te8t $i eliberea'" Aeap2ul necesar modului gra ic& InitGraph 6(ar =rap+Dri(er% =rap+1odeB integerC Pat+ToDri(erB string7 @ in!iali'ea'" modul gra ic $i e8ecut" procedura =rap+De aults& =rap+Dri(er con!ine codul dri(erului% iar =rap+1ode mod gra ic& Dac" =rap+Dri(erBDDetect% se detectea'" adaptorul $i se pune la re'olu!ia ma8im"& In Pat+ToDri(er se speci ic" calea c"tre i$ierul &0=I& Pentru portabilitatea programului e8ecutabil se recomand" includerea dri(er2ului gra ic cu Pegister0=IDri(er& Line 6 8,% :,% 83% :3B integer 7 @ trasea'" o linie #ntre punctele 68,% :,7% 683% :37& OutTextXY 6 8% : B integerC Te8t4tringB string 7 @ scrie te8tul Te8t4tring% #ncep>nd de la punctele 6 8% : 7& Rectangle 6 8,% :,% 83% :3B integer 7 @ desenea'" un dreptung+i #ntre punctele diagonal opuse 6 8,% :, 7% 6 83% :3 7& SetColor 6 ColorB 5ord 7 @ sc+imb" culoarea de desen la culoarea Color& SetFillStyle 6 PatternB 5ordC ColorB 5ord 7 @ selectea'" modelul $i culoarea de +a$urare date #n (ariabilele Pattern $i Color& SetTextStyle 6 <ont% DirectionB 5ordC C+ar4i'eB 5ord 7 @ sc+imb" tipul% direc!ia $i dimensiunea setului de caractere&

Cod sursa:
uses =rap+% dela:%crtC t:pe (ectorDarra: E,&&,//F o integerC matriceDarra:E,&&,/%,&&,/F o b:teC (ar (B(ectorC =d%=m%i%8%:%jBIntegerC optiune%nr%sirBstringC c%nouaBc+arC o)BbooleanC procedure primapaginaC (ar Dri(er%1odeBIntegerC begin Dri(erBDDetectC Init=rap+6Dri(er%1ode%G G7C i =rap+ResultH/ t+en Aalt6,7C setb)color6blac)7C sirBDGTeoria gra urilor GC or iBD, to lengt+6sir7 do begin 8BDI//C repeat sette8tst:le6de ault ont%/%J7C setcolor6:ello57C outte8t8:68%,//%sirEiF7C dela:6K/7C setcolor6getb)color7C outte8t8:68%,//%sirEiF7C 8BD82KC until 8D,/?3KLiC setcolor6red7C outte8t8:68%,//%sirEiF7C endC sirBDGneorientateGC or iBD, to lengt+6sir7 do begin 8BDI//C repeat sette8tst:le6de ault ont%/%J7C setcolor6:ello57C outte8t8:68%,K/%sirEiF7C dela:6K/7C setcolor6getb)color7C outte8t8:68%,K/%sirEiF7C 8BD82KC until 8D3//?3KLiC setcolor6red7C outte8t8:68%,K/%sirEiF7C endC sette8tst:le6de ault ont% Aori'Dir%,7C

setcolor6blue7C outte8t8:6,//%J/K%GPro esor coordonatorB G7C outte8t8:6,//%J3K%G=+eorg+e ArdeleanG7C outte8t8:6M//%J/K%G<ilip 1onicaG7C outte8t8:6M//%J3K%GUni(ersitatea de NordG7C outte8t8:6M//%JMK%GIn ormatica IIG7C dela:6MK///7C endC Nprin aceasta procedura se ace intrarea in modul gra ic O procedure initgra C (ar =d%=mBIntegerC begin =dBDDetectC Init=rap+6=d%=m%G G7C i =rap+ResultHPgrO) t+en Aalt6,7C endC N in aceasta procedura sunt pre'entate subiectele abordate O procedure meniuC begin clearde(iceC setb)color6blac)7C setcolor6K7C sette8tst:le6de ault ont%,%K7C outte8t8:6I3/%,//%G1eniuG7C outte8t8:6K/%,//%G1eniuG7C 8BD,Q/C :BD,//C sette8tst:le6de ault ont%/%,7C setcolor6blue7C or iBD, to Q do begin case i o ,BoptiuneBDG,&De initiiGC 3BoptiuneBDG3&1etode de repre'entareGC JBoptiuneBDGJ&Parcurgere gra GC MBoptiuneBDGM&Descompunere in componente cone8eGC KBoptiuneBDGK&=ra bipartitGC IBoptiuneBDGI&1atricea drumurilorGC .BoptiuneBDG.&AplicatiiGC QBoptiuneBDGQ&iesireGC endC outte8t8:68?,K%:?,/%optiune7C :BD:?3/C endC endC Ncu ajutorul acestei proceduri putem citi orice caracter introdus de la tastatura in timpul rularii programuluiO procedure citire6(ar re'BstringC8%:%lungma8Binteger7C

begin re'BDGGC cBDread)e:C 5+ile 6cHPR,J7 and 6lengt+6re'7Hlungma87 do begin outte8t8:68%:%c7C re'BDre'?cC cBDread)e:C endC endC

8BD8?QC

Intreg programul se ba'ea'a pe mici procedurii care repre'inta iecare subiect abordat% precum cele pre'entateB procedure de initiiC begin clearde(iceC setcolor60lue7C sette8tst:le6de ault ont%/%37C outte8t8:63//%3/%GDe initiiG7C setcolor6I7C sette8tst:le6de ault ont%/%,7C outte8t8:6K/%./%G,& Numim gra neorientat o perec+e de multimi 68%u7 unde 8 este o multime G7C outte8t8:6,/%-/%G inita si ordonata de elemente numite (ar uri% iar u este o multime inita de G7C outte8t8:6,/%,,/%Gperec+i de elemente din 8 si este numita multimea (ar urilor&G7C sette8tst:le6de ault ont%/%,7C sette8tst:le6de ault ont%/%,7C setcolor65+ite7C circle6,//%,K/%-7C circle63,/%,./%-7C circle6./%,-/%-7C circle6,I/%3,/%-7C setcolor6red7C outte8t8:6-Q%,MQ%G,G7C outte8t8:63/Q%,IQ%G3G7C outte8t8:6IQ%,QQ%GJG7C outte8t8:6,KQ%3/Q%GMG7C setcolor65+ite7C setlinest:le6/%/%Norm*idt+7C line6,/I%,KK%3/M%,IK7C N, la 3O line63/M%,.J%,KM%3/37C N3 la MO line63/K%,IQ%.K%,QM7C N3 la JO setcolor6I7C sette8tst:le6de ault ont%/%,7C outte8t8:6K/%3J/%G3& 4punem despre 3 (ar uri ca sunt adiacente daca perec+ea E8,%83F apartine G7C outte8t8:6,/%3K/%Gde U% adica daca es8ista o muc+ie intre cele doua noduriC 8,%83 se (or numi G7C outte8t8:6,/%3./%Ge8tremitatile muc+iei uDE8,%83F% unde uDmuc+ie&G7C setcolor65+ite7C circle6,//%J,/%-7C circle63//%J,/%-7C setlinest:le6/%/%Norm*idt+7C line6,,/%J,/%,-/%J,/7C

setcolor6red7C outte8t8:6-I%J/I%G,G7C outte8t8:6,-I%J/I%G3G7C setcolor6I7C sette8tst:le6de ault ont%/%,7C outte8t8:6K/%JM/%GJ& Daca muc+ia uDE8,%83F apartine de U spunem ca muc+ia si e8tremitatileG7C outte8t8:63/%JI/%Gsale sunt incidente&G7C setcolor65+ite7C circle6,//%M//%-7C circle63//%M//%-7C setlinest:le6/%/%Norm*idt+7C line6,,/%M//%,-/%M//7C setcolor6red7C outte8t8:6-I%J-I%G,G7C outte8t8:6,-I%J-I%G3G7C dela:6I////7C clearde(iceC setcolor6I7C sette8tst:le6de ault ont%/%,7C outte8t8:6K/%3/%GM& Numim gradul unui (ar 8 numarul de muc+ii incidente cu (ar ul 8&G7C setcolor65+ite7C circle6,//%Q/%-7C circle63,/%,//%-7C circle6./%,3/%-7C circle6,I/%,M/%-7C setcolor6red7C outte8t8:6-Q%.Q%G,G7C outte8t8:63/Q%-Q%G3G7C outte8t8:6IQ%,,Q%GJG7C outte8t8:6,KQ%,JQ%GMG7C setcolor65+ite7C setlinest:le6/%/%Norm*idt+7C line6,/I%QJ%3/Q%-,7C N, la 3O line63/M%,/.%.,%,3-7C N3 la JO setcolor6I7C sette8tst:le6de ault ont%/%,7C outte8t8:63/%,IQ%GK& Numim (ar i'olat acel (ar care nu are nici o muc+ie incidenta% adica G7C outte8t8:63/%,QQ%Ggradul sau este 'ero&G7C outte8t8:63/%3/Q%GI& Numim (ar terminal acel (ar care are o singura muc+ie incidenta% adica G7C outte8t8:63/%33Q%Gare gradul ,&G7C outte8t8:6K/%3MQ%G.& Numim gra complet% daca pentru oricare doua (ar uri 8 si : din G7C outte8t8:63/%3IQ%Gmultimea S a(em muc+ia E8%:F in multimea U&G7C setcolor65+ite7C circle6,//%J//%-7C circle6,-/%J//%-7C circle6,K/%J3/%-7C setcolor6red7C sette8tst:le6de ault ont%/%,7C outte8t8:6-Q%3-Q%G,G7C outte8t8:6,QQ%3-Q%G3G7C outte8t8:6,MQ%J,Q%GJG7C setcolor65+ite7C

setlinest:le6/%/%Norm*idt+7C line6,/K%J/K%,QK%3-K7C N, la 3O line6,/K%J/K%,MK%J,K7C N, la JO line6,QK%3-K%,MK%J,K7C N3 la JO setcolor6I7C sette8tst:le6de ault ont%/%,7C outte8t8:6K/%JM/%GQ& Numim gra partial al gra ului =D6S%U7% gra ul =,D6S%V7 pentru care V G7C outte8t8:63/%JI/%Ginclus in U% adica un gra cu aceleasi (ar uri% dar cu mai putine muc+ii&G7C setcolor65+ite7C circle6,//%J-/%-7C circle6,-/%J-/%-7C circle6,K/%M,/%-7C setcolor6red7C sette8tst:le6de ault ont%/%,7C outte8t8:6-Q%JQQ%G,G7C outte8t8:6,QQ%JQQ%G3G7C outte8t8:6,MQ%M/Q%GJG7C setcolor65+ite7C setlinest:le6/%/%Norm*idt+7C line6,/K%J-K%,QK%JQK7C N, la 3O line6,/K%J-K%,MK%M/K7C N, la JO setcolor6I7C sette8tst:le6de ault ont%/%,7C outte8t8:6K/%MJ/%G-& Numim subgra al unui gra =D6S%U7 acel gra =,D6S,%V7% unde S, inclusG7C outte8t8:63/%MK/%Gin S%iar V este acea submultime a lui U ormata din muc+ii ce au G7C dela:6I////7C clearde(iceC outte8t8:63/%3/%Ge8tremitatile in S,&G7C setcolor65+ite7C circle6,//%K/%-7C circle6,-/%K/%-7C setcolor6red7C sette8tst:le6de ault ont%/%,7C outte8t8:6-Q%MQ%G,G7C outte8t8:6,QQ%MQ%G3G7C setcolor65+ite7C setlinest:le6/%/%Norm*idt+7C line6,/K%KK%,QK%MK7C N, la 3O setcolor6I7C sette8tst:le6de ault ont%/%,7C outte8t8:6K/%.K%G,/& Numim lant pentru un gra =D6S%U7 o succesiune de (ar uri G7C outte8t8:63/%-K%G68/%8,%&&&%8)7% 8i apartine de S% pentru oricare iBD/2P)% cu proprietatea ca G7C outte8t8:63/%,,K%Goricare 3 (ar uri alaturate in lant sunt adiacente&G7C setcolor6Q7C setcolor65+ite7C circle6,//%,K/%-7C circle63,/%,./%-7C circle6./%,-/%-7C circle6,I/%3,/%-7C setcolor6red7C outte8t8:6-Q%,MQ%G,G7C outte8t8:63/Q%,IQ%G3G7C

outte8t8:6IQ%,QQ%GJG7C outte8t8:6,KQ%3/Q%GMG7C setcolor65+ite7C setlinest:le6/%/%Norm*idt+7C line6,/I%,KK%3/M%,IK7C N, la 3O line63/M%,.J%,KM%3/37C N3 la MO line63/K%,IQ%.K%,QM7C N3 la JO setcolor6I7C sette8tst:le6de ault ont%/%,7C outte8t8:6K/%3M/%G,,& Numim ciclu un lantD68/%8,%&&&%8)7 cu prorpietatea ca nodurile 8/ si %G7C outte8t8:63/%3I/%G8) sa ie aceleasi si muc+iile sunt sidtincte intre ele&G7C setcolor65+ite7C circle6,//%J//%-7C circle6,-/%J//%-7C circle6,K/%J3/%-7C setcolor6red7C sette8tst:le6de ault ont%/%,7C outte8t8:6-Q%3-Q%G,G7C outte8t8:6,QQ%3-Q%G3G7C outte8t8:6,MQ%J,Q%GJG7C setcolor65+ite7C setlinest:le6/%/%Norm*idt+7C line6,/K%J/K%,QK%3-K7C N, la 3O line6,/K%J/K%,MK%J,K7C N, la JO line6,QK%3-K%,MK%J,K7C N3 la JO setcolor6I7C sette8tst:le6de ault ont%/%,7C outte8t8:6K/%JK/%G,3& Un lant elementar este un lant in care (ar urile sunt distincte 3 G7C outte8t8:63/%J./%Gcate 3C Un ciclu elementar este un ciclu cu aceeasi proprietate&G7C setcolor65+ite7C circle6,//%M//%-7C circle6,-/%M//%-7C circle6,K/%M3/%-7C setcolor6red7C sette8tst:le6de ault ont%/%,7C outte8t8:6-Q%J-Q%G,G7C outte8t8:6,QQ%J-Q%G3G7C outte8t8:6,MQ%M,Q%GJG7C setcolor65+ite7C setlinest:le6/%/%Norm*idt+7C line6,/K%M/K%,QK%J-K7C N, la 3O line6,/K%M/K%,MK%M,K7C N, la JO line6,QK%J-K%,MK%M,K7C N3 la JO setcolor6I7C sette8tst:le6de ault ont%/%,7C dela:6I////7C clearde(iceC setcolor6I7C sette8tst:le6de ault ont%/%,7C outte8t8:6K/%3/%G,J& Numim lant simplu un lant in care toate muc+iile sunt distincte 3 cate 3%G7C outte8t8:63/%M/%Gin ca' contrat lantul se numeste compus&G7C setcolor65+ite7C

circle6,//%./%-7C circle63,/%./%-7C circle6./%,//%-7C circle6,I/%,,/%-7C setcolor6red7C outte8t8:6-Q%IQ%G,G7C outte8t8:63/Q%IQ%G3G7C outte8t8:6IQ%-Q%GJG7C outte8t8:6,KQ%,/Q%GMG7C setcolor65+ite7C setlinest:le6/%/%Norm*idt+7C line6,/I%.K%3/M%IK7C N, la 3O line63/M%.J%,KM%,/37C N3 la MO line63/K%IQ%.K%,/M7C N3 la JO setcolor65+ite7C circle6J3/%./%-7C circle6M3/%./%-7C circle63./%,//%-7C circle6MI/%,,/%-7C setcolor6red7C outte8t8:6J,Q%IQ%G,G7C outte8t8:6M,Q%IQ%G3G7C outte8t8:63IQ%-Q%GJG7C outte8t8:6MKQ%,/Q%GMG7C setcolor65+ite7C setlinest:le6/%/%Norm*idt+7C line6J3I%.K%M,M%IK7C N, la 3O line6M,M%.I%MKM%,/37C N3 la MO line6M3K%.M%MIK%,/J7C N3 la MO line6M,K%IQ%3.K%,/M7C N3 la JO setcolor6I7C sette8tst:le6de ault ont%/%,7C outte8t8:6K/%,Q/%G,M& Un gra =D6S%U7 se numeste cone8 daca pentru oricare 3 (ar uri aleG7C outte8t8:63/%3//%Gsale e8ista un lant care sa le uneasca&G7C setcolor65+ite7C circle6,//%3./%-7C circle63,/%3./%-7C circle6./%JK/%-7C circle6,I/%JI/%-7C setcolor6red7C outte8t8:6-Q%3IQ%G,G7C outte8t8:63/Q%3IQ%G3G7C outte8t8:6IQ%JMQ%GJG7C outte8t8:6,KQ%JKQ%GMG7C setcolor65+ite7C setlinest:le6/%/%Norm*idt+7C line6,/I%3.K%3/M%3IK7C N, la 3O line63/M%3.J%,KM%JK/7C N3 la MO line63/K%3IQ%.K%JKM7C N3 la JO setcolor6I7C outte8t8:6K/%MK/%G12P1eniuG7C cBDread)e:C

endC procedure metodeC begin clearde(iceC setcolor60lue7C sette8tst:le6de ault ont%/%37C outte8t8:63//%3/%G1etode de repre'entareG7C setcolor6I7C sette8tst:le6de ault ont%/%,7C outte8t8:6K/%K/%GI& 1atricea de adiacentaG7C outte8t8:6K/%./%G Pentru gra ul = cu o multime de n (ar uri% S% si o multime de muc+ii U%G7C outte8t8:63/%-/%Gnumim matrice de adiacenta o matrice patratica cu n linii si n coloane in G7C outte8t8:63/%,,/%Gcare pe linia i si coloana j a(em (aloarea , daca (ar urile i si j sunt G7C outte8t8:63/%,J/%Gadiacente si / in ca' contrar&G7C setcolor65+ite7C circle6,K/%,K/%-7C NKO circle63//%,-/%-7C NMO circle6K/%3,/%-7C N,O circle6,./%3./%-7C NJO circle6-/%J//%-7C N3O setcolor6red7C outte8t8:6,MQ%,MQ%GKG7C outte8t8:6,-Q%,QQ%GMG7C outte8t8:6MQ%3/Q%G,G7C outte8t8:6,IQ%3IQ%GJG7C outte8t8:6QQ%3-Q%G3G7C setcolor65+ite7C setlinest:le6/%/%Norm*idt+7C line6,KK%,KK%,-M%,QM7C NK la MO line6,KK%,KK%,IK%3I37C NK la JO line63/K%,-K%,IM%3IM7C NM la JO line6KK%3,K%,IM%3IM7C N, la JO line6-K%J/K%,IM%3IM7C N3 la JO line6J//%3//%M3/%3//7C line6J//%33/%M3/%33/7C line6J//%3M/%M3/%3M/7C line6J//%3I/%M3/%3I/7C line6J//%3Q/%M3/%3Q/7C line6J//%J//%M3/%J//7C line6J3/%,Q/%J3/%J//7C line6JM/%,Q/%JM/%J//7C line6JI/%,Q/%JI/%J//7C line6JQ/%,Q/%JQ/%J//7C line6M//%,Q/%M//%J//7C line6M3/%,Q/%M3/%J//7C setcolor6red7C outte8t8:6JJ/%,QK%G,G7C outte8t8:6JK/%,QK%G3G7C outte8t8:6J./%,QK%GJG7C outte8t8:6J-/%,QK%GMG7C outte8t8:6M,/%,QK%GKG7C

outte8t8:6J/M%3/K%G,G7C outte8t8:6J/M%33K%G3G7C outte8t8:6J/M%3MK%GJG7C outte8t8:6J/M%3IK%GMG7C outte8t8:6J/M%3QK%GKG7C outte8t8:6J3M%3/K%G/G7C outte8t8:6JMM%3/K%G/G7C outte8t8:6JIM%3/K%G,G7C outte8t8:6JQM%3/K%G/G7C outte8t8:6M/M%3/K%G/G7C outte8t8:6J3M%33K%G/G7C outte8t8:6JMM%33K%G/G7C outte8t8:6JIM%33K%G,G7C outte8t8:6JQM%33K%G/G7C outte8t8:6M/M%33K%G/G7C outte8t8:6J3M%3MK%G,G7C outte8t8:6JMM%3MK%G,G7C outte8t8:6JIM%3MK%G/G7C outte8t8:6JQM%3MK%G,G7C outte8t8:6M/M%3MK%G,G7C outte8t8:6J3M%3IK%G/G7C outte8t8:6JMM%3IK%G/G7C outte8t8:6JIM%3IK%G,G7C outte8t8:6JQM%3IK%G/G7C outte8t8:6M/M%3IK%G,G7C outte8t8:6J3M%3QK%G/G7C outte8t8:6JMM%3QK%G/G7C outte8t8:6JIM%3QK%G,G7C outte8t8:6JQM%3QK%G,G7C outte8t8:6M/M%3QK%G/G7C setcolor6I7C sette8tst:le6de ault ont%/%,7C outte8t8:6K/%JI/%GII& Liste de adiacentaG7C outte8t8:6K/%JQ/%GPentru un gra neorientat =D6S%U7 numim lista de adiacenta un (ector de nG7C outte8t8:63/%M//%Gelemente in care iecare element i repre'inta o lsi ce memorea'a (ar urileG7C outte8t8:63/%M3/%Gadiacente (ar ului i&G7C dela:6KK///7C clearde(iceC setcolor65+ite7C circle6,K/%K/%-7C NKO circle63//%-/%-7C NMO circle6K/%,,/%-7C N,O circle6,./%,./%-7C NJO circle6-/%3//%-7C N3O setcolor6red7C outte8t8:6,MQ%MQ%GKG7C outte8t8:6,-Q%QQ%GMG7C outte8t8:6MQ%,/Q%G,G7C outte8t8:6,IQ%,IQ%GJG7C outte8t8:6QQ%,-Q%G3G7C setcolor65+ite7C setlinest:le6/%/%Norm*idt+7C

line6,KK%KK%,-M%QM7C NK la MO line6,KK%KK%,IK%,I37C NK la JO line63/K%-K%,IM%,IM7C NM la JO line6KK%,,K%,IM%,IM7C N, la JO line6-K%3/K%,IM%,IM7C N3 la JO line6J//%./%MK/%./7C line6JQ/%K/%JQ/%,./7C setcolor6red7C outte8t8:6J,/%I/%G(ar ul iG7C outte8t8:6JQK%I/%G(ectorulG7C outte8t8:6JJ/%Q/%G,G7C outte8t8:6J-/%Q/%G3G7C outte8t8:6M,/%Q/%GMG7C outte8t8:6MJ/%Q/%GKG7C outte8t8:6JJ/%,//%G3G7C outte8t8:6J-/%,//%G,G7C outte8t8:6M,/%,//%GJG7C outte8t8:6MJ/%,//%GMG7C outte8t8:6JJ/%,3/%GJG7C outte8t8:6J-/%,3/%G3G7C outte8t8:6M,/%,3/%GMG7C outte8t8:6JJ/%,M/%GMG7C outte8t8:6J-/%,M/%G,G7C outte8t8:6M,/%,M/%G3G7C outte8t8:6MJ/%,M/%GJG7C outte8t8:6MK/%,M/%GKG7C outte8t8:6JJ/%,I/%GKG7C outte8t8:6J-/%,I/%G,G7C outte8t8:6M,/%,I/%GMG7C setcolor6I7C outte8t8:6K/%MK/%G12P1eniuG7C cBDread)e:C endC procedure parcurgereC begin clearde(iceC setcolor60lue7C sette8tst:le6de ault ont%/%37C outte8t8:63//%3/%G1etode de repre'entareG7C setcolor6I7C sette8tst:le6de ault ont%/%,7C outte8t8:6K/%./%GNumim parcurgerea unui gra tra(ersarea tuturor (ar urilor sale% pornindG7C outte8t8:63/%-/%Gdintr2un (ar dat i% trecand prin iecare (ar accesibil din nodul de pornireG7C outte8t8:63/%,,/%Go singura data& In unctie de ordinea in care alegem sa (i'itam (eciniiG7C outte8t8:63/%,J/%Gnodului curent 8 a(em doua tipuri de parcurgeri&G7C outte8t8:6K/%,Q/%GI& Parcurgerea in latime E0<FG7C outte8t8:6K/%3//%GVi'itam mai intai toti (ecinii directi ai nodului curent 8% apoi (eciniiG7C outte8t8:63/%33/%Gne(i'itati ai (ecinilor directi% s&a&m&d& 4e opreste cand nu maiG7C outte8t8:63/%3M/%Ge8ista (ecini ne(i'itati&G7C setcolor65+ite7C circle6Q/%3./%-7C N,O

circle6,K/%J3/%-7C N3O circle6Q.%JI/%-7C NKO circle6J/%J./%-7C NJO circle6-I%M//%-7C NMO setcolor6red7C outte8t8:6.Q%3IQ%G,G7C outte8t8:6,MQ%J,Q%G3G7C outte8t8:6QK%JKQ%GKG7C outte8t8:63Q%JIQ%GJG7C outte8t8:6-M%J-Q%GMG7C setcolor65+ite7C setlinest:le6/%/%Norm*idt+7C line6-J%JIK%-/%J-M7C NK la MO line6QK%3.K%3M%JIM7C N, la JO line6QK%3.K%,MM%J,M7C N, la 3O line6QK%3.K%Q,%JKM7C N, la KO setcolor6I7C sette8tst:le6de ault ont%/%,7C outte8t8:63//%J3/%GParcurgereB ,% 3% J% K% MG7C dela:6K////7C clearde(iceC setcolor6I7C sette8tst:le6de ault ont%/%,7C outte8t8:6K/%K/%GII& Parcurgerea in adancime ED<FG7C outte8t8:6K/%Q/%G4e (i'itea'a mai intai primul dintre (ecinii ne(icitati ai (ar ului G7C outte8t8:63/%,//%Gcurent 8% apoi se procedea'a la el si cu acest (ecin 6i se (i'itea'a primulG7C outte8t8:63/%,3/%G(ecin ne(i'itat7& Ne oprim cand nu mai a(em (ecini ne(i'itati&G7C setcolor65+ite7C circle6Q/%,./%-7C N,O circle6,K/%33/%-7C N3O circle6Q.%3I/%-7C NKO circle6J/%3./%-7C NJO circle6-I%J//%-7C NMO setcolor6red7C outte8t8:6.Q%,IQ%G,G7C outte8t8:6,MQ%3,Q%G3G7C outte8t8:6QK%3KQ%GKG7C outte8t8:63Q%3IQ%GJG7C outte8t8:6-M%3-Q%GMG7C setcolor65+ite7C setlinest:le6/%/%Norm*idt+7C line6-J%3IK%-/%3-M7C NK la MO line6QK%,.K%3M%3IM7C N, la JO line6QK%,.K%,MM%3,M7C N, la 3O line6QK%,.K%Q,%3KM7C N, la KO setcolor6I7C sette8tst:le6de ault ont%/%,7C outte8t8:6J//%33/%GParcurgereB ,% 3% K% M% JG7C outte8t8:6K/%MK/%G12P1eniuG7C cBDread)e:C endC

procedure componenteC begin clearde(iceC setcolor60lue7C sette8tst:le6de ault ont%/%,7C outte8t8:6,//%3/%GDescompunerea unui gra in componente cone8e G7C setcolor6I7C sette8tst:le6de ault ont%/%,7C outte8t8:6K/%./%GNumim componenta cone8a un subgra C al gra ului initial =D6S%U7% cuG7C outte8t8:63/%-/%Gproprietatea ca este cone8 si ma8imal& Adica pentru oricare 3 noduri 8 si :G7C outte8t8:63/%,,/%Gdin C e8ista un lant de la 8 la :C si nu e8ista un subgra CT cone8 a&i& CG7C outte8t8:63/%,J/%Gsa ie inclus in CT&G7C setcolor65+ite7C circle6,//%3//%-7C N,O circle63//%3//%-7C N3O circle6,I/%3K/%-7C NMO circle63K/%3K/%-7C NKO circle6,//%J//%-7C NJO circle63//%J./%-7C NIO setcolor6red7C outte8t8:6-Q%,-Q%G,G7C outte8t8:6,-Q%,-Q%G3G7C outte8t8:6,KQ%3MQ%GMG7C outte8t8:63MQ%3MQ%GKG7C outte8t8:6-Q%3-Q%GJG7C outte8t8:6,-Q%JIQ%GIG7C setcolor65+ite7C setlinest:le6/%/%Norm*idt+7C line6,I.%3K3%3M/%3MQ7C NM la KO line6,/K%3/K%-M%3-M7C N, la JO line63/K%3/K%,KM%3MM7C N3 la MO line63/K%3/K%3MM%3MM7C N3 la KO line6,IK%3KK%,-M%JIM7C NM la IO line63KK%3KK%,-M%JIM7C NK la IO circle6M//%3//%-7C N,O circle6K//%3//%-7C N3O circle6MI/%3K/%-7C NMO circle6KK/%3K/%-7C NKO circle6M//%J//%-7C NJO circle6K//%J./%-7C NIO setcolor6red7C outte8t8:63./%JJ/%G=G7C outte8t8:6J-Q%,-Q%G,G7C outte8t8:6M-Q%,-Q%G3G7C outte8t8:6MKQ%3MQ%GMG7C outte8t8:6KMQ%3MQ%GKG7C outte8t8:6J-Q%3-Q%GJG7C outte8t8:6M-Q%JIQ%GIG7C setcolor65+ite7C setlinest:le6/%/%Norm*idt+7C line6MI.%3K3%KM/%3MQ7C NM la KO

line6M/K%3/K%J-M%3-M7C N, la JO line6K/K%3/K%MKM%3MM7C N3 la MO line6K/K%3/K%KMM%3MM7C N3 la KO line6MIK%3KK%M-M%JIM7C NM la IO line6KKK%3KK%M-M%JIM7C NK la IO setcolor6green7C line6JQ/%,Q/%M3/%,Q/7C line6JQ/%,Q/%JQ/%J3/7C line6JQ/%J3/%M3/%J3/7C line6M3/%,Q/%M3/%J3/7C line6MM/%,Q/%K./%,Q/7C line6MM/%,Q/%MM/%J-/7C line6MM/%J-/%K./%J-/7C line6K./%,Q/%K./%J-/7C outte8t8:6M//%JM/%G=,G7C outte8t8:6K//%M,/%G=3G7C outte8t8:6Q/%M3/%G=,%=3 sunt componente cone8e a gra ului =G7C setcolor6I7C outte8t8:6K/%MK/%G12P1eniuG7C cBDread)e:C endC procedure tipuriC begin clearde(iceC setcolor60lue7C sette8tst:le6de ault ont%/%37C outte8t8:63//%3/%GI& =ra bipartitG7C setcolor6I7C sette8tst:le6de ault ont%/%,7C outte8t8:6K/%I/%G Un gra =D6S%U7 este bipartit daca putem gasi o partitie ormata din 3G7C outte8t8:63/%Q/%Gsubmultimi A si 0 pentru multimea nodurilor 6SDA reunit 0% A intersectat 0G7C outte8t8:63/%,//%GHPmultimea (ida7 a&i& pentru oricare E8%:F apartine de U sa aiba oG7C outte8t8:63/%,3/%Ge8tremitate in A si cealalta in 0&G7C setcolor65+ite7C circle63//%,I/%-7C N,O circle6J//%,I/%-7C N3O circle6J//%3//%-7C NJO circle63//%3//%-7C NMO circle6J//%3J/%-7C NKO setcolor6red7C outte8t8:6,-Q%,KQ%G,G7C outte8t8:63-Q%,KQ%G3G7C outte8t8:63-Q%,-Q%GJG7C outte8t8:6,-Q%,-Q%GMG7C outte8t8:63-Q%33Q%GKG7C setcolor65+ite7C setlinest:le6/%/%Norm*idt+7C line63/K%3/K%3-M%33M7C NM la KO line63/K%,IK%3-M%,KM7C N, la 3O line63/K%3/K%3-M%,-M7C NM la JO setcolor6I7C

sette8tst:le6de ault ont%/%,7C outte8t8:6K/%JJ/%GUn gra =D6S%U7 bipartit se numeste complet daca pentru oricare 8G7C outte8t8:63/%JK/%Gapartine de A% : apartine de 0% muc+ia E8%:F e8ista&G7C outte8t8:6M//%3//%GADN,%MOG7C outte8t8:6M//%33/%G0DN3%J%KOG7C dela:6J////7C clearde(iceC setcolor60lue7C sette8tst:le6de ault ont%/%37C outte8t8:63//%3/%GI& =ra +amiltonianG7C setcolor6I7C sette8tst:le6de ault ont%/%,7C outte8t8:6K/%I/%G4e numeste ciclu +amiltonian intr2un gra =D6S%U7 un cilcu elementarG7C outte8t8:63/%Q/%Gcare trece prin toate nodurile gra ului& Un gra care contine un asemeneaG7C outte8t8:63/%,//%Gciclu se numeste gra +amiltonian&G7C outte8t8:6K/%,3/%G Daca intr2un gra cone8 cu n noduri gradul oricarui nod 8 (eri icaG7C outte8t8:63/%,M/%Gconditia ca 8PDnU3 atunci gra ul este +amiltonian&G7C setcolor65+ite7C circle63//%3//%-7C N,O circle6J//%3//%-7C N3O circle63K/%J//%-7C NJO circle63//%M//%-7C NMO circle6J//%M//%-7C NKO setcolor6red7C outte8t8:6,-Q%,-Q%G,G7C outte8t8:63-Q%,-Q%G3G7C outte8t8:63MQ%3-Q%GJG7C outte8t8:6,-Q%J-Q%GMG7C outte8t8:63-Q%J-Q%GKG7C setcolor65+ite7C setlinest:le6/%/%Norm*idt+7C line63/K%M/K%3-M%J-M7C NM la KO line63/K%3/K%3-M%,-M7C N, la 3O line63/K%M/K%3MM%3-M7C NM la JO line63/K%3/K%3MM%3-M7C N, la JO line63/K%3/K%,-M%J-M7C N, la MO line6J/K%3/K%3MM%3-M7C N3 la JO line63KK%J/K%3-M%J-M7C NJ la KO setcolor6I7C sette8tst:le6de ault ont%/%,7C outte8t8:6J./%J//%G6,%3%J%K%M%,7 2Pciclu +amiltonianG7C dela:6J////7C clearde(iceC setcolor60lue7C sette8tst:le6de ault ont%/%37C outte8t8:63//%3/%GI& =ra eulerian G7C setcolor6I7C sette8tst:le6de ault ont%/%,7C outte8t8:6K/%I/%G4e numeste ciclu eulerian intr2un gra =D6S%U7 un ciclu care contine G7C outte8t8:63/%Q/%Gtoate muc+iile gra ului o singura data& Un gra care contine un asemeneaG7C outte8t8:63/%,//%Gciclu se numeste eulerian&G7C outte8t8:6K/%,3/%GUn gra ara (ar uri i'olate este eulerian daca si numai daca este cone8G7C

outte8t8:63/%,M/%Gsi gradul oricarui nod este numar par&G7C setcolor65+ite7C circle63//%3//%-7C N,O circle6J//%3//%-7C N3O circle63K/%J//%-7C NJO circle63//%M//%-7C NMO circle6J//%M//%-7C NKO setcolor6red7C outte8t8:6,-Q%,-Q%G,G7C outte8t8:63-Q%,-Q%G3G7C outte8t8:63MQ%3-Q%GJG7C outte8t8:6,-Q%J-Q%GMG7C outte8t8:63-Q%J-Q%GKG7C setcolor65+ite7C setlinest:le6/%/%Norm*idt+7C line63/K%M/K%3-M%J-M7C NM la KO line63/K%3/K%3-M%,-M7C N, la 3O line63/K%M/K%3MM%3-M7C NM la JO line63/K%3/K%3MM%3-M7C N, la JO line6J/K%3/K%3MM%3-M7C N3 la JO line63KK%J/K%3-M%J-M7C NJ la KO setcolor6I7C sette8tst:le6de ault ont%/%,7C outte8t8:6J./%J//%G6,%3%M%K%J%,7 2P cilcu eulerianG7C outte8t8:6K/%MK/%G12P1eniuG7C cBDread)e:C endC procedure drumuriC begin clearde(iceC setcolor60lue7C sette8tst:le6de ault ont%/%37C outte8t8:63//%3/%G1atricea drumurilorG7C setcolor6I7C sette8tst:le6de ault ont%/%,7C outte8t8:6K/%I/%GPentru un gra =D6S%U7 cu un numar n de noduri numim matricea drumurilorG7C outte8t8:63/%Q/%Go matrice patratica D cu n linii si n coloane care (a contine pe linia i siG7C outte8t8:63/%,//%Gcoloana j (aloare , daca e8ista drum de la nodul i la nodul j 6iHPj7 si /G7C outte8t8:63/%,3/%Gin ca' contrar% adica nu e8itsa drum de la nodul i la nodul j sau iDj&G7C setcolor65+ite7C circle63//%,-/%-7C N.O circle6,./%3J/%-7C N3O circle63J/%3J/%-7C NKO circle6,//%3Q/%-7C N,O circle6,M/%J3/%-7C NJO circle63//%J3/%-7C NMO circle63I/%J3/%-7C NIO setcolor6red7C outte8t8:6,-Q%,QQ%G.G7C outte8t8:6,IQ%33Q%G3G7C outte8t8:633Q%33Q%GKG7C

outte8t8:6-Q%3.Q%G,G7C outte8t8:6,JQ%J,Q%GJG7C outte8t8:6,-Q%J,Q%GMG7C outte8t8:63KQ%J,Q%GIG7C setcolor65+ite7C setlinest:le6/%/%Norm*idt+7C line63/K%,-K%,IM%33M7C N. la 3O line63/K%,-K%33M%33M7C N. la KO line6,/K%3QK%,JM%J,M7C N, la JO line6,MK%J3K%,-M%J,M7C NJ la MO line63/K%J3K%3KM%J,M7C NM la IO line6M//%3//%KI/%3//7C line6M//%33/%KI/%33/7C line6M//%3M/%KI/%3M/7C line6M//%3I/%KI/%3I/7C line6M//%3Q/%KI/%3Q/7C line6M//%J//%KI/%J//7C line6M//%J3/%KI/%J3/7C line6M//%JM/%KI/%JM/7C line6M3/%,Q/%M3/%JM/7C line6MM/%,Q/%MM/%JM/7C line6MI/%,Q/%MI/%JM/7C line6MQ/%,Q/%MQ/%JM/7C line6K//%,Q/%K//%JM/7C line6K3/%,Q/%K3/%JM/7C line6KM/%,Q/%KM/%JM/7C line6KI/%,Q/%KI/%JM/7C setcolor6red7C outte8t8:6MJ/%,QK%G,G7C outte8t8:6MK/%,QK%G3G7C outte8t8:6M./%,QK%GJG7C outte8t8:6M-/%,QK%GMG7C outte8t8:6K,/%,QK%GKG7C outte8t8:6KJ/%,QK%GIG7C outte8t8:6KK/%,QK%G.G7C outte8t8:6M/M%3/K%G,G7C outte8t8:6M/M%33K%G3G7C outte8t8:6M/M%3MK%GJG7C outte8t8:6M/M%3IK%GMG7C outte8t8:6M/M%3QK%GKG7C outte8t8:6M/M%J/K%GIG7C outte8t8:6M/M%J3K%G.G7C outte8t8:6M3M%3/K%G/G7C outte8t8:6MMM%3/K%G/G7C outte8t8:6MIM%3/K%G,G7C outte8t8:6MQM%3/K%G,G7C outte8t8:6K/M%3/K%G/G7C outte8t8:6K3M%3/K%G,G7C outte8t8:6KMM%3/K%G/G7C outte8t8:6M3M%33K%G/G7C outte8t8:6MMM%33K%G/G7C outte8t8:6MIM%33K%G/G7C

outte8t8:6MQM%33K%G/G7C outte8t8:6K/M%33K%G,G7C outte8t8:6K3M%33K%G/G7C outte8t8:6KMM%33K%G,G7C outte8t8:6M3M%3MK%G,G7C outte8t8:6MMM%3MK%G/G7C outte8t8:6MIM%3MK%G/G7C outte8t8:6MQM%3MK%G,G7C outte8t8:6K/M%3MK%G/G7C outte8t8:6K3M%3MK%G,G7C outte8t8:6KMM%3MK%G/G7C outte8t8:6M3M%3IK%G,G7C outte8t8:6MMM%3IK%G/G7C outte8t8:6MIM%3IK%G,G7C outte8t8:6MQM%3IK%G/G7C outte8t8:6K/M%3IK%G/G7C outte8t8:6K3M%3IK%G,G7C outte8t8:6KMM%3IK%G/G7C outte8t8:6M3M%3QK%G/G7C outte8t8:6MMM%3QK%G,G7C outte8t8:6MIM%3QK%G/G7C outte8t8:6MQM%3QK%G/G7C outte8t8:6K/M%3QK%G/G7C outte8t8:6K3M%3QK%G/G7C outte8t8:6KMM%3QK%G,G7C outte8t8:6M3M%J/K%G,G7C outte8t8:6MMM%J/K%G/G7C outte8t8:6MIM%J/K%G,G7C outte8t8:6MQM%J/K%G,G7C outte8t8:6K/M%J/K%G/G7C outte8t8:6K3M%J/K%G/G7C outte8t8:6KMM%J/K%G/G7C outte8t8:6M3M%J3K%G/G7C outte8t8:6MMM%J3K%G,G7C outte8t8:6MIM%J3K%G/G7C outte8t8:6MQM%J3K%G/G7C outte8t8:6K/M%J3K%G/G7C outte8t8:6K3M%J3K%G,G7C outte8t8:6KMM%J3K%G/G7C setcolor6I7C outte8t8:6K/%MK/%G12P1eniuG7C cBDread)e:C endC procedure metoderC t:pe (ecDrecord 8)%:)BintegerC endC t:pe (ictDarra:E,&&,/F o (ecC (ar n%nr,%nr3%)%8sBstringC aBmatriceC s%e%se%count%8o%:o%8i%:i%5BintegerC

ni)B(ictC begin clearde(iceC setcolor6,/7C sette8tst:le6de ault ont%/%,7C outte8t8:6J/%K/%GCate noduri are gra ul dumnea(ostraVG7C citire6n%JK/%K/%,7C outte8t8:6J/%./%GCate muc+ii are gra ul dumnea(ostraVG7C citire6)%JK/%./%,7C (al6n%s%e7C (al6)%se%e7C or 8oBD, to s do or :oBD, to s do aE8o%:oFBD/C outte8t8:6J/%,//%GAdaugati muc+iile 6e8 TDe la , la 3T7BG7C :BD,//C 8iBDQ/C :iBD3//C or countBD, to se do begin outte8t8:6JK/%:%GDe laG7C citire6nr,%M//%:%,7C outte8t8:6M,/%:%GlaG7C citire6nr3%MJ/%:%,7C (al6nr,%8o%e7C (al6nr3%:o%e7C aE8o%:oFBD,C aE:o%8oFBD,C :BD:?3/C endC dela:6-///7C clearde(iceC 8BDK/C :BDK/C or 8oBD, to s do i 8o mod 3HP/ t+en begin :BD:?K/C 8BD823/C circle68%:%-7C ni)E8oF&8)BD8C ni)E8oF&:)BD:C circle68%:%-7C str68o%8s7C outte8t8:6823%:2J%8s7C end else begin 8BD8?,//C circle68%:%-7C ni)E8oF&8)BD8C ni)E8oF&:)BD:C str68o%8s7C

outte8t8:6823%:2J%8s7C endC 5BDIC setcolor657C or 8oBD, to s do or :oBD, to s do begin i aE8o%:oFD, t+en begin line6ni)E8oF&8)%ni)E8oF&:)%ni)E:oF&8)%ni)E:oF&:)7C dela:6K///7C aE:o%8oFBD/C endC inc657C setcolor657C endC setcolor6I7C sette8tst:le6de ault ont%/%,7C outte8t8:6K/%MK/%G12P1eniuG7C cBDread)e:C endC procedure pgC begin clearde(iceC setcolor65+ite7C circle6J//%,-/%-7CN,O circle63//%3-/%-7CN3O circle6M//%3-/%-7CNJO circle6,K/%J-/%-7CNMO circle63K/%J-/%-7CNKO circle6JK/%J-/%-7CNIO circle6MK/%J-/%-7CN.O line63-M%,-K%,-.%3Q,7CN, la 3O line6J/I%,-K%J-K%3Q,7CN, la JO line6,-I%J//%,MQ%JQ/7CN3 la MO line63/.%3-Q%3KJ%JQ/7CN3 la KO line6M/.%3-M%MMJ%JQK7CNJ la .O line6J-.%3-Q%JMM%JQK7CNJ la IO setcolor6red7C outte8t8:63-Q%,Q.%G,G7C outte8t8:6,-Q%3Q.%G3G7C outte8t8:6J-Q%3Q.%GJG7C outte8t8:6,M.%JQ.%GMG7C outte8t8:63M.%JQ.%GKG7C outte8t8:6JMQ%JQ.%GIG7C outte8t8:6MMQ%JQ.%G.G7C setcolor6I7C sette8tst:le6de ault ont%/%,7C outte8t8:6K/%K/%GParcurgere 0<BG7C setcolor6blue7C circle6J//%,-/%-7CN,O

outte8t8:63//%K/%G,%G7C dela:6.///7C setcolor65+ite7C circle6J//%,-/%-7CN,O setcolor6blue7C circle63//%3-/%-7CN3O outte8t8:63,K%K/%G3%G7C dela:6.///7C setcolor65+ite7C circle63//%3-/%-7CN3O setcolor6blue7C circle6M//%3-/%-7CNJO outte8t8:633Q%K/%GJ%G7C dela:6.///7C setcolor65+ite7C circle6M//%3-/%-7CNJO setcolor6blue7C circle6,K/%J-/%-7CNMO outte8t8:63M3%K/%GM%G7C dela:6.///7C setcolor65+ite7C circle6,K/%J-/%-7CNMO setcolor6blue7C circle63K/%J-/%-7CNKO outte8t8:63KI%K/%GK%G7C dela:6.///7C setcolor65+ite7C circle63K/%J-/%-7CNKO setcolor6blue7C circle6JK/%J-/%-7CNIO outte8t8:63./%K/%GI%G7C dela:6.///7C setcolor65+ite7C circle6JK/%J-/%-7CNIO setcolor6blue7C circle6MK/%J-/%-7CN.O outte8t8:63QM%K/%G.G7C dela:6.///7C setcolor65+ite7C circle6MK/%J-/%-7CN.O setcolor6I7C sette8tst:le6de ault ont%/%,7C outte8t8:6K/%,,/%GParcurgere D<BG7C setcolor6blue7C circle6J//%,-/%-7CN,O outte8t8:63//%,,/%G,%G7C dela:6.///7C setcolor65+ite7C circle6J//%,-/%-7CN,O setcolor6blue7C circle63//%3-/%-7CN3O outte8t8:63,K%,,/%G3%G7C

dela:6.///7C setcolor65+ite7C circle63//%3-/%-7CN3O setcolor6blue7C circle6,K/%J-/%-7CNMO outte8t8:633Q%,,/%GM%G7C dela:6.///7C setcolor65+ite7C circle6,K/%J-/%-7CNMO setcolor6blue7C circle63K/%J-/%-7CNKO outte8t8:63M3%,,/%GK%G7C dela:6.///7C setcolor65+ite7C circle63K/%J-/%-7CNKO setcolor6blue7C circle6M//%3-/%-7CNJO outte8t8:63KI%,,/%GJ%G7C dela:6.///7C setcolor65+ite7C circle6M//%3-/%-7CNJO setcolor6blue7C circle6JK/%J-/%-7CNIO outte8t8:63./%,,/%GI%G7C dela:6.///7C setcolor65+ite7C circle6JK/%J-/%-7CNIO setcolor6blue7C circle6MK/%J-/%-7CN.O outte8t8:63QM%,,/%G.G7C dela:6.///7C setcolor65+ite7C circle6MK/%J-/%-7CN.O endC procedure comC begin clearde(iceC setcolor6lig+tblue7C sette8tst:le6de ault ont%/%,7C outte8t8:6K/%K/%GComponentele cone8e ale gra ului sunt pre'entate in culori di eriteG7C setcolor65+ite7C circle6J//%,-/%-7CN,O circle63//%3-/%-7CN3O circle6M//%3-/%-7CNJO circle6,K/%J-/%-7CNMO circle63K/%J-/%-7CNKO circle6JK/%J-/%-7CNIO circle6MK/%J-/%-7CN.O line63-M%,-K%,-.%3Q,7CN, la 3O line6,-I%J//%,MQ%JQ/7CN3 la MO line63/.%3-Q%3KJ%JQ/7CN3 la KO

line6M/.%3-M%MMJ%JQK7CNJ la .O line6J-.%3-Q%JMM%JQK7CNJ la IO setcolor6red7C outte8t8:63-Q%,Q.%G,G7C outte8t8:6,-Q%3Q.%G3G7C outte8t8:6J-Q%3Q.%GJG7C outte8t8:6,M.%JQ.%GMG7C outte8t8:63M.%JQ.%GKG7C outte8t8:6JMQ%JQ.%GIG7C outte8t8:6MMQ%JQ.%G.G7C dela:6,////7C setcolor6blue7C circle6J//%,-/%-7CN,O circle63//%3-/%-7CN3O circle6,K/%J-/%-7CNMO circle63K/%J-/%-7CNKO outte8t8:63-Q%,Q.%G,G7C outte8t8:6,-Q%3Q.%G3G7C outte8t8:6,M.%JQ.%GMG7C outte8t8:63M.%JQ.%GKG7C line63-M%,-K%,-.%3Q,7CN, la 3O line6,-I%J//%,MQ%JQ/7CN3 la MO line63/.%3-Q%3KJ%JQ/7CN3 la KO setcolor6red7C circle6M//%3-/%-7CNJO circle6JK/%J-/%-7CNIO circle6MK/%J-/%-7CN.O outte8t8:6J-Q%3Q.%GJG7C outte8t8:6JMQ%JQ.%GIG7C outte8t8:6MMQ%JQ.%G.G7C line6M/.%3-M%MMJ%JQK7CNJ la .O line6J-.%3-Q%JMM%JQK7CNJ la IO dela:6,////7C clearde(iceC setcolor6lig+tblue7C sette8tst:le6de ault ont%/%,7C outte8t8:6K/%K/%GComponentele cone8e ale gra ului sunt pre'entate in culori di eriteG7C setcolor65+ite7C circle63//%,-/%-7C N.O circle6,./%3J/%-7C N3O circle63J/%3J/%-7C NKO circle6,//%3Q/%-7C N,O circle6,M/%J3/%-7C NJO circle63//%J3/%-7C NMO circle63I/%J3/%-7C NIO setcolor6red7C outte8t8:6,-Q%,QQ%G.G7C outte8t8:6,IQ%33Q%G3G7C outte8t8:633Q%33Q%GKG7C outte8t8:6-Q%3.Q%G,G7C outte8t8:6,JQ%J,Q%GJG7C outte8t8:6,-Q%J,Q%GMG7C

outte8t8:63KQ%J,Q%GIG7C setcolor65+ite7C setlinest:le6/%/%Norm*idt+7C line63/K%,-K%,IM%33M7C N. la 3O line63/K%,-K%33M%33M7C N. la KO line6,/K%3QK%,JM%J,M7C N, la JO line6,MK%J3K%,-M%J,M7C NJ la MO line63/K%J3K%3KM%J,M7C NM la IO dela:6,////7C setcolor6blue7C circle63//%,-/%-7C N.O circle6,./%3J/%-7C N3O circle63J/%3J/%-7C NKO outte8t8:6,-Q%,QQ%G.G7C outte8t8:6,IQ%33Q%G3G7C outte8t8:633Q%33Q%GKG7C line63/K%,-K%,IM%33M7C N. la 3O line63/K%,-K%33M%33M7C N. la KO setcolor6red7C circle6,//%3Q/%-7C N,O circle6,M/%J3/%-7C NJO circle63//%J3/%-7C NMO circle63I/%J3/%-7C NIO outte8t8:6-Q%3.Q%G,G7C outte8t8:6,JQ%J,Q%GJG7C outte8t8:6,-Q%J,Q%GMG7C outte8t8:63KQ%J,Q%GIG7C line6,/K%3QK%,JM%J,M7C N, la JO line6,MK%J3K%,-M%J,M7C NJ la MO line63/K%J3K%3KM%J,M7C NM la IO dela:6,////7C clearde(iceC setcolor6lig+tblue7C sette8tst:le6de ault ont%/%,7C outte8t8:6K/%K/%GComponentele cone8e ale gra ului sunt pre'entate in culori di eriteG7C setcolor65+ite7C circle6M//%3//%-7C N,O circle6K//%3//%-7C N3O circle6MI/%3K/%-7C NMO circle6KK/%3K/%-7C NKO circle6M//%J//%-7C NJO circle6K//%J./%-7C NIO setcolor6red7C outte8t8:6J-Q%,-Q%G,G7C outte8t8:6M-Q%,-Q%G3G7C outte8t8:6MKQ%3MQ%GMG7C outte8t8:6KMQ%3MQ%GKG7C outte8t8:6J-Q%3-Q%GJG7C outte8t8:6M-Q%JIQ%GIG7C setcolor65+ite7C setlinest:le6/%/%Norm*idt+7C line6MI.%3K3%KM/%3MQ7C NM la KO

line6M/K%3/K%J-M%3-M7C N, la JO line6K/K%3/K%MKM%3MM7C N3 la MO line6K/K%3/K%KMM%3MM7C N3 la KO line6MIK%3KK%M-M%JIM7C NM la IO line6KKK%3KK%M-M%JIM7C NK la IO dela:6,////7C setcolor6red7C circle6M//%3//%-7C N,O circle6M//%J//%-7C NJO outte8t8:6J-Q%,-Q%G,G7C outte8t8:6J-Q%3-Q%GJG7C line6M/K%3/K%J-M%3-M7C N, la JO setcolor6blue7C circle6K//%3//%-7C N3O circle6MI/%3K/%-7C NMO circle6KK/%3K/%-7C NKO circle6K//%J./%-7C NIO outte8t8:6M-Q%,-Q%G3G7C outte8t8:6MKQ%3MQ%GMG7C outte8t8:6KMQ%3MQ%GKG7C outte8t8:6M-Q%JIQ%GIG7C line6MI.%3K3%KM/%3MQ7C NM la KO line6K/K%3/K%MKM%3MM7C N3 la MO line6K/K%3/K%KMM%3MM7C N3 la KO line6MIK%3KK%M-M%JIM7C NM la IO line6KKK%3KK%M-M%JIM7C NK la IO endC procedure aplicatiiC begin clearde(iceC setcolor6,/7C sette8tst:le6de ault ont%/%37C outte8t8:63//%K/%GE8empleG7C setcolor6M7C sette8tst:le6de ault ont%/%,7C 8BD,K/C :BD,//C or iBD, to J do begin case i o ,BoptiuneBDG,&1etode de repre'entareGC 3BoptiuneBDG3&Parcurgere gra GC JBoptiuneBDGJ&Descompunere in componente cone8eGC endC outte8t8:68?,K%:?,/%optiune7C :BD:?3/C endC sette8tst:le6,,%/%.7C setcolor6blue7C outte8t8:6M//%MMK%GAlegeti o optiuneB G7C citire6nr%KK/%MMK%J7C

nouaBDnrE,FC setcolor65+ite7C case noua o G,GBmetoderC G3GBpgC GJGBcomC endC setcolor6I7C sette8tst:le6de ault ont%/%,7C outte8t8:6K/%MK/%G12P1eniuG7C cBDread)e:C endC Nprogramul principal in care sunt apelate procedurile de inite mai susO 0egin initgra C primapaginaC o)BD alseC repeat meniuC setcolor6red7C sette8tst:le6,,%/%.7C setcolor6blue7C outte8t8:6M//%MMK%GAlegeti o optiuneB G7C citire6nr%KK/%MMK%J7C nouaBDnrE,FC setcolor65+ite7C case noua o G,GBde initiiC G3GBmetodeC GJGBparcurgereC GMGBcomponenteC GKGBtipuriC GIGBdrumuriC G.GBaplicatiiC GQGBo)BDtrueC endC Until o)DtrueC Close=rap+C end&

S-ar putea să vă placă și