Sunteți pe pagina 1din 113

Culegerea vizeaz materia prevzut pentru clasele a V-a i a VI-a n cadrul regulamentelor Olimpiadei naionale de informatic i Concursului naional

de informatic pentru gimnaziu, dar se poate utiliza i la clase mai mici, n acest sens fiind trecute i rezolvri n QBasic !rograma de concurs la clasa a V-a" #lemente de $az ale lim$a%ului de programare &!ascal, C, Q$asic' (ipuri simple de date &ntreg, logic, c)ar' *tructurile liniar, alternativ i repetitiv +lgoritmi care prelucreaz tipuri simple de date (a$louri unidimensionale &vectori' - numai pentru faza naional !rograma de concurs la clasa a VI-a" (a$louri unidimensionale ,iruri de caractere (ipuri reale (a$louri $idimensionale +lgoritmi care folosesc tipuri simple i ta$louri

!entru uurarea parcurgerii algoritmilor, rezolvrile nu conin partea de validare a datelor de intrare

I. Instruciuni de introducere, afiare i calcul -' *e introduce v.rsta unui copil n varia$ila v * se afieze greutatea i nlimea ideal folosind urmtoarele formule de calcul" greutate/01 v23 &n 4g', nlime/51v236 &n cm' 0' * se afieze valoarea e7presiilor" e/a2$8 f/01e2-8 g/e1f2a1$ 9' *e introduce un numr * se afieze ntre predecesorul i succesorul su :' *e introduce un numr mai mic dec.t -666 +fiai du$lul, triplul i %umtatea sa 5' *e introduc trei cifre +fiai pe aceeai linie 5 numere formate cu aceste cifre luate o singur dat ;' <ate trei numere, s se calculeze toate sumele posi$ile de c.te dou numere i s se afieze termenii sumei i valoarea ei =' +fiai ta$la nmulirii cu numrul n 3' *e introduc lungimea i limea unui dreptung)i * se afieze cuv.ntul !#>I?#(>@ urmat de valoarea perimetrului acelui dreptung)i A' *e introduce un numr reprezent.nd o lungime e7primat n metri * se afieze valoarea introdus urmat de litera m, de semnul / i de valoarea acelei lungimi e7primat n centimetri urmat de cm -6'* se scrie un program care citete un numr de ani i calculeaz numrul de luni, zile i ore corespunztoare *e consider c un an are 9;5 zile --'Bntr-o cresctorie sunt a iepuri <up o lun mor b iepuri i se nasc c iepurai C.i iepuri sunt n cresctorie dup o lunC -0'Bntr-o gospodrie sunt : gini Introducei n calculator prin varia$ilele a, b, c, d numrul de ou pe care-l d fiecare gin ntr-o zi +fiai c.te ou se o$in ntr-o sptm.n -9'*e introduc n calculator dou date n varia$ilele a i b * se fac un program care s sc)im$e ntre ele valorile acestor varia$ile i s afieze noile valori ale lui a i b -:'*e consider a, b, c trei varia$ile de tip real *e cere s se intersc)im$e circular de la st.nga la dreapta valorile lor i apoi s se afieze Exemplu : a=2, b=16, c=9.8, dup interschimbare avem a=9.8, b=2, c=16. -5'*e citesc dou numere ntregi *e cere s se calculeze i s se afieze media lor aritmetic, geometric i armonic -;'*e introduc numele unui ora i numrul su de locuitori * se formeze o propoziie cu aceste date Exemplu: date de intrare: Arad, 200000 date de ie ire: !rasul Arad are 200000 de l"cuit"ri -='* se scrie un program care, pentru orice liter introdus de la tastatur, afieaz numrul ei de ordine din alfa$et -3'*e introduc dou seturi de date de forma nume prenume, nota-, nota0 * se calculeze media pentru fiecare i s se afieze su$ urmtorul format " D@?# !>#D@?# DO(+DO(+0 ?#<I+ -A'O nav parcurge distana d & n 4m ' dintre dou staii or$itale n a sptm.ni i b zile * se determine viteza navei e7primat n mEs Rspunsuri Problema 1 var v,g,i: byte; begin write( varsta copil !;rea"(v!; g:#2$v%&; i:#'$v%&(; .

CLS INPUT varsta copil , v g#2$v%& i#'$v%&( P)INT gre*tate#+;g;+ ,g+,+inalti-e#+;i;+ c-+

writeln( g#/,g,/ ,g, i#/,i,/ c-/!; en"0 Problema 2 var a,b,e,1,g: longint; CLS begin INPUT a,b#+,a,b write( a,b#/!; rea"(a,b!; e#a%b e:#a%b; 1#2$e%2 1:#2$e%2; g#e$1%a$b g:#e$1%a$b; P)INT e#+;e,+1#+;1,+g#+;g writeln( e#/,e,/ 1#/,1,/ g#/,g!; en"0 Problema 3 var 3: longint; CLS begin INPUT intro"* *n n*-ar ,3 write( intro"* *n n*-ar ! ;rea"(3! ; P)INT 342,3,3%2 writeln(342,/ ,3,/ ,3%2!; en"0 Problema 4 var n,",t: integer; 5: real; CLS begin INPUT n*-ar#+,n write( n*-ar#/!;rea"(n!; "#n$2 ":#n$2; t#n$. t:#n$.;5#n62 5:#n62; P)INT "*bl*l#+;" writeln( "*bl*l#/,"!; P)INT tripl*l#+;t writeln( tripl*l#/,t!; P)INT 5*-atatea#+;5 writeln( 5*-atatea#/,5:7:2!; en"0 Problema 5 var a,b,c: byte; CLS begin INPUT trei ci1re:+,a,b,c write( trei ci1re !;rea"(a,b,c!; P)INT a; b; c , a; c; b , b; a; c , b; c; a , c; b; a writeln( a,b,c,/ ,a,c,b,/ ,b,a,c,/ ,b,c,a,/ ,c,b,a!; en"0 Problema 6 var 3,y,8: integer; CLS begin INPUT trei n*-ere ,3,y,8 write( trei n*-ere !;rea"(3,y,8!; P)INT 3; %+; y; +#+; 3%y writeln( 3,/%/,y,/#/,3%y!; P)INT 3; %+; 8; +#+; 3%8 writeln( 3,/%/,8,/#/,3%8!; P)INT 8; %+; y; +#+; 8%y writeln( 8,/%/,y,/#/,8%y!; en"0 Problema 7 var n: byte; CLS begin INPUT n#+,n write( n#/!; rea"(n!; P)INT Tabla in-*ltirii c* ;n writeln( Tabla in-*ltirii c* ,n!; P)INT 2;+3+;n;+#+;2$n writeln(2,/3/,n,/#/,2$n!; P)INT 2;+3+;n;+#+;2$n writeln(2,/3/,n,/#/,2$n!; P)INT .;+3+;n;+#+;.$n writeln(.,/3/,n,/#/,.$n!; P)INT 9;+3+;n;+#+;9$n writeln(9,/3/,n,/#/,9$n!; P)INT ';+3+;n;+#+;'$n writeln(',/3/,n,/#/,'$n!; P)INT 7;+3+;n;+#+;7$n 9

writeln(7,/3/,n,/#/,7$n!; writeln(:,/3/,n,/#/,:$n!; writeln(&,/3/,n,/#/,&$n!; writeln(;,/3/,n,/#/,;$n!; writeln(2(,/3/,n,/#/,2($n!; en"0 Problema 8 var a,b,p : longint ; begin write( l*ngi-e si lati-e #/!;rea"(a,b!; p:#2$(a%b!; writeln( P=)I>=T)U#/,p!; en"0 Problema 9 var ?,w: integer; begin write( valoare l*ngi-e, in - !;rea"(?!; w:#?$2((; writeln(?,/ - #/,w,/ c-/! ; en"0 Problema 10 var a,l,8,o: integer; begin write( cati ani@/!; rea"(a!; l:#a$22; 8:#a$.7'; o:#8$29; writeln(l,/ l*ni ,8,/ 8ile ,o,/ ore/! en"0 Problema 11 var a,b,c,i:integer; begin write( cati iep*ri era* !; rea"(a!; write( cati iep*ri a* -*rit !; rea"(b!; write( cati iep*ri s4a* nasc*t !; rea"(c! ; i:#a4b%c; writeln( "*pa o l*na s*nt , i,/ iep*ri/!; en"0 Problema 12 var a,b,c,",o: integer; begin write( cate o*a 1ace 1iecare gaina 8ilnic !; rea" (a,b,c,"!; o:#:$(a%b%c%"!; writeln( intr4o sapta-ana se 1ac ,o , o*a/!; en"0 Problema 13 var a,b,3: integer; begin write( a,b#/!; rea"(a,b!; 3:#a; a:#b; '

P)INT P)INT P)INT P)INT

:;+3+;n;+#+;:$n &;+3+;n;+#+;&$n ;;+3+;n;+#+;;$n 2(;+3+;n;+#+;2($n

CLS INPUT l*ngi-e si lati-e "rept*ng<i#+,a,b p#2$(a%b! P)INT P=)I>=T)U#+,p

CLS INPUT valoare l*ngi-e, in -+,? w#?$2(( P)INT ?;+ - #+; w; c-+

CLS INPUT cati ani@+,a l#a$22 8#a$.7' o#8$29 P)INT l;+ l*ni ;8;+ 8ile ;o;+ ore A

CLS INPUT cati iep*ri era* ,a INPUT cati iep*ri a* -*rit ,b INPUT cati iep*ri s4a* nasc*t ,c i#a4b%c P)INT "*pa o l*na s*nt ;i; iep*ri+

CLS INPUT cate o*a 1ace 1iecare gaina 8ilnic ,a,b,c," o#:$(a%b%c%"! P)INT intr4o sapta-ana se 1ac ;o; o*a+

CLS INPUT a, b#+, a,b 3#a a#b b#3

b:#3; writeln( a#/,a,/ b#/,b!; en"0 Problema 14 var a,b,c,3: integer; begin write( a,b,c#/!; rea"(a,b,c!; 3:#c; c:#b; b:#a; a:#3; writeln( a#/,a,/ b#/,b,/ c#/,c!; en"0 Problema 15 var a,b: integer; -a,-g,-ar-: real; begin write( "o*a n*-ere !; rea"(a,b!; -a:#(a%b!62; -g:#s?rt(a$b!; -ar-:#2$a$b6(a%b!; writeln( -e"ia arit-etica#/,-a:':2!; writeln( -e"ia geo-etrica#/,-g:':2!; writeln( -e"ia ar-onica#/,-ar-:':2!; en"0 Problema 16 var a: string; b: longint; begin write( n*-e oras !; rea"ln(a!: write( n*-ar loc*itori !; rea"ln(b!: writeln( Dras*l ,a,/ are ,b,/ loc*itori/!: rea"ln; en"0 Problema 17 var litera: c<ar; b: byte; begin write( intro"* o litera !;rea"ln(litera!; b:#or"(litera!4or"( a/!%2; writeln( or"in*l literei ,litera,/ este ,b!; en"0 Problema 18 var np2,np2: string; n22,n22,n22,n22: integer; begin write( n*-e, nota2, nota2 !;rea"ln(np2!; rea"ln(n22,n22!; write( n*-e, nota2, nota2 !;rea"ln(np2!; rea"ln(n22,n22!; write( n*-e pren*-e/:22,/nota2/:7,/nota2/:7!; writeln(/-e"ia/:7!; writeln(np2:22,n22:7,n22:7, (n22%n22!62:7:2!; writeln(np2:22,n22:7,n22:7, (n22%n22!62:7:2!; en"0 7

P)INT a#+;a,+b#+;b

CLS INPUT a, b,c#+, a,b,c 3#c c#b b#a a#3 P)INT a#+;a,+b#+;b,+c#+,c

CLS INPUT "o*a n*-ere intregi ,a,b -a#(a%b!62 -g#SB)(a$b! -ar-#2$a$b6(a%b! P)INT -e"ia arit-etica#+;-a P)INT -e"ia geo-etrica#+;-g P)INT -e"ia ar-onica#+;-ar-

CLS INPUT n*-e oras ,aC INPUT n*-ar loc*itori ,b P)INT Dras*l ; aC ; are +; b;+ loc*itori+

CLS INPUT intro"* o litera ,lC b#ESC(lC!4ESC(a+!%2 P)INT or"in*l literei ;lC;+ este ;b

CLS INPUT n*-e pren0, nota2, nota2 ,aC,n22,n22 INPUT n*-e pren0, nota2, nota2 ,bC,n22,n22 CLS:LDCET= .,2: P)INT NU>= =L=F+ LDCET= .,29: P)INT NDTE2+ LDCET= .,2(: P)INT NDTE2+ LDCET= .,27: P)INT >=GIE+ LDCET= ',2: P)INT aC: LDCET= ',29 P)INT n22: LDCET= ',2(: P)INT n22 LDCET= ', 27: P)INT (N22%N22!62 LDCET= 7,2: P)INT HC: LDCET= 7,29 P)INT n22: LDCET= 7,2(: P)INT n22

LDCET= 7, 27: P)INT (N22%N22!62 Problema 19 var ",a,b,"-,8,o,s:longint; v: real; begin write( "istanta#/!; rea"("!; write( sapta-ani, 8ile#/!;rea"(a,b!; "-:#"$2(((; 8:#b%a$:; o:#8$29; s:#o$.7((; v:#"-6s; writeln( vite8a#/,v:::2,/ -6s/!; en"0 CLS INPUT "istanta#+," INPUT sapta-ani, 8ile#+, a, b "-#"$2((( 8#b%a$: o#8$29 s#o$.7(( v#"-6s P)INT vite8a #+;v;+ -6s+

Probleme n care se utilizeaz restul i ctul mpririi ntregi -' ?arc doarme c.te x ore pe noapte C.te luni doarme el pe anC 0' @n om a trit :: de ani, :: de luni, :: de sptm.ni, :: de zile i :: de ore C.i ani areC 9' ,tefan depune la $anc o sum mare de $ani !entru fiecare 566 666 de lei, $anca i d -05 666 de lei pe an C.i lei va avea la sf.ritul anuluiC :' +m nc)eiat cursa al n-lea <up sosire am aflat c un alergtor din = a fost descalificat & al =-lea, al -:-lea, etc ' ,tiind ca eu nu voi fi descalificat, pe ce poziie voi fiC 5' *e introduce un numr mai mare dec.t -66 +fiai ultima lui cifra i ultimele dou cifre ;' * se afieze ultimele dou cifre ale unui numr dat, separate de un spaiu =' *e introduce o durat de timp e7primat n secunde &zile' * se e7prime n minute i secunde &ani i zile' 3' * se calculeze suma a dou ung)iuri av.nd mrimile e7primate n grade i minute A' * se scrie un program care calculeaz suma a dou intervale de timp e7primate n ore, minute i secunde Rspunsuri Problema 1 var 3,a,8,l: longint; begin write(/ cate ore "oar-e pe noapte@/!;rea"(3!; Icalc. cate ore doarme pe anJ a:#3$.7'; Itransf. orele in zileJ8:#a "iv 29; Itransf. zilele in luniJ l:#8 "iv .(; writeln( >arc "oar-e , l, l*ni pe an ! en"0 Problema 2 var 8ile, sapt, l*ni, ani: integer; begin 8ile:#99 "iv 29%99; sapt:#8ile "iv : %99; l*ni:#sapt "iv 9 %99; ani:#l*ni "iv 22 %99; writeln( o-*l a trait , ani, ani/!; en"0 :

CLS INPUT cate ore "oar-e pe noapte @+,3 )=> calculez cate ore doarme pe an a # 3 $ .7' 8#a K 29:)=> transform orele n zile l#8 K .(:)=> transf. zilele in luni P)INT >arc "oar-e ;l;+ l*ni pe an+ CLS )=> transf. orele in zile, zilele in sapt0, sapt. in luni, lunile in ani 8ile#99 K 29%99 sapt#8ile K : %99 l*ni#sapt K 9 %99 ani#l*ni K 22 %99 P)INT o-*l a trait ; ani;+ ani+

Problema 3 var s, 3, s*-a: longint; begin write( ca s*-a "ep*ne@/!;rea"(s!; 3:#s "iv '(((((; s*-a :# s % 3 $ 22'(((; lei+writeln( "*pa *n an pri-este ;s*-a;/ lei/!; en"0 Problema 4 var n,"esc,locno*: integer; begin write( pe ce loc ai a5*ns@/!;rea"(n!; Iaflu cati au fost descalif. in fata meaJ "esc :# n "iv :; locno*:#n4"esc; writeln( no*l loc#/, no*loc!; en"0 Problema 5 var n: longint; begin write( n*-ar#/!;rea"(n!; writeln( *lti-a ci1ra#/, n -o" 2(!; writeln( *lti-ele "o*a ci1re#/, n -o" 2((!; en"0 Problema 6 var n: longint; *lti-a, pen*lti-a: byte; begin write( n*-ar#/!; rea"(n!; *lti-a:#n -o" 2(; n:#n "iv 2(;Ielimin ultima cifra a lui nJ pen*lti-a:#n -o" 2(; writeln(*lti-a,/ ,pen*lti-a! en"0 Problema 7 var s,-in,sec: integer; begin write( n*-ar sec*n"e#/!;rea"(s!; -in:#s "iv 7(; sec:#s -o" 7(; writeln(s,/#/,-in,/ -in*te ,sec,/ sec*n"e/!; en"0 Problema 8 var g2,-2,g2,-2,g,-: integer; begin write( pri-*l *ng<i (gra"e, -in*te!/!; rea"(g2,-2!; write( al "oilea *ng<i (gra"e, -in*te!/!; rea"(g2,-2!; -:#(-2%-2! -o" 7(; g# g2%g2%(-2%-2! "iv 7(; writeln( s*-a#/,g,/ gra"e ,-,/ -in*te/!; en"0 &

CLS INPUT ce s*-a "ep*ne@+, s 3 # s K '((((( s*-a # s % 3 $ 22'((( P)INT "*pa *n an pri-este ;s*-a;+

CLS INPUT pe ce loc ai a5*ns@+, n )=> aflu cati au fost desc. in fata mea "esc # n K : locno* # n 4 "esc P)INT no*l loc#+; locno*

CLS INPUT n*-ar#+, n P)INT *lti-a ci1ra#+; n -o" 2( P)INT *lti-ele "o*a ci1re#+; n -o" 2((

CLS INPUT n*-ar#+,n *lti-a#n -o" 2( n#n K 2(: )=> elimin ultima cifra a numarului pen*lti-a#n -o" 2( P)INT *lti-a;+ ;pen*lti-a

CLS INPUT n*-ar sec*n"e#+, s -in # s K 7( sec:# s -o" 7( P)INT s;+#+; -in; -in*te +; sec;+ sec*n"e+

CLS INPUT pri-*l *ng<i (gra"e, -in*te!+,g2,-2 INPUT al "oilea *ng<i (gra"e, -in*te!+,g2,-2 -#(-2%-2! -o" 7( g# g2%g2%(-2%-2! K 7( P)INT s*-a#+;g;+ gra"e ;-;+ -in*te+

Problema 9 var o2,-2,s2,o2,-2,s2,o,-,s: integer; begin write( ore, -in*te, sec*n"e !; rea"(o2,-2,s2!; write( ore, -in*te, sec*n"e /!; rea"(o2,-2,s2!; s:#(s2%s2! -o" 7(; -:# -2%-2%(s2%s2! "iv 7(; o:#o2%o2%- "iv 7(; -:#- -o" 7(; writeln( s*-a#/,o,/ ore ,-,/ -in /,s,/ sec/!; en"0 II.

CLS INPUT ore, -in*te, sec*n"e +,o2,-2,s2 INPUT ore, -in*te, sec*n"e +,o2,-2,s2 s#(s2%s2! -o" 7( -# -2%-2%(s2%s2! K 7( o#o2%o2%- K 7( -#- -o" 7( P)INT s*-a#+;o;+ ore ;-;+ -in ;s;+ sec+

Instruciunea de decizie ; algoritmi cu ramificaii omparri ntre valorile a dou variabile

-' <ate dou numere, afiai-l pe cel mai mic 0' *e introduc numele i v.rsta a doi copii +fiai numele copilului mai mare i diferena de v.rst dintre cei doi 9' <ate dou numere, afiai-le n ordine descresctoare :' * se fac un program de calcul a e7presiei e/ 91a-01$ daca aF$ :1a251$ n rest 5' *e introduc dou nume de elevi +fiai-le n ordine alfa$etic ;' *e introduc numele i nlimea a doi muni +fiai numele munilor n ordinea cresctoare a nlimii lor =' *e dau dou numere * se nmuleasc cel mai mare cu doi i cel mai mic cu trei i s se afieze rezultatele 3' *e introduc dou numere ntregi * se testeze dac primul numr este predecesorul &succesorul' celui de-al doilea i s se afieze un mesa% corespunztor A' *e citesc dou ung)iuri e7primate n grade, minute i secunde !rimul ung)i este mai mare dec.t al doilea * se determine diferena lor Exemplu: #1=2$ m1=$% s1=%& #2=$ m2=%0 s2=&0 se va a'i a #=19 m=&$ s=&& &OI, faza local, 066:' Rspunsuri Problema 1 var a,b,-ic: integer; begin write( intro"* "o*a n*-ere !; rea"(a,b!; i1 aMb t<en -ic:#a else -ic:#b; writeln( cel -ai -ic este , -ic!; en"0 Problema 2 var a,b: string; 3,y: integer; begin write( n*-e, varsta pri-*l copil #/!;rea"ln(a!; rea"ln(b!;write( n*-e, varsta al "oilea copil #/!; rea"ln(b! ;rea"ln(y! ; i1 3Oy t<en ;

CLS INPUT intro"* "o*a n*-ere ,a,b IL aMb TN=N -ic#a =LS= -ic#b P)INT cel -ai -ic este ; -ic

CLS INPUT n*-e, varsta pri-*l copil , aC,3 INPUT n*-e, varsta al "oilea copil , bC,y IL 3Oy TN=N P)INT aC;+ este -ai -are c* ; 34y;+ ani+

writeln (a,/ este -ai -are c* ,34y,/ ani/! =LS= else P)INT bC;+ este -ai -are c* ; y43;+ ani+ writeln (b,/ este -ai -are c* ,y43,/ ani/!; =NG IL en"0 Problema 3 var a,b: integer; CLS begin INPUT intro"* "o*a n*-ere ,a,b write( intro"* "o*a n*-ere !; rea"(a,b!; IL aMb TN=N P)INT b,a =LS= P)INT a,b i1 aMb t<en writeln(b,/ ,a! else writeln(a,/ ,b!; en"0 Problema 4 var a,b,e: integer; CLS begin INPUT intro"* "o*a n*-ere ,a,b write( intro"* "o*a n*-ere !; rea"(a,b!; IL aOb TN=N e#.$a42$b =LS= e#9$a%'$b i1 aOb t<en e:# .$a42$b else e:# 9$a%'$b; P)INT =#+,e writeln( =#/,e!; en"0 Problema 5 var a,b: string; CLS begin INPUT intro"* "o*a n*-e ,aC,bC write( intro"* "o*a n*-e !; IL aCMbC TN=N P)INT aC,bC =LS= P)INT bC,aC rea"ln(a!; rea"ln(b!; i1 aMb t<en writeln(a,/ ,b! else writeln(b,/ ,a!; en"0 Problema 6 var n2,n2: string; i2,i2: integer; CLS begin INPUT n*-e -*nte, inalti-e , aC,i2 write( n*-e -*nte, inalti-e !; INPUT n*-e -*nte, inalti-e , bC,i2 rea"ln(n2!; rea"ln(i2!; IL i2Mi2 TN=N P)INT aC,bC =LS= P)INT bC,aC write( n*-e -*nte, inalti-e !; rea"ln(n2!; rea"ln(i2!; i1 i2Mi2 t<en writeln(n2,/ ,n2! else writeln(n2,/ ,n2!; en"0 Problema 7 var a,b: integer; CLS begin INPUT intro"* "o*a n*-ere ,a,b write( intro"* "o*a n*-ere !; rea"(a,b!; IL aOb TN=N i1 aOb t<en writeln (a$2,/ ,b$.! P)INT a$2,b$. else writeln (b$2,/ ,a$.!; =LS= en"0 P)INT b$2,a$. =NG IL Problema 8 var a,b: integer; CLS begin INPUT intro"* "o*a n*-ere ,a,b write( intro"* "o*a n*-ere !; rea"(a,b!; IL a#b42 TN=N i1 a#b42 t<en writeln(a,/ e pre"ecesor*l l*i ,/,b! P)INT a;+ e pre"ecesor*l l*i ;b else writeln(a,/ n* e pre"ecesor*l l*i ,/,b! =LS= en"0 P)INT a;+ n* e pre"ecesor*l l*i ;b =NG IL

2(

Problema 9 var g2,-2,s2,g2,-2,s2,g,-,s: integer; begin write( gra"e, -in*te, sec*n"e/!; rea"(g2,-2,s2!; write( gra"e, -in*te, sec*n"e/!; rea"(g2,-2,s2!; i1 s2Ms2 t<en begin s2:#s2%7(; -2:#-242 en"; s:#s24s2; i1 -2M-2 t<en begin -2:#-2%7(; g2:#g242 en"; -:#-24-2; g:#g24g2; writeln( "i1erenta#/,g,/ gra"e ,-,/ -in /,s,/ sec/! en"0

CLS INPUT gra"e, -in*te, sec*n"e ,g2,-2,s2 INPUT gra"e, -in*te, sec*n"e ,g2,-2,s2 IL s2Ms2 TN=N s2#s2%7(: -2#-242 s#s24s2 IL -2M-2 TN=N -2#-2%7(: g2#g242 -#-24-2 g#g24g2 P)INT "#+;g;+ gra"e ;-;+ -in ;s;+ sec+

ompararea valorii unei variabile cu o constant -' *e introduc dou numere nenule i un semn de operaie &2,-,1,E' * se efectueze cu cele dou numere operaia introdus i s se afieze e7presia care s-a calculat urmat de semnul / i de valoarea ei 0' *e introduc trei date de forma nume pacient, valoare glicemie +fiai numele pacienilor cu glicemia mai mare dec.t -66 9' Ionel spune prinilor doar notele mai mari sau egale cu = Bntr-o zi el a luat trei note Introducei-le n calculator i afiai acele note pe care le va comunica i prinilor :' *e introduc dou numere <ac al doilea numr este diferit de 6, s se afieze c.tul dintre primul i al doilea, iar dac este nul, s se afieze mesa%ul GBmprire imposi$ilH 5' @n lift pentru copii accept o greutate de ma7im -66 4g Introduc.nd n calculator greutile a doi copii, specificai prin afiarea unui mesa% corespunztor, dac !O( ID(>+ +?BII CO!II sau ID(>+ !# >+D< ;' Ionel are voie s se uite la (V 06 de ore pe sptm.n *e introduc numrul de ore c.t se uit la (V n fiecare zi din sptm.n * se verifice dac va fi pedepsit sau nu =' * se scrie un program care determin greutatea ideal a unei persoane cunosc.nd nlimea, v.rsta i se7ul persoanei Iormulele de calcul sunt" J masculin / 56 2 6 =5 1 &inaltime - -56' 2 &varsta - 06' E :, J feminin / Jmasculin K -6, unde inaltimea este e7primata in cm si varsta in ani *e7ul se citeste su$ forma unui caracter, f sau m 3' *criei un program care s permit alegerea unei opiuni dintr-un anumit meniu afiat pe ecran" se afieaz meniul - suma 0 produs se introduc dou numere i se alege o operaie din meniu prin introducerea numrului de ordine !e ecran s apar e7presia i valoarea calculat Rspunsuri Problema 1 var a,b: real; s: c<ar; begin write( "o*a n*-ere nen*le !; rea"ln(a,b!; write( o operatie !; rea"ln(s!; case s o1 %/: writeln(a,/%/,b,/#/,a%b!; 4/: writeln(a,/4/,b,/#/,a4b!; $/: writeln(a,/$/,b,/#/,a$b!; 6/: writeln(a,/6/,b,/#/,a6b:7:2!;

CLS INPUT "o*a n*-ere nen*le ,a,b INPUT o operatie , sC IL sC#+%+ TN=N P)INT a;+%+;b;+#+;a%b IL sC#+4+ TN=N P)INT a;+4+;b;+#+;a4b IL sC#+$+ TN=N P)INT a;+$+;b;+#+;a$b IL sC#+6+ TN=N P)INT a;+6+;b;+#+;a6b

22

else write( se-n incorect/!; en" ; en"0 Problema 2 var a,b,c: string; 3,y,8: byte; CLS begin INPUT n*-e pacient, glice-ia sa ,aC,3 write( n*-e pacient, glice-ie !; rea"ln(a!; rea"ln(3!; INPUT n*-e pacient, glice-ia sa ,bC,y write( n*-e pacient, glice-ie !; rea"ln(b!; rea"ln(y!; INPUT n*-e pacient, glice-ia sa ,cC,8 write( n*-e pacient, glice-ie !; rea"ln(c!; rea"ln(8!; P)INT Pacienti c* glice-ie -are+ writeln( Pacienti c* glice-ie -are/!; IL 3O2(( TN=N P)INT aC i1 3O2(( t<en writeln(a!; IL yO2(( TN=N P)INT bC i1 yO2(( t<en writeln(b!; IL 8O2(( TN=N P)INT cC i1 8O2(( t<en writeln(c!; en"0 Problema 3 var a,b,c: byte; CLS begin INPUT ce note a l*at Ionel@+,a,b,c write( ce note a l*at Ionel@!; rea"(a,b,c!; P)INT Ionel sp*ne parintilor ; write( Ionel sp*ne parintilor notele !; IL aO#: TN=N P)INT nota ;a;+ +; i1 aO#: t<en write(a,/ /!; IL bO#: TN=N P)INT nota ;b;+ +; i1 bO#: t<en write(b,/ /!; IL cO#: TN=N P)INT nota ;c;+ +; i1 cO#: t<en write(c,/ /!; writeln; en"0 Problema 4 var a,b: integer; CLS begin INPUT "o*a n*-ere , a,b write( "o*a n*-ere !; rea"(a,b!; IL bMO( TN=N i1 bMO( t<en writeln( cat*l#/,a6b:':2! P)INT cat*l#+;a6b else writeln( i-partire i-posibila/!; =LS= en"0 P)INT i-partire i-posibila+ =NG IL Problema 5 var 3,y: byte; CLS begin INPUT intro"* gre*tatile copiilor ,3,y write( intro"* gre*tatile copiilor !; rea"(30y!; IL 3%yO2(( TN=N i1 3%yO2(( t<en writeln( INT)E P= )ENG/! P)INT INT)E P= )ENG+ else writeln( PDT INT)E E>HII CDPII/!; =LS= en"0 P)INT PDT INT)E E>HII CDPII+ =NG IL Problema 6 var a,b,c,",e,1,g : byte ; CLS begin P)INT cate ore s4a *itat 8ilnic la TF sapta-ana asta@+ write( n*-ar ore 8ilnic !; INPUT a,b,c,",e,1,g rea"(a,b,c,",e,1,g!; IL a % b % c % " % e % 1 % g O 2( TN=N i1 a%b%c%"%e%1%gO2( t<en P)INT va 1i pe"epsit+ writeln( va 1i pe"epsit/! =LS= else writeln( n* va 1i pe"epsit/!; P)INT n* va 1i pe"epsit+ en"0 =NG IL Problema 7 var i,v: byte; s: c<ar;g: real; CLS begin INPUT inalti-e, varsta, se3:+,i,v,sC 22

write( inalti-e, varsta, se3:/!; rea"ln(i,v!; rea"ln(s!; write( gre*tatea i"eala:/!; g:#'(%(0:'$(i42'(!%(v42(!69 i1 s#/-/ t<en writeln(g,/ ,g/!; i1 s#/1/ t<en writeln(g42(,/ ,g/!; en"0 Problema 8 var a,b,o: integer; begin writeln( 20 s*-a/!; writeln( 20 pro"*s/!; write( intro"* "o*a n*-ere !;rea"ln(a,b!; write( alege operatia (2 sa* 2! !; rea"(o!; i1 o#2 t<en writeln(a,/%/,b,/#/,a%b!; i1 o#2 t<en writeln(a,/$/,b,/#/,a$b!; en"0

g#'(%(0:'$(i42'(!%(v42(!69 P)INT P)=UTET= IG=ELE:+; IL sC#+1+ TN=N P)INT g42(;+ QP+ IL sC#+-+ TN=N P)INT g;+ QP+

CLS LDCET= ;,.': P)INT 20 SU>E+ LDCET= 22,.': P)INT 20 P)DGUS+ INPUT intro"* "o*a n*-ere , a,b INPUT alege operatia :2 sa* 2 ,o IL o#2 TN=N P)INT a;+%+;b;+#+;a%b IL o#2 TN=N P)INT a;+$+;b;+#+;a$b

!estarea ctului sau a restului mpririi ntregi -' *e dau trei numere * se afieze aceste numere unul su$ altul, afi.nd n dreptul fiecruia unul dintre cuvintele !+> sau I?!+> 0' *e dau dou numere nenule * se verifice dac primul se mparte e7act la al doilea 9' *e dau dou numere * se afieze acele numere care se mpart e7act la = :' G? iu$ete un pic, mult, cu pasiune, la ne$unie, de loc, un pic,LH >up.nd petalele unei margarete cu x petale, el &ea' m iu$ete L 5' Ma un concurs se dau ca premii primilor -66 de concureni, tricouri de culoare al$, roie, al$astr i neagr, n aceast secven Ionel este pe locul x Ce culoare va avea tricoul pe care-l va primiC ;' Bntr-o ta$r, $ieii sunt cazai c.te : ntr-o csu, n ordinea sosirii Ionel a sosit al n-lea Bn a c.ta csu se va aflaC =' #levii clasei a V-a se repartizeaz n clase c.te 05 n ordinea mediilor clasei a IV-a >adu este pe locul x Bn ce clas va fi repartizat &+, B, C, < sau #'C Rspunsuri: Problema 1 var a,b,c: integer; CLS begin INPUT intro"* trei n*-ere , a,b,c write( trei n*-ere:/!; rea"(a,b,c!; IL a -o" 2#( TN=N P)INT a;+par+ =LS= P)INT a;+i-par+ i1 a -o" 2#( t<en writeln(a,/ par/! IL b -o" 2#( TN=N P)INT b;+par+ =LS= P)INT b;+i-par+ else writeln(a,/ i-par/!; IL c -o" 2#( TN=N P)INT c;+par+ =LS= P)INT c;+i-par+ i1 b -o" 2#( t<en writeln(b,/ par/! else writeln(b,/ i-par/!; i1 c -o" 2#( t<en writeln(c,/ par/! else writeln(c,/ i-par/!; en"0 Problema 2 var 3,y: integer; CLS begin INPUT intro"* "o*a n*-ere ,3,y write( intro"* "o*a n*-ere !; rea"(3,y!; IL 3 -o" y#( TN=N i1 3 -o" y#( t<en P)INT 3;+ se i-parte e3act la ;y writeln(3,/ se i-parte e3act la ,y! =LS= 2.

else writeln(3,/ n* se i-parte e3act la ,y!

P)INT 3;+ n* se i-parte e3act la ;y =NG IL

en"0 Problema 3 var a,b:integer; CLS begin INPUT intro"* "o*a n*-ere ,a,b write( intro"* "o*a n*-ere R!; rea"(a,b!; P)INT NU>=)= CE)= S= I>PE)T LE :: +; write( n*-ere care se i-part la ::/!; IL a -o" :#( TN=N P)INT a;+ ; i1 a -o" : #( t<en write(a,/ !; IL b -o" :#( TN=N P)INT b;+ i1 b -o" : #( t<en write(b,/ !; writeln; en"0 Problema 4 var 3: integer; CLS begin INPUT cate petale are -argareta@+,3 write( cate petale are -argareta@/!; rea"(3!; P)INT >E IUH=ST= ; write( -a i*beste !; IL 3 -o" '#2 TN=N P)INT UN PIC+ case 3 -o" ' o1 IL 3 -o" '#2 TN=N P)INT >ULT+ 2: writeln( *n pic/!; IL 3 -o" '#. TN=N P)INT CU PESIUN=+ 2: writeln( -*lt/!; IL 3 -o" '#9 TN=N P)INT LE N=HUNI=+ .: writeln( c* pasi*ne/!; IL 3 -o" '#( TN=N P)INT G=LDC+ 9: writeln( la neb*nie/!; (: writeln( "eloc/!; en"; en"0 Problema 5 var 3: integer; CLS begin INPUT pe ce loc este Ionel@+,3 write( pe ce loc este Ionel@/!; rea"(3!; P)INT Ionel pri-este *n trico* "e c*loare ; write( Ionel pri-este *n trico* "e c*loare !; IL 3 -o" 9#2 TN=N P)INT alba+ case 3 -o" 9 o1 IL 3 -o" 9#2 TN=N P)INT rosie+ 2: writeln( alba/!; IL 3 -o" 9#. TN=N P)INT albastra+ 2: writeln( rosie/!; IL 3 -o" 9#( TN=N P)INT neagra+ .: writeln( albastra/!; (: writeln( neagra/!; en"; en"0 Problema 6 var n, cas*ta: integer; CLS begin INPUT al catelea a sosit Ionel@+,n write( al catelea a sosit Ionel@/!; rea"(n!; P)INT Ionel este ca8at in cas*ta nr0 ; write( Ionel este ca8at in cas*ta nr0 !; IL n -o" 9#( TN=N casa#nK9 =LS= casa#nK9%2 i1 n -o" 9#( t<en cas*ta:#n "iv 9 P)INT casa else cas*ta:#n "iv 9 %2; writeln(cas*ta!; en"0 Problema 7 var 3, clasa: integer; CLS begin INPUT al catelea este )a"*@+,3 write( al catelea este )a"*@/!; rea"(3!; P)INT )a"* este inscris in clasa a F4a ; write( )a"* este inscris in clasa a F4a !; IL 3 -o" 2'#( TN=N clasa#nK2' =LS= clasa#nK2'%2 i1 3 -o" 2'#( t<en clasa:#3 "iv 2' IL clasa#2 TN=N P)INT E+ 29

else clasa:#n "iv 2' %2; case clasa o1 2: writeln( E/!; 2: writeln( H/!; .: writeln( C/!; 9: writeln( G/!; ': writeln( =/!; en"; en"0

IL clasa#2 TN=N P)INT H+ IL clasa#. TN=N P)INT C+ IL clasa#9 TN=N P)INT G+ IL clasa#' TN=N P)INT =+

"peratori logici -' *e dau trei numere diferite * se afieze cel mai mare i cel mai mic 0' *e dau trei numere diferite +fisai-le n ordine cresctoare 9' *e dau trei numere diferite +fiai numrul a crei valoare este cuprins ntre valorile celorlalte dou :' *e introduc trei date de forma nume elev, puncta% +fiai numele elevului cu cel mai mare puncta% 5' *e introduc trei numere * se verifice dac formeaz o secven de numere consecutive ;' * se verifice dac trei nume de copii au fost introduse n ordine alfa$etic =' * se verifice dac o liter introdus este vocal sau consoan 3' *e introduc numele i v.rsta a 9 persoane +fiai numele persoanelor care au v.rsta cuprins ntre -3 i ;6 de ani A' <ate dou numere, afiai acele numere care se mpart e7act la = i la --6'*e dau dou numere * se verifice dac numrul mai mare se mparte e7act la cel mai mic --'Cunosc.nd data curent e7primat prin trei numere ntregi reprezent.nd anul, luna, ziua precum i data naterii unei persoane, e7primat la fel, s se fac un program care s calculeze v.rsta persoanei respective n numr de ani mplinii Rspunsuri: Problema 1 var a,b,c: integer; begin write( intro"* trei n*-ere !; rea"(a,b,c!; i1 (aMb! an" (aMc! t<en writeln( -in#/,a!; i1 (bMa! an" (bMc! t<en writeln( -in#/,b!; i1 (cMb! an" (cMa! t<en writeln( -in#/,c!; i1 (aOb! an" (aOc! t<en writeln( -a3#/,a!; i1 (bOa! an" (bOc! t<en writeln( -a3#/,b!; i1 (cOb! an" (cOa! t<en writeln( -a3#/,c!; en"0 Problema 2 var a,b,c: integer; begin write( intro"* trei n*-ere !; rea"(a,b,c!; i1 (aMb! an" (bMc! t<en writeln(a,/ ,b,/ ,c!; i1 (aMc! an" (cMb! t<en writeln(a,/ ,c,/ ,b!; i1 (bMa! an" (aMc! t<en writeln(b,/ ,a,/ ,c!; i1 (bMc! an" (cMa! t<en writeln(b,/ ,c,/ ,a!;

CLS INPUT intro"* trei n*-ere ,a,b,c IL aMb ENG aMc TN=N P)INT -in#+;a IL bMa ENG bMc TN=N P)INT -in#+;b IL cMb ENG cMa TN=N P)INT -in#+;c IL aOb ENG aOc TN=N P)INT -a3#+;a IL bOa ENG bOc TN=N P)INT -a3#+;b IL cOb ENG cOa TN=N P)INT -a3#+;c

CLS INPUT intro"* trei n*-ere ,a,b,c IL aMb ENG bMc TN=N P)INT a,b,c IL aMc ENG cMb TN=N P)INT a,c,b IL bMa ENG aMc TN=N P)INT b,a,c IL bMc ENG cMa TN=N P)INT b,c,a IL cMb ENG bMc TN=N P)INT c,b,a 2'

i1 (cMb! an" (bMa! t<en writeln(c,/ ,b,/ ,a!; IL cMa ENG aMb TN=N P)INT c,a,b i1 (cMa! an" (aMb! t<en writeln(c,/ ,a,/ ,b!; en"0 Problema 3 var a,b,c: integer; CLS begin INPUT intro"* trei n*-ere ,a,b,c write( intro"* trei n*-ere !; rea"(a,b,c!; IL(aObENGaMc!D)(aOcENGaMb!TN=N P)INT a i1 ((aOb!an"(aMc!!or((aOc!an"(aMb!! t<en IL(bOaENGbMc!D)(bOcENGbMa!TN=N P)INT b writeln(a!; IL (cObENGcMa!D)(cOaENGcMb!TN=N P)INTc i1 ((bOa!an"(bMc!!or((bOc!an"(bMa!! t<en writeln(b!; i1 ((cOb!an"(cMa!!or((cOa!an"(cMb!! t<en writeln(c!; en"0 Problema 4 var a,b,c: integer; 3,y,8: string; CLS begin INPUT n*-e, p*ncta5:+, 3C,a write( n*-e, p*ncta5:/!; rea"ln(3!;rea"ln(a!; INPUT n*-e, p*ncta5:+, yC,b write( n*-e, p*ncta5:/!; rea"ln(y!;rea"ln(b!; INPUT n*-e, p*ncta5:+, 8C,c write( n*-e, p*ncta5:/!; rea"ln(8!;rea"ln(c!; IL aO#b ENG aO#c TN=N P)INT -a3#+;3C i1 (aO#b! an" (aO#c! t<en writeln( -a3#/,3!; IL bO#a ENG bO#c TN=N P)INT -a3#+;yC i1 (bO#a! an" (bO#c! t<en writeln( -a3#/,y!; IL cO#b ENG cO#a TN=N P)INT -a3#+;8C i1 (cO#a! an" (cO#b! t<en writeln( -a3#/,8!; en"0 Problema 5 var a,b,c: integer; CLS begin INPUT intro"* trei n*-ere ,a,b,c write( intro"* trei n*-ere !; rea"(a,b,c!; IL a%2#b ENG b%2#c TN=N i1 (a%2#b!an"(b%2#c! t<en P)INT consec*tive writeln( consec*tive/! =LS= else writeln( neconsec*tive/!; P)INT neconsec*tive+ en"0 =NG IL Problema 6 var a,b,c: string; CLS begin INPUT intro"* trei n*-e ,aC,bC,cC write( intro"* trei n*-e !; rea"ln(a!;rea"ln(b!; IL aCM#bC ENG bCM#cC TN=N rea"ln(c!; i1 (aMb! an" (bMc! t<en P)INT in or"ine al1abetica+ writeln( in or"ine al1abetica/! =LS= else writeln( n* s*nt in or"ine al1abetica/! P)INT n* s*nt in or"ine al1abetica+ en"0 =NG IL Problema 7 var a:c<ar; CLS begin INPUT intro"* o litera -ica ,aC write( intro"* o litera -ica !; IL aC#+a+ D) aC#+e+ D) aC#+i+ D) aC#+o+ D) aC#+*+ TN=N rea"ln(a!; P)INT ai intro"*s o vocala+ case a o1 =LS= a/,/e/,/i/,/o/,/*/:writeln( vocala/! P)INT ai intro"*s o consoana+ else writeln( consoana/!; =NG IL en"; en"0 Problema 8 27

var a,b,c: integer; 3,y,8: string; CLS begin INPUT n*-e, varsta:+, 3C,a write( n*-e, varsta:/!; rea"ln(3!;rea"ln(a!; INPUT n*-e, varsta:+, yC,b write( n*-e, varsta:/!; rea"ln(y!;rea"ln(b!; INPUT n*-e, varsta:+, 8C,c write( n*-e, varsta:/!; rea"ln(8!;rea"ln(c!; IL aO#2& ENG aM#7( TN=N P)INT 3C i1 (aO#2&! an" (aM#7(! t<en writeln(3!; IL bO#2& ENG bM#7( TN=N P)INT yC i1 (bO#2&! an" (bM#7(! t<en writeln(y!; IL cO#2& ENG cM#7( TN=N P)INT 8C i1 (cO#2&! an" (cM#7(! t<en writeln(8!; en"0 Problema 9 var a,b: integer; CLS begin INPUT "o*a n*-ere ,a,b write( "o*a n*-ere !; rea"(a,b!; P)INT se i-part e3act la : si la 22 :+; write( se i-part e3act la : si la 22:/!; IL a -o" :#( ENG a -o" 22#( TN=N P)INT a i1 (a -o" :#(! an" (a -o" 22#(! t<en IL b -o" :#( ENG b -o" 22#( TN=N P)INT b writeln (a!; i1 (b -o" :#(! an" (b -o" 22#(! t<en writeln (b!; en"0 Problema 10 var a,b: integer; CLS begin INPUT "o*a n*-ere ,a,b write( "o*a n*-ere !; rea"(a,b!; IL aOb ENG a -o" b#( TN=N i1 (aOb! an" (a -o" b#(! t<en P)INT a;+se i-p0 e3act la ;b writeln(a;/se i-p0 e3act la ;b! =LS= else IL bOa ENG b -o" a#( TN=N i1 (bOa! an" (b -o" a#(! t<en P)INT b;+se i-p0 e3act la ;a writeln(b;/se i-p0 e3act la ;a! =LS= else P)INT n* ave- i-p0 e3acta+ writeln( n* ave- i-p0 e3acta/! =NG IL en"0 =NG IL Problema 11 var ac,an,8c,8n,lc,ln,v: integer ; CLS begin INPUT "ata c*renta (an,l*na,8i!+, ac,lc,8c write( "ata c*renta (an,l*na,8i! !; INPUT "ata nasterii (an,l*na,8i!+, an,ln,8n rea"ln(ac,lc,8c!; v#ac4an write( "ata nasterii (an,l*na,8i! !; IL lcMln D) (lc#ln ENG 8cM8n! TN=N v#v42 rea"ln(an,ln,8n!; P)INT varsta act*ala#+;v;+ ani+ v:#ac4an; i1 (lcMln! or ((lc#ln! an" (8cM8n!! t<en v:#v42; writeln( varsta act*ala#/,v,/ ani/!; en"0 I# in I# -' +ndrei primete ntr-o zi trei note, nu toate $une *e )otrte ca, dac ultima not este cel puin 3, s le spun prinilor toate notele primite iar dac este mai mic dec.t 3, s le comunice doar cea mai mare not dintre primele dou Introducei notele luate i afiai notele pe care le va comunica prinilor 0' * se afieze n ordine cresctoare trei numere introduse de la tastatur 9' *e introduc trei date de forma nume munte, nlime +fiai numele munilor n ordinea descresctoare a nlimilor lor

2:

:' *e consider trei numere ntregi <ac toate sunt pozitive, s se afieze numrul mai mare dintre al doilea i al treilea numr, n caz contrar s se calculeze media aritmetic a primelor dou numere 5' <e la tastatur se introduce un caracter * se determine ce fel de caracter este" liter mare, liter mic, cifr sau semn special *e admit litere numai din alfa$etul englez ;' * se afieze cel mai mare numr par dintre doua numere introduse n calculator =' +fiai cel mai mic numr impar dintre doua numere date Rspunsuri : Problema 1 var 3,y,8: byte; CLS begin INPUT intro"* cele trei note ,3,y,8 write( intro"* cele trei note !; IL 8O#& TN=N rea"(3,y,8! P)INT sp*ne toate notele: ; 3;+ ;y;+ ;8 i1 8O#& t<en writeln( sp*ne toate notele/! =LS= else i1 3Oy t<en writeln ( sp*ne nota ,3! IL 3Oy TN=N else writeln ( sp*ne nota ,y!; P)INT sp*ne nota ;3 en"0 =LS= P)INT sp*ne nota ;y =NG IL =NG IL Problema 2 var a,b,c: integer; CLS begin INPUT intro"* cele trei n*-ere ,a,b,c write( trei n*-ere !; rea"(a,b,c!; IL aMb ENG aMc TN=N i1 (aM#b! an" (aM#c! t<en IL bM#c TN=N P)INT a,b,c =LS= P)INT a,c,b i1 bM#c t<en writeln (a,b,c! IL bMa ENG bMc TN=N else writeln (a,c,b!; IL aM#c TN=N P)INT b,a,c =LS= P)INT b,c,a i1 (bM#a! an" (bM#c! t<en IL cMa ENG cMb TN=N i1 aM#c t<en writeln (b,a,c! IL bM#a TN=N P)INT c,b,a =LS= P)INT c,a,b else writeln (b,c,a!; i1 (cM#a! an" (cM#b! t<en i1 aM#b t<en writeln (c,a,b! else writeln(c,b,a!; en"0 Problema 4 var a,b,c,s: integer; CLS begin INPUT intro"* trei n*-ere ,a,b,c write( intro"* trei n*-ere !;rea"(a,b,c!; P)INT E1isare:+; write( E1isare:/!; IL aO#( ENG bO#( ENG cO#( TN=N i1 (aO#(! an" (bO#(! an" (cO#(! IL bOc TN=N P)INT b =LS= P)INT c t<en i1 bOc t<en writeln (b! else writeln(c! =LS= else writeln ((a%b!62:::9!; P)INT (a%b!62 en"0 =NG IL Problema 5 var 3:c<sr; CLS begin INPUT intro"* *n caracter:+, 3 write( intro"* *n caracter:/!; rea"ln(3!; P)INT Ei intro"*s +; write( Ei intro"*s !; IL ESC(3!O79 ENG ESC(3!M;: TN=N i1 (or"(3!O79! an" (or"(3!M;:! P)INT o litera -are+ t<en writeln( o litera -are/! =LS= else i1 (or"(3!O;7! an" (or"(3!M222! IL ESC(3!M': ENG ESC(3!O9& TN=N t<en writeln( o litera -ica/! P)INT o ci1ra+ 2&

else i1 (or"(3!M':! an" (or"(3!O9&! t<en writeln( o ci1ra/! special+

=LS= P)INT *n caracter

else writeln( *n caracter special/!; =NG IL rea"ln; =NG IL en"0 Problema 6 var a,b: integer; begin write( "o*a n*-ere !; rea"(a,b!; i1 aO#b t<en begin i1 a -o" 2#( t<en writeln(a! else i1 b -o" 2#( t<en writeln(b! en" else i1 b -o" 2#( t<en writeln(b! else i1 a -o" 2#( t<en writeln(a!; en"0 III. Instruciuni de ciclare , algoritmi ciclici $tilizarea instruciunilor de ciclare pentru generare de numere -' 0' 9' :' * se afieze toate numerele de forma a%&a care se mpart e7act la ; @n lift co$oar de la eta%ul a la eta%ul b +fiai toate eta%ele pe care le parcurge * se afieze ta$la nmulirii cu n * se afieze perec)ile de numere a i b care satisfac relaiile a2b/-6668 -= divide pe a i -A divide pe b 5' !ro$lema maimuei" !e o insul se afl trei marinari i o maimu ?arinarii s-au )otr.t s mpart frete o grmad de nuci de cocos !este noapte unul dintre marinari s-a sculat i a mprit grmada n trei pri egale Bn urma mpririi, a rmas o nuc pe care a dat-o maimuei i a ascuns una din cele trei grmezi !.n dimineaa, povestea s-a repetat i cu ceilali doi marinari <imineaa marinarii mpart grmada n trei pri egale i din nou rm.ne o nuc *e cere s se afle c.te nuci de cocos au fost la nceput i c.te nuci i-a nsuit fiecare marinar * se gseasc toate valorile mai mici de -666 care satisfac condiiile ;' * se genereze primii n termeni ai irului -,-,0,0,0,9,9,9,9,:,:,:,:,:,L =' * se afieze primii n termeni ai irului lui Ii$onacci " 6,-,-,0,9,5,3,-9,0-L 3' *e d un numr * se scrie, dac se poate, ca sum de dou numere impare A' *e d un numr * se scrie, dac este posi$il, ca sum de dou numere consecutive -6'<.ndu-se un numr natural n, s se gseasc toate posi$ilitile de scriere a acestui numr ca sum de numere consecutive --'* se afieze toi divizorii unui numr natural dat -0'*e introduce un numr * se verifice dac este numr prim -9'* se afieze primele n numere prime Rspunsuri : Problema 1 var a,n :integer ;

CLS : P)INT n*-ere care se "ivi" c* 7:+ 2;

begin LD) a#2 TD ; writeln( n*-ere care se "ivi" c* 7:/!; n#a$2(((%2((%.(%a 1or a:#2 to ; "o IL n >DG 7#( TN=N P)INT n;+ ; begin N=ST a n:#a$2((%2((%.(%a; i1 n -o" 7#( t<en writeln(n!; en"; en"0 Problema 2 var a,b,e :integer ; CLS begin INPUT eta5 "e plecare:+,a write( eta5 "e plecare:/!;rea"(a!; INPUT eta5 "e sosire:+,b write( eta5 "e sosire:/!;rea"(b!; P)INT li1t*l parc*rge eta5ele writeln( li1t*l parc*rge eta5ele/! LD) i#a TD b ST=P 42 1or i:#a "ownto b "o writeln (i!; P)INT i en"0 N=ST i Problema 3 var 1,n :integer ; CLS begin INPUT n#+,n write( n#/!; rea"(n!; LD) 1#2 TD 2( 1or 1:#2 to 2( "o writeln(1,/3/,n,/#/,1$n!; P)INT 1;+3+;n;+#+;1$n en"0 N=ST 1 Problema 4 var a,b,n :integer ; CLS begin LD) a#2: TD ;&. 1or a :#2: to ;&. "o b#2(((4a begin IL a -o" 2:#( ENG b -o" 2;#( TN=N P)INT a,b b :#2(((4a ; N=ST a i1 (a -o" 2:#(! an" (b -o" 2;#(! t<en writeln(a,/ ,b! ; en" ; en"0 Problema 5 program problema_maimutei ; var 3,y,8,t,a,b,c,",-2,-2,-. :integer ; Ix,y,z = cate nuci a gasit noaptea fiecare marinar (x= nr. initial de nuci), t=nr.nuci gasite dimineata a,b,c,d = nr. nuci dintr-o gramada m1,m2,m3 = nr. nuci obtinute de fiecare marinarJ Ipentru ca x, ca si y,z,t, trebuie sa dea rest 1 la impartirea cu 3, om folosi bucla !"ile si om da lui x alori care sa erifice aceasta cerinta J begin 3 :#27 ; w<ile 3M#2((( "o begin a :#3 "iv . ; -2 :#a ; y :#2$a ; i1 y -o" .#2 t<en begin b :#y "iv . ; -2 :#b ; 8 :#2$b ; i1 8 -o" .#2 t<en 2(

begin c :#8 "iv . ; -. :#c ; t :# 2$c ; i1 t -o" .#2 t<en begin " :#t "iv . ; -2 :#-2%" ; -2 :#-2%" ; -. :#-.%" ; write( initial a* 1ost ,3,/ n*ci/! ; writeln( -ar0 a* pri-it ,-2,/, -2,/,/,-.,/ n*ci/! ; en" ; en" ; en" ; 3 :#3%. ; en" ; en"0 Problema 6 var t,v,i,n : integer ; It=nr. termeni afisati, = aloarea termenilor, i=numar de alori egale # begin I se obser a ca i= $1! write( n#/! ; rea"(n! ; t :#2 ; v :#2 ; i :#2 ; w<ile tM#n "o begin write(v,/ ! ; t :#t%2 ; i :#i%2 ; i1 iOv%2 t<en begin v :#v%2 ; i :#2 en" ; en" ; en"0 Problema 7 var a,b,t,v,n : integer ; begin write( n#/! ; rea"(n! ; a :#( ; b :#2 ; write (a,/ ,b,/ ! ; t :#. repeat v :#a%b ; write(v,/ ! ; t :#t%2 ; a :#b ; b :#v ; *ntil tOn ; en"0 Problema 8 var n,t2,t2 : integer ; begin write( n*-ar#/! ; rea"(n! ; i1 n -o" 2#2 t<en begin writeln( proble-a n* are sol*tie/! ; <alt en" ; Iproblema are solutie numaiJ t2 :#2 ; Ipt. numere pareJ repeat t2 :# n 4 t2 ; 22

i1 t2 -o" 2#2 t<en writeln(n,/#/,t2,/%/,t2! ; t2 :#t2%2 ; *ntil t2On "iv 2 ; en"0 Problema 9 var n,t,w : integer ; begin write( n*-ar#/! ; rea"(n! ; i1 n -o" 2#( t<en begin writeln( proble-a n* are sol*tie/! ; <alt en" ; Iproblema are solutie numai pt. numere impareJ Iproblema se poate rezol a printr-un singur calcul matematic pornind de la expresia n=t$(t$1), altfel se cauta primul termen cu o bucla forJ 1or t :#2 to n "iv 2 "o begin w :#n4t ; i1 w#t%2 t<en writeln(n,/#/,t,/%/,w! ; en" ; en"0 Problema 10 var n,t,w,s,i : integer ; begin write( n*-ar#/! ; rea"(n! ; 1or t :#2 to n "iv 2 "o begin s :#t ; Iprimul termen al sumeiJ w :#t%2 ; Ial doilea termen al sumei# repeat % ! a lua alorile celorlalti termeni ai sumeiJ s :#s%w ; w :#w%2 ; *ntil sO#n ; i1 s#n t<en begin 1or i :#t to w42 "o write(i,/%/! ; writeln(w42,/#/,n! en" ; en" ; en"0 Problema 11 var n," : integer ; begin write( n*-ar#/! ; rea"(n! ; writeln( "ivi8orii l*i ,n,/ s*nt :/! ; 1or " :#2 to n "o i1 n -o" "#( t<en write(",/ ! ; en"0 Problema 12 var n,i: integer ; pri-: boolean ; begin write( n*-ar#/! ; rea"(n! ; pri- :#tr*e ; i1 (n#2! or (n#(! t<en pri- :#1alse else 1or i :#2 to n "iv 2 "o 22

i1 n -o" i#( t<en pri- :#1alse ; i1 pri- t<en writeln( n*-ar pri-/! else writeln( n*-ar*l n* este pri-/! ; en"0 sau, fara ariabile booleene, folosind proprietatea numerelor prime de a a ea doar doi di izori var n,i,c : integer ; begin write( n*-ar#/! ; rea"(n! ; c :#( ; 1or i :#2 to n "o i1 n -o" i#( t<en c :#c%2 ; i1 c#2 t<en writeln( n*-ar pri-/! else writeln( n*-ar*l n* este pri-/! en"0 Problema 13 var n,i,5,nr : integer ; pri- :boolean ; begin write( cate n*-ere pri-e @/! ; rea"(nr! ; n :#2 ; 5 :#( ; I& memoreaza cate numere prime s-au gasitJ repeat pri- :#tr*e ; 1or i :#2 to n "iv 2 "o i1 n -o" i#( t<en pri- :#1alse ; i1 pri- t<en begin witeln(n,/ ! ; 5 :#5%2 en" ; n :#n%2 ; *ntil 5#nr ; en"0 'tabilirea limitelor buclei for n urma unor teste -' @n lift parcurge distana dintre dou eta%e a i b * se afieze toate eta%ele parcurse, n ordinea atingerii lor 0' *e dau numerele a, b i c * se scrie un program care s afieze n ordine cresctoare toate numerele care se divid cu a sau b i sunt mai mici dec.t c (ndica)ie" *e stabile te cu re#ula cel"r trei pahare ca +n b s 'ie numrul mai mare i +n a cel mai mic i bucla se ia de la b la c. 9' * se calculeze suma numerelor cuprinse ntre dou numere date Rspunsuri : Problema 1 var a,b,e: integer; begin write( intro"* valoarea eta5elor !;rea"(a,b!; write( li1t*l parc*rge eta5ele !; i1 aMb t<en 1or e:#a to b "o writeln(e! else 1or e:#a "ownto b "o write(e!; en"0 Problema 2 var a,b,c,n,3: integer; begin write( intro"* a, b si c !;rea"(a,b,c!; ;c write( nr0 care se i-part la ,a,/ sa* ,b!;

CLS INPUT intro"* valoarea eta5elor ,a,b P)INT li1t*l parc*rge eta5ele ; IL aMb TN=N LD) e#a TD b : P)INT e :N=ST e =LS= LD) e#a TD b ST=P 42: P)INT e :N=ST e =NG IL

CLS INPUT intro"* a, b si c ,a, b, c P)INT nr0 care se i-part la ;a;sa* ;b;+ -ai -ici ca IL aOb TN=N 3#a: a#b : b#3 2.

write( -ai -ici "ecat ,c!; LD) n # b TD c i1 aOb t<en begin 3:#a; a:#b; b:#3; en"; IL n >DG a#( D) n >DG b#( TN=N P)INT n 1or n:#b to c "o N=ST n i1 (n -o" a#(! or (n -o" b#(! t<en writeln(n!; en"0 Problema 3 var n,s,a,b,3: integer; CLS begin INPUT intro"* "o*a n*-ere ,a,b write( intro"* "o*a n*-ere !; rea"(a,b!; IL aOb TN=N 3#a: a#b : b#3 i1 aOb t<en begin 3:#a; a:#b; b:#3; en"; s#( s:#(; LD) n # a TD b 1or n:#a to b "o s:#s%n; s#s%n writeln( s*-a#/,s!; N=ST n en"0 P)INT s*-a#+;s (ai multe bucle for incluse una n alta )imbricate* -' * se determine toate tripletele de numere a, b, c cu proprietile" -NaNbNcN-668 a2b2c se divide cu -6 0' * se afieze toate numerele de dou cifre care adunate cu rsturnatul lor dau 55 9' *e cere listarea numerelor cuprinse ntre -66 i 5AA, av.nd cifrele n ordine cresctoare i suma cifrelor egal cu -3 :' * se nlocuiasc literele cu cifre n scderea urmtoare" a b c b e+ edab +++++++++++ ebce Rspunsuri: Problema 1 var a,b,c: integer; begin 1or a:#2 to ;: "o 1or b:#a%2 to ;& "o 1or c:#b%2 to ;; "o i1 a%b%c -o" 2(#( t<en writeln(a,/ ,b,/ ,c!; en"0 Problema 2 var a,b,n,nr: integer; begin 1or a:#2 to ; "o 1or b:#2 to ; "o begin n#a$2(%b nr#b$2(%a i1 n%nr#'' t<en writeln(n!; en"; en"0 Problema 3

CLS LD) a#2 TD ;: LD) b#a%2 TD ;& LD) c#b%2 TD ;; IL a%b%c >DG 2(#( TN=N P)INT a,b,c N=ST c N=ST b N=ST a CLS LD) a#2 TD ; LD) b#2 TD ; n#a$2(%b nr#b$2(%a IL n%nr#'' TN=N P)INT n N=ST b N=ST a

29

var s,8,*: integer; begin writeln( )e8*ltate:/!; 1or s:#2 to ' "o 1or 8:#s%2 to & "o 1or *:#8%2 to ; "o i1 s%8%*#2& t<en writeln(s,8,*!; en"0 Problema 4 var a,b,c,",e: integer; begin a:#2; 1or b:#( to ; "o 1or c:# ( to ; "o 1or ":#( to ; "o 1or e:#( to ; "o i1 a$2((((%b$2(((%c$2((%b$2(%e4(e$2((( %"$2((%a$2(%b!#e$2(((%b$2((%c$2(%e t<en begin writeln(a,b,c,b,e!; writeln( ,e,",a,b!; writeln( 444444 !; writeln( ,e,b,c,e!; en"; en"0

CLS P)INT )e8*ltate:+ LD) s # 2 TD ' LD) 8 # s%2 TD & LD) * # 8%2 TD ; IL s%8%*#2& TN=N P)INT s;8;* N=ST * N=ST 8 N=ST s CLS a#2 LD) b#( TD ; LD) c#( TD ; LD) "#( TD ; LD) e#( TD ; IL a$2((((%b$2(((%c$2((%b$2(%e4(e$2((( %"$2((%a$2(%b!#e$2(((%b$2((%c$2(%e TN=N P)INT a;b;c;b;e P)INT ;e;";a;b P)INT 444444 P)INT ;e;b;c;e =NG IL N=ST e N=ST " N=ST c N=ST b

alcule de sume i produse -' * se calculeze =2-:20-2032L2A3, 91;1A1-01L199 0' * se calculeze sumele s-/-20292L2n s0/-102019291:2L2&n--'1n s9/-2-102-10192L2-10191L1n s:/-02002902L2n0 s5/-E020E929E:2L2nE&n2-' s;/0-92:-52L-AA2-66 s=/-2020020920:2L20n 9' *e introduc succesiv numere nenule p.n la introducerea numrului 6 * se afieze suma tuturor numerelor introduse Rspunsuri: Problema 1 var t: byte; s,p: longint; begin s:#(; 1or t:#2 to 29 "o s:#s%t$:; p:#2; 1or t:#2 to 22 "o p:#p$(t$.!; writeln( s*-a#/,s!; writeln( pro"*s#/,p!; en"0

CLS s#( LD) t#: TD ;& ST=P : s#s % t N=ST t p#2 LD) t#. TD .. ST=P . p#p$t N=ST t 2'

P)INT s*-a#+;s,+pro"*s#+;p Problema 2 var t,n: integer;s2,s:: longint; begin s2:#(; s::#(; write( n#/!; rea"(n!; 1or t:#2 to n42 "o s2:#s2%t$(t%2!; writeln (s2#+,s2!; p:#2; 1or t:# ( to n "o begin s::#s:%p; p:#p$2; en"; writeln (s:#+,s:!; Problema 3 var n: integer; s:longint; begin s:#(; repeat write( n*-ar#/!; rea"(n!; i1 nMO( t<en s:#s%n; *ntil n#(; writeln( s*-a n*-erelor intro"*se # ,s! en"0 CLS s2#(: s:#( INPUT n#+,n LD) t # 2 TD n42 s2 # s2 % t$(t%2! N=ST t p#2 LD) t#( TD n s:#s: % p p#p$2 N=ST t P)INT s2#+;s2,+s:#+;s:

$tilizarea instruciunilor de ciclare pentru repetarea unor aciuni -' *e dau numerele a i n * se afieze numrul a urmat de n zerouri 0' *e dau un numr n i un numr prim , * se specifice la ce putere apare , n descompunerea n factori primi a numrului n 9' *e d un numr natural n, nN/-66 i o cifr , din mulimea O0,9,5,=P *e cere s se afieze e7ponentul lui , n descompunerea n factori primi a produsului -10191L1 n &ODI 0669 clasa a V-a' :' * se afieze descompunerea unui numr dat n factori primi 5' @n copac crete zilnic cu 6 =5 cm Ma plantare avea - m * se afieze dup c.te zile a%unge la nlimea de -0 m Ma ce nlime a%unge dup o lun &96 zile'C ;' !entru a o eli$era pe Ileana Cos.nzeana, It-Irumos tre$uie s parcurg x 4m #l merge zilnic a 4m, dar Q.na-cea->ea l duce n fiecare noapte cu b 4m napoi, bNa <up c.te zile o eli$ereazC =' + fost odat un $alaur cu ; capete Bntr-o zi It Irumos s-a suprat i i-a tiat un cap !este noapte i-au crescut alte ; capete la loc + doua zi It Irumos iar i-a tiat un cap dar peste noapte $alaurului i-au crescut alte ; capete L i tot aa timp de n zile Bn cea de a &n2-'-a zi, It Irumos s-a plictisit i a plecat acasR *criei un program care citete de la tastatur n, numrul de zile, i care afieaz pe ecran c.te capete avea $alaurul dup n zile. Exemplu: pentru n=$ se va a'i a 1& capete &ODI 0660 cl a V-a' 3' + fost odat ca niciodat, a fost un cangur care cretea ca It Irumos din poveste, ntr-un an precum alii n zece Bntr-o zi a nceput s fac srituri ,i a srit pentru nceput = metri + doua zi a srit, n plus fa de ziua precedent, de zece ori mai mult Bn a treia zi a reuit s sar, n plus fa de prima zi, de zece ori mai mult dec.t n ziua a doua Bn a patra zi a srit, n plus fa de prima zi, de zece ori mai mult dec.t n ziua a treia ,i tot aa mai departe *criei un program care calculeaz c.i metri a 27

srit cangurul, n total, n n zile Exemplu: pentru n=$ se va a'i a 861 m Iocani 0669 cl a V-a'

&ODI

Rspunsuri: Problema 1 var a,n,,: integer; CLS begin INPUT intro"* n*-erele a si n:+, a ,n write( intro"* n*-erele a si n:/!; rea"(a,n!; P)INT a; write(a!; LD) , # 2 to n 1or ,:#2 to n "o write((!; P)INT (; en"0 N=ST , Problema 2 var n,,,c: integer; begin write( intro"* n*-erele n si ,:/!; rea"(n,,!; c:#(; i1 n -o" ,#( t<en begin w<ile (n -o" ,#(! an" (nMO(! "o begin n:#n "iv ,; c:#c%2 en"; en"; writeln(,,/ apare la p*terea ,c,/ in "esco-p*nerea in 1actori pri-i a l*i ,n!; en"0 Problema 3 var n,,,c,a,i,e3p: integer; begin write( intro"* n*-erele n si ,:/!; rea"(n,,!; e3p:#(; Iexponentul lui ' a fi suma exponentilor lui ' in desc. in factori primi a nr. pana la nJ 1or i:#2 to n "o begin c:#(; i1 i -o" ,#( t<en begin a:#i; Inu se poate modifica aloarea lui i in bucla forJ w<ile (a -o" ,#(! an" (aMO(! "o begin a:#a "iv ,; c:#c%2 en"; e3p:#e3p%c; en"; en"; writeln( e3ponent*l l*i ,,,/ este ,e3p!; en"0 Problema 4 var n,1actor,e3pon: integer; begin write( n#/!; rea"(n!; 1actor:#2; repeat e3pon:#(; 2:

w<ile n -o" 1actor#( "o begin e3pon:#e3pon%2; n:#n "iv 1actor; en"; i1 e3ponMO( t<en writeln(1actor,/T/,e3pon!; 1actor:#1actor%2; *ntil n#2; en"0 Problema 5 var 8i: integer; inalt: real; begin inalt:#2; 8i:#(; repeat inalt:#inalt%(0:'; 8i:#8i%2; *ntil inaltO#22; writeln( G*pa ,8i,/ 8ile copac*l a5*nge la inalti-ea "e ,inalt:':2,/ -/!; inalt :#2; 1or 8i:#2 to .( "o inalt:#inalt%(0:'; writeln( G*pa o l*na copac*l a5*nge la inalti-ea "e ,inalt,/ -/!; en"0 Problema 6 var a,b,3,"ist,8i: integer; begin write( intro"* valorile pentr* 3, a si b !; rea"(3,a,b!; "ist:#(; 8i:#(; repeat s:#s%a; 8i:#8i%2; i1 sM3 t<en s:#s4b; *ntil sO#3; writeln( Lat Lr*-os a5*nge la Ileana "*pa ,8i,/ 8ile/!; en"0 Problema 7 var n, 8i, nrcap: integer; begin write( n*-ar 8ile#/!; rea"(n!; nrcap:#7; 1or 8i:#2 to n "o begin nrcap:#nrcap42; i1 8iMn t<en nrcap:#nrcap%7; en"; writeln( "*pa ,n,/ 8ile bala*r*l avea ,nrcap,/ capete/!; en"0 Problema 8 var n,sar,"ist,8i: integer; begin write( n*-ar 8ile !; rea"(n!; sar:#:; "ist:#:; 1or 8i:#2 to n "o 2&

begin sar:#sar$2(%:; "ist:#"ist%s; en"; writeln( "*pa ,n,/ 8ile cang*r*l sare ,"ist,/ -/!; en"0 -lgoritmi de nsumare, contorizare, determinare a min i max -' *e citesc pe r.nd : numere ntregi * se numere c.te dintre ele au restul = la mprirea cu -9 * se afieze acest numr i produsul celorlalte numere 0' *e citesc pe r.nd temperaturile medii ale fiecrei luni a unui an, ca numere ntregi * se afieze media anual a temperaturilor pozitive i a celor negative 9' *e citesc numere naturale strict pozitive p.n la nt.lnirea numrului 6 * se numere c.te dintre ele sunt pare, presupun.nd c cel puin primul element este nenul :' *e introduc datele de natere a n copii, su$ forma an, numr lun, zi * se afieze c.i copii sunt nscui pe - iunie i c.i copii sunt nscui n -AA:, -AA5 i -AA; 5' *e citesc de la tastatur numere ntregi pozitive at.ta timp c.t suma lor nu depete -666 * se scrie un program care calculeaz media aritmetic a acestor numere ;' *e citesc mediile a n elevi * se afieze cea mai mare i cea mai mic medie * se verifice dac sunt corigeni =' Ionic are n creioane colorate" roii, gal$ene, al$astre, verzi #l codific culorile astfel" -/rou, 0/gal$en, 9/al$astru, :/verde i introduce n calculator valoarea culorii pentru fiecare creion >ealizai un program care s afieze de c.te ori apare fiecare culoare i care este culoarea pentru care are cele mai multe creioane Exemplu: n=10 1 2 $ 2 % 1 2 $ $ 2 se va a'i a ,umr crei"ane r" ii 2 ,umr crei"ane #albene % ,umr crei"ane albastre $ ,umr crei"ane ver-i 1 .ele mai multe crei"ane: #albene Rspunsuri: Problema 1 var a,c,p: integer; begin c:#(;p:#2; 1or i:#2 to 9 "o begin write( n*-ar#/!;rea"(a!; i1 a -o" 2.#: t<en c:#c%2 else p:#p$a; en"; writeln(c,/ nr0 care "a* rest : la i-p0 c* 2./!; writeln( pro"*s*l celorlalte#/,p!; en"0 Problema 2 var sp,sn,cp,cn,a,i: integer; begin sp:#(;sn:#(;cp:#(;cn:#(; 1or i:#2 to 22 "o begin write( te-p0 l*na /,i,/:/!; rea"(a!; i1 aO#( t<en begin sp:#sp%a; cp:#cp%2 en" 2;

CLS c#(:p#2 LD) i:#2 TD 9 INPUT n*-ar#+, a IL a >DG 2.#: TN=N c#c%2 =LS= p#p$a N=ST i P)INT c;+ nr0 care "a* rest : la i-p0 c* 2./ P)INT pro"*s*l celorlalte#+;p

else begin sn:#sn%a; cn:#cn%2 en"; writeln( -e"ia an*ala a te-p0 po8itive#/,sp6cp:7:2!; i1 cnMO( t<en writeln( -e"ia an*ala a te-p0 negative#/,sn6cn:7:2! else writeln( n* s4a* inreg0te-p0-e"ii l*nare negative/!; en"0 Problema 3 var c,a: integer; begin c:#(; repeat write( n*-ar#/!; rea"(a!; i1 (a -o" 2#(! an" (aMO(! t<en c:#c%2; *ntil a#(; writeln( ai intro"*s ,c,/ n*-ere pare/!; en"0 Problema 4 var a,l,8,n,c2,c,i: integer; CLS begin INPUT cati copii@+,n c2:#(; c:#(; c2#(: c#( write( cati copii@/!; rea"(n!; LD) i#2 TD n 1or i:#2 to n "o begin INPUT an,l*na,8i:+,a,l,8 write( an,l*na,8i:/!; rea"(a,l,8!; IL 8#2 ENG l#7 TN=N c2#c2%2 i1 (8#2! an" (l#7! t<en c2:#c2%2; IL a#2;;9D) a#2;;'D) a#2;;7 TN=N c#c%2 i1 (a#2;;9!or(a#2;;'!or(a#2;;7! t<en c:#c%2; N=ST i en"; P)INT c2;+ copii nasc*ti la 2 i*nie+ writeln(c2,/ copii nasc*ti la 2 i*nie/!; P)INT c;+ copii nasc*ti in 2;;9,2;;',2;;7+ writeln(c,/ copii nasc*ti in 2;;9,2;;',2;;7/!; en"0 Problema 5 var s,n,i,r:integer; -:real; begin writeln( intro"* n*-ere :/!; s:#(; i:#(; w<ile sM#2((( "o begin rea"(n!; s:#s%n; i:#i%2; en"; -:#s6i; writeln( -e"ia n*-erelor este#/,-:::.!; en"0 Problema 6 var n,i,c: integer; -a3,-in,-: real; CLS begin -in#2(: -a3#(:c#( -in:#2(; -a3:#(; c:#(; INPUT cate -e"ii@+,n write( cate -e"ii@/!; rea"(n!; LD) i#2 TD n 1or i:#2 to n "o begin INPUT -e"ia#+,write( -e"ia#/!; rea"(-!; IL -inO- TN=N -in#i1 -inO- t<en -in:#-; IL -a3M- TN=N -a3#i1 -a3M- t<en -a3:#-; IL -M' TN=N c:#c%2 i1 -M' t<en c:#c%2; N=ST i en"; P)INT cea -ai -are -e"ie#+;-a3 .(

writeln( cea -ai -are -e"ie#/,-a3:':2!; writeln( cea -ai -ica -e"ie#/,-in:':2!; i1 c#( t<en writeln( n* s*nt corigenti/! else writeln( s*nt ,c,/ corigenti/!; en"0

P)INT cea -ai -ica -e"ie#+;-in IL c#( TN=N P)INT n* s*nt corigenti+ =LS= P)INT s*nt ;c;+ corigenti+ =NG IL

Problema 7 var n,i,cr,cg,ca,cv,co": integer; begin write( cate creioane@/!;rea"(n!; cr:#(; ca:#(; cg:#(; cv:#(; writeln( intro"* valorile c*lorilor:/!; 1or i:#2 to n "o begin write( co" c*loare:/!; rea"(co"!; i1 co"#2 t<en cr:#cr%2; i1 co"#2 t<en cg:#cg%2; i1 co"#.2 t<en ca:#ca%2; i1 co"#9 t<en cv:#cv%2; en"; writeln( N*-ar creioane rosii ,cr!; writeln( N*-ar creioane galbene ,cg!; writeln( N*-ar creioane albastre ,ca!; writeln( N*-ar creioane ver8i ,cv!; write( cele -ai -*lte creioane a* c*loarea !; i1 (crO#cg! an" (crO#ca! an" (crO#cv! t<en writeln( rosie/!; i1 (cgO#cr! an" (cgO#ca! an" (cgO#cv! t<en writeln( galbena/!; i1 (caO#cg! an" (caO#cr! an" (caO#cv! t<en writeln( albastra/!; i1 (cvO#cr! an" (cvO#cg! an" (cvO#ca! t<en writeln( ver"e/!; en"0 -lgoritmul de mprire n cifre a unui numr -' *e introduce un numr natural cu ma7im A cifre * se determine i s se afieze numrul de cifre, cea mai mare cifr i suma tuturor cifrelor acestui numr 0' C.te cifre pare sunt ntr-un numr datC 9' *erviciul de paz al unei firme are nevoie de un program care s verifice corectitudinea codului de pe cartelele de identificare ale anga%ailor Codul este un numr ntreg de ma7im A cifre care conine cel puin o cifr par i una impar i pentru care suma tuturor cifrelor impare i produsul tuturor cifrelor pare tre$uie o$ligatoriu s produc acelai rest la mprirea cu prima cifr a codului &n ordinea de la st.nga la dreapta' *criei un program care s citeasc de la tastatur un cod i s afieze pe ecran mesa%ul CO>#C( sau IDCO>#C(, n funcie de situaie Exemplu: pentru n=2&$2/1 pr"#ramul va a'i a mesa0ul .!1E.2 3pr"dusul ci'rel"r pare este %, suma ci'rel"r impare este 16, deci restul +mpr)irii lui %, respectiv 16 la 2, prima ci'r a numrului, este 04. :' Bn c.te zerouri se termin un numr de ma7im A cifre, introdus de la tastaturC 5' *e introduce un numr * se verifice dac este palindrom ;' * se afieze toate numerele palindroame mai mici dec.t un numr dat, n =' Iie dat n, numr natural, s se determine cel mai mic numr m astfel nc.t produsul n.m s se scrie numai cu cifre de 6 i 3' *e introduce un numr natural n cu ma7im 3 cifre, nenule i distincte, mai mici ca A * se afieze cifrele numrului n ordine descresctoare .2

(ndica)ie: 'iecare ci'r c se +nmul)e te cu 10 c, se adun aceste numere i se a'i ea- 'r -er"uri. Exemplu: pentru n=$&%, s5ar 'ace urmt"arele calcule: %610%7&610&7$610$=&%$00 i se va a'i a &%$ . A' <at un numr ntreg de ma7im A cifre, s se afieze numrul de apariii al fiecrei cifre -6' +fiai c.te cifre distincte conine un numr nenul --' *e dau dou numere naturale a,b cu ma7im A cifre a' * se determine cifrele distincte comune numerelor a i b $' * se afieze numrul cel mai mare format din toate cifrele lui a i $ Exemplu : pentru a=211& b=2902& a4 2 & b4 9&&222110 &OSI, clasa a V-a, fe$ruarie 066:' -0' *e introduc dou numere, a i b, aNbN5666666 * se afieze ultima cifr a sumei tuturor numerelor aflate ntre a i b Exemple: a=12 b=1% se va a'i a 9 a=1000000 b=$000000 se va a'i a 0. Rspunsuri: Problema 1 var n,s,c,-a3,ci1ra : longint ; begin write( intro"* *n n*-ar ! ; rea"(n! ; c :#( ; -a3 :#( ; s :#( ; repeat ci1ra :#n -o" 2( ; s:#s%ci1ra ; c :#c%2 ; i1 -a3Mci1ra t<en -a3 :#ci1ra ; n :#n "iv 2( ; *ntil n#( ; writeln( n*-ar*l are ,c,/ ci1re/! ;writeln( s*-a ci1relor#/,s! ; writeln( cea -ai -are ci1ra este ,-a3! ; en"0 Problema 2 var n: longint ;ci1ra,c : byte ; begin write( intro"* *n n*-ar ! ; rea"(n! ; c :#( ; repeat ci1ra :#n -o" 2( ; i1 ci1ra -o" 2#( t<en c :#c%2 ; n :#n "iv 2( ; *ntil n#( ; writeln( n*-ar*l are ,c,/ ci1re pare/! ; en"0 Problema 3 var n,ci1ra,si-p,ppar : longint ; begin write( intro"* *n co", -a3i- ; ci1re ! ; rea"(n! ; si-p:#( ; ppar :#2 ; repeat ci1ra :#n -o" 2( ; i1 ci1ra -o" 2#( t<en ppar :#ppar$ci1ra else si-p :#si-p%ci1ra ; n :#n "iv 2( ; .2

*ntil n#( ; Iprima cifra a numarului este aloarea cu care ariabila cifra iese din buclaJ i1 (ppar#2! or (si-p#(! or (si-p -o" ci1raMOppar -o" ci1ra! t<en writeln( INCD)=CT/! else writeln( CD)=CT/! ; en"0 Problema 4 var n,ci1ra,c : longint ; gata: boolean ; begin write( intro"* *n n*-ar nen*l ! ; rea"(n! ; c:#( ; gata :#1alse ; repeat ci1ra :#n -o" 2( ; i1 ci1ra#( t<en c :#c%2 else gata :#tr*e ; n :#n "iv 2( ; *ntil gata ; writeln( n*-ar*l se ter-ina c* ,c,/ 8ero*ri/! ; en"0 Problema 5 var n,n"at,nrast,ci1ra : longint ; begin write( intro"* n*-ar*l :/! ; rea"(n! ; %construiesc numarul rasturnat pe masura ce scot cifrele# n"at :#n ; nrast :#( ; repeat ci1ra :#n"at -o" 2( ; nrast :#nrast$2(%ci1ra ; n"at :#n"at "iv 2( ; *ntil n"at#( ; i1 n#nrast t<en writeln( =ST= PELING)D>/! else writeln( NU =ST= PELING)D>/! ; en"0 Problema 6 var n,3,n"at,nrast,ci1ra : longint ; begin write( n#/! ; rea"(n! ; writeln( NU>=)= PELING)DE>=/! ; 1or 3 :#( to n "o begin n"at :#3 ; nrast :#( ; repeat ci1ra :#n"at -o" 2( ; nrast :#nrast$2(%ci1ra ; n"at :#n"at "iv 2( ; *ntil n"at#( ; i1 3#nrast t<en writeln(3,/ ! ; en" ; en"0 Problema 7 var ci1ra,n,-,p,pro" : longint ; nrb*n,gata : boolean ; begin - :#2 ; gata :#1alse ; w<ile not gata "o begin pro" :#-$n ; nrb*n :#tr*e ; p :#pro" ; repeat ..

ci1ra :#p -o" 2( ; i1 (ci1raMO(! an" (ci1raMO2! t<en nrb*n :#1alse ; p :#p "iv 2( *ntil (p#(! or not nrb*n ; i1 nrb*n t<en gata :#tr*e else - :#-%2 ; en" ; writeln(pro",/ s4a obtin*t 1acan" pro"*s*l l*i ,n,/c* ,-! en"0 Problema 8 var n,ci1ra,i,p,s,srast : longint ; begin write( n*-ar c* ci1re intre 2 si &, "istincte#/! ; rea"(n! ; s :#( ; repeat ci1ra :#n -o" 2( ; p :#2 ; 1or i :#2 to ci1ra "o p :#p$2( ; s :#s%ci1ra$p ; n :#n "iv 2( *ntil n#( ; srast :#( ; Iformez rasturnatul lui s fara cifrele de (J repeat ci1ra :#s -o" 2( ; i1 ci1raMO( t<en srast :#srast$2(%ci1ra ; s :#s "iv 2( ; *ntil s#( ; repeat Iafisez rasturnatul lui srast, fara a forma acest numarJ ci1ra :#srast -o" 2( ; write(ci1ra,/ ! ; srast :#srast "iv 2( ; *ntil srast#( ; en"0 Problema 9 var n,c,nc,-,ci1ra : longint ; begin write( intro"* *n n*-ar ! ; rea"(n! ; 1or c :#( to ; "o begin nc :#( ; - :#n ; repeat ci1ra :#- -o" 2( ; i1 ci1ra#c t<en nc :#nc%2 ; - :#- "iv 2( ; *ntil -#( ; writeln( ci1ra ,c,/ apare "e ,nc,/ ori/! ; en" ; en"0 Problema 10 var n,c,nc,-,ci1ra,nrci1re: longint ; begin write( intro"* *n n*-ar ! ; rea"(n! ; nrci1re :#( ; .9

1or c :#( to ; "o begin nc :#( ; - :#n ; repeat ci1ra :#- -o" 2( ; i1 ci1ra#c t<en nc :#nc%2 ; - :#- "iv 2( ; *ntil -#( ; i1 ncMO( t<en nrci1re:#nrci1re%2 ; en" ; writeln( n*-ar*l contine ,nrci1re,/ "istincte! ; en"0 Problema 11 var a,b,-,ci1ra,nr :longint ; nr2,nr2 :boolean ; begin write( a,b#/! ; rea"(a,b! ; write( a! ! ; 1or c :# ( to ; "o begin nr2:#1alse ; -:#a ; repeat ci1ra :#- -o" 2( ; i1 ci1ra#c t<en nr2:#tr*e; - :#- "iv 2( ; *ntil -#( ; nr2:#1alse ; -:#b ; repeat ci1ra :#- -o" 2( ; i1 ci1ra#c t<en nr2 :#tr*e ; - :#- "iv 2( ; *ntil -#( ; i1 nr2 an" nr2 t<en write(c,/ !; en" ; writeln ; write( b! ! ; Iiau toate cifrele de la ( la ) si ad de cate ori apare fiecare atat in a cat si in bJ 1or c :#; "ownto ( "o begin nr :#( ; - :#a ; repeat ci1ra :#- -o" 2( ; i1 ci1ra#c t<en nr:#nr%2; - :#- "iv 2( ; *ntil -#( ; - :#b ; repeat ci1ra :#- -o" 2( ; i1 ci1ra#c t<en nr:#nr%2; - :#- "iv 2( ; *ntil -#( ; 1or i :#2 to nr "o write(c! ; Icifra c se afiseaza de atatea ori de cate ori apare in a si bJ .'

en" ; en"0 Problema 12 var a,b,s,n: longint ; begin write ( a,b (aMb! :/! ; rea"(a, b! ; s:#( ; 1or n:#a to b "o s:# s % n -o" 2( ; writeln( *lti-a ci1ra#/,s -o" 2(! ; en"0 -lgoritmul lui /uclid -' *e dau dou numere nenule * se afieze cmmdc i cmmmc al lor 0' *e dau numitorul i numrtorul unei fracii * se simplifice, dac se poate, i s se afieze fracia simplificat 9' *e dau trei numere <eterminai i afiai cmmmdc al lor :' *e d numrul n, s se afieze toate numerele mai mici ca el prime cu el Rspunsuri : Problema 1 var a,b,r: integer ; begin write( intro"* "o*a n*-ere ! ; rea"(a,b! ; repeat r:#a -o" b ; a :#b ; b :#r ; *ntil r#( ; write( c--"c#/,a! ; en"0 Problema 2 var a,b,r,n*-arator,n*-itor: integer ; begin write( intro"* n*-arator*l si n*-itor*l ! ; rea"(a,b! ; n*-arator :#a ;n*-itor :#b ; repeat r:#a -o" b ; a :#b ; b :#r *ntil r#( ; n*-arator:#n*-arator "iv a ; n*-itor :#n*-itor "iv a ; writeln( 1ractia#/,n*-arator,/6/,n*-itor/! ; en"0 Problema 3 var a,b,c,r: integer ; begin write( intro"* trei n*-ere ! ; rea"(a,b,c! ; repeat Iaflu cmmmdc dintre a si bJ r :#a -o" b ; a :#b ; b :#r ; .7

*ntil r#( ; repeat Iaflu cmmmdc dintre c si cmmmdc dintre a si b# r :#a -o" c ; a :#c ; c :#r ; *ntil r#( ; writeln( c---"c#/,a! ; en"0 Problema 4 var n,-,r: integer ; begin write( intro"* *n n*-ar ! ; rea"(n! ; writeln( n*-ere pri-e c* /,n! ; 1or - :#2 to n42 "o begin 3 :#n ;y :#- ; repeat r :#3 -o" y ; 3 :#y ; y :#r *ntil r#( ; i1 3#2 t<en write(-,/ ! ; en" ; en"0 0enerare aleatoare a unor numere -' * se simuleze aruncarea unui zar de n ori afi.ndu-se valoarea feei i s se afieze de c.te ori a aprut valoarea ; 0' *e arunc 0 zaruri p.n la o$inerea unei du$le * se afieze suma punctelor 9' *e e7trag n $ile dintr-o urn, notate de la - la 06 * se afieze cea mai mare valoare e7tras :' <intr-o urn cu $ile al$e i negre se e7trage pe r.nd c.te o $il, de n ori +fiai c.te $ile al$e i c.te negre au fost e7trase 5' * se fac un test de nmulire cu dou numere cuprinse ntre 6 i -6, generate de calculator, care s cuprind cel mult 5 ncercri Rspunsuri: Problema 1 var 1,n,c,i: wor"; begin write( cate ar*ncari@/!; rea"(n!; writeln( valori obtin*te la ar*ncari:/!; ran"o-i8e; 1or i:#2 to n "o begin 1:#ran"o-(7!%2; writeln( ar*ncarea ,i,/: /,1 !; i1 1#7 t<en c:#c%2; en" ; writeln( 1ata 7 s4a obtin*t "e ,c,/ ori/! ; en"0 Problema 2 var s,82,82 : wor" ; begin .:

writeln ( valori obtin*te la ar*ncari :/! ; ran"o-i8e ; s :#( ; repeat 82 :#2%ran"o-(7! ; 82 :#2%ran"o-(7! ; s :#s%82%82 ; writeln(82,/ ,82! ; *ntil 82#82 ; writeln( s*-a#/,s! ; en"0 Problema 3 var n,-a3,b,i : wor" ; begin write( n*-ar*l bilelor e3trase :/! ; rea"(n! ; -a3 :#( ; ran"o-i8e ; writeln( s4a* e3tras bile c* n*-erele :/! ; 1or i :#2 to n "o begin b :#2%ran"o-(2(! ; write(b,/ ! ; i1 -a3Mb t<en -a3 :#b ; en" ; writeln ;writeln( valoarea -a3i-a e3trasa#/,-a3! ; en"0 Problema 4 var n,ca,cn,b,i : wor" ; begin write( n*-ar*l bilelor e3trase :/! ; rea"(n! ; ca:#( ; cn :#( ; ran"o-i8e ; writeln( s4a* e3tras bile "e c*loare :/! ; 1or i :#2 to n "o begin b :#ran"o-(2! ; Icodificam culorile * alb=(, negru=1J i1 b#( t<en begin ca :#ca%2 ;write( alba,/ ! en" else begin cn :#cn%2 ;write( neagra,/ ! en" ; en" ; writeln ; writeln(ca,/ bile albe ,cn,/ bile negre/! ; en"0 Problema 5 var n2,n2,rasp*ns,i,5,n : wor" ; begin ran"o-i8e ; write( cate intrebari @! ; rea"(n! ; 1or 5 :#2 to n "o begin n2 :#ran"o-i8e(22! ; n2 :#ran"o-i8e(22! ; i :#( ; repeat writeln( cat 1ace ,n2,/3/,n2,/ @/! ; rea"ln(rasp*ns! ; i :#i%2 ; *ntil (rasp*ns #n2$n2! or i#' ; en" ; en"0

.&

Probleme de logic -' Cine se uit la televizor C +na, Bar$u, Clin, <umitru i #lena petrec mpreun o zi de iarn <ac +na privete la (V, la fel face i Bar$u Iie <umitru, fie #lena, fie am.ndoi privesc la (V Iie Bar$u, fie Clin privete la (V, dar nu am.ndoi <umitru i Clin fie privesc, fie nu privesc la (V, dar asta numai mpreun <ac #lena privete la (V atunci +na i <umitru se uit i ei (ndica)ie : se v"r '"l"si variabilele b""leene a,b,c,d,e care v"r avea val"area true sau 'alse dup cum pr"p"-i)iile 8 Ana se uit la 29 :, 8 ;arbu se uit la 29 :, etc. sunt adevrate sau 'alse. 0' Cine minte C Bntr-o mpre%urare n care sunt implicai a, $ i c se fac urmtoarele afirmaii " a susine c $ minte $ susine c c minte c susine c a i $ mint Cine minte i cine spune adevrul C Rspunsuri : Problema 1 var a,b,c,": boolean; ?: byte; begin ?:#(; I? n*-ara con"itiileJ 1or a :#1alse to tr*e "o 1or b :# 1alse to tr*e "o 1or c :# 1alse to tr*e "o 1or " :# 1alse to tr*e "o 1or e :# 1alse to tr*e "o begin i1 aM#b t<en ?:#?%2 ; i1 eM#(a an" "! t<en ? :#?%2 ; i1 " or e t<en ? :#?%2 ; i1 b 3or c t<en ? :#?%2 ; i1 not(" 3or c! t<en ? :#?%2 ; i1 ?#' t<en begin i1 a t<en writeln( Ena se *ita la TF/! ; i1 b t<en writeln( Harb* se *ita la TF/! ; i1 c t<en writeln( Calin se *ita la TF/! ; i1 " t<en writeln( G*-itr* se *ita la TF/! ; i1 e t<en writeln( =lena se *ita la TF/! ; en" ; ? :#( ; en" ; en"0 Problema 2 var a,b,c :boolean ; begin 1or a :#1alse to tr*e "o begin b :#not a ; c :#not b ; .;

i1 (a or b! 3or c t<en begin i1 a t<en writeln( a sp*ne a"evar*l/! else writeln( a -inte/! ; i1 b t<en writeln( b sp*ne a"evar*l/! else writeln( b -inte/! ; i1 c t<en writeln( c sp*ne a"evar*l/! else writeln( c -inte/! ; en" ; en" ; en"0 Probleme de sintez -' * se afieze toate numerele p.n la -66 care au patru divizori 0' <intre numerele mai mici ca -666, care au cei mai muli divizori C 9' *e dau n numere Bn c.te zerouri se va termina produsul lorC :' *e introduc temperaturile medii msurate n fiecare lun a unui an * se afieze valoarea celei mai mari temperaturi negative i a celei mai mici temperaturi pozitive a acelui an Exemplu: 5% 56 0 & 10 20 2% 2& 1/ 8 51 5/ *e va a'i a max ne#ative=51 min p"-itive=& 5' *e citete un numr natural n cu cel mult A cifre i se cere s se afieze o piramid format din cifrele lui astfel" pe prima linie cifra &sau cifrele' din mi%loc, pe a doua cele 9 &sau : ' cifre din mi%loc, etc pe ultima s fie scris numrul dat Exemplu: n=2$/8&& se va a'i a /8 $/8 & 2 $ / 8 & & ;' <at valoarea unui numr natural, se cere s se tipreasc n scriere roman =' *e citesc mai multe caractere p.n la nt.lnirea caracterului G'H Verificai dac e7presia format din nlnuirea acestor caractere reprezint un numr zecimal periodic Bn caz afirmativ, s se determine dou numere prime ntre ele al cror raport este numrul zecimal dat Codul +*CII al caracterelor T&T / :6,U 'U / :-,U U / :;, T6U UAU / :3 5= 3' *e citesc pe r.nd caracter cu caracter elementele unei e7presii matematice, caracterele citite pot fi doar cifre i 2, -, 1 ,E i /, p.n la nt.lnirea semnului / Operaiile se fac n ordinea introducerii lor, fr a se ine seama de prioritate Calculatorul s afieze rezultatul e7presiei A' O $roscu se deplaseaz efectu.nd c.te o sritur de lungime p cm la fiecare secund <up fiecare n secunde $roscua devine mai o$osit, iar lungimea sriturii pe care o face se n%umtete *criei un program care s citeasc de la tastatur lungimea iniial a sriturii, p, numrul de secunde dup care $roscua i in%umtete saltul, n, precum i durata total a deplasrii $roscuei ! &e7primat n secunde' i care s determine distana total pe care a parcurs-o $roscua <istana total determinat va fi afiat pe ecran cu dou zecimale &ODI, Jalaciuc 066-, clasa a V-a' 1estric)ii: p, n, 2 sunt numere naturale< p, n, 2=$0000<2>n=16. Exemplu ?entru n=10, p=20 i 2=$$, distan)a t"tal pe care se deplasea- br"scu)a este $&/.&0 cm -6'Ma un concurs de matematic particip elevi din mai multe coli din diferite orae !entru a se putea deose$i ntre ele lucrrile lor, fiecare lucrare este codificat printr-un numr natural cu 9 cifre, s zicem a$c, unde a este codul oraului, $ este codul colii din oraul a iar c este codul unui elev din coala $ din oraul a Ex.: lucrarea cu c"dul $28 este lucrarea elevului cu c"dul 8 de la c"ala cu c"dul 2 din "ra ul cu c"dul $. *e

9(

cunosc" un cod &al lucrrii unui elev V, prietenul nostru', numrul n de lucrri i codurile acestora Cerin" *e cere s se rezolve cerinele" a' Verificai dac V este premiant sau nu $' <eterminai numrul de premii luate de elevii din oraul lui V c' <eterminai numrul de premii luate de elevii din coala lui V &OSI, clasa a V-a, fe$ruarie 066:' --'O carte are 1 pagini !e paginile care au numrul asociat divizi$il cu 2 i nedivizi$il cu 3 se afl poze Cerin" pentru 1, 2, 3 citite de la tastatur se cere s se afieze ultima cifr a sumei numerelor asociate paginilor care au poze, dac pro$lema nu are soluie se va afia mesa%ul" Imposi$ilR 1estric)ii 0=,=1000000001 0=@,A, Exemplu ?entru ,=20, @=$, A=2 se va a'i a / &CDI *atu-?are 0669 clasa a V-a' -0'Bntr-o parcare sunt n maini care au numere de nmatriculare provizorii &numere ntregi, din cel mult 5 cifre' ?ainile sunt aezate n ordinea de citire a numerelor de nmatriculare * se afieze poziiile pe care se afl mainile pentru care suma cifrelor numrului de nmatriculare este impar & nN/ 06' Exemplu: pt. n=& i numerele de +nmatriculare: 6$% 90281 6$/21 $0$61 /091& se v"r a'i a p"-i)iile: 1 $ % &CDI *atu-?are 0660 clasa a V-a' -9'Bn vacan la mare dup ce se plictisete de pla% i ap, Ionic este mai tot timpul n !arcul de distracii <intre toate locurile de distracie el a ales tirul +stfel, ntr-o sear Ionic o$ine ' puncte, dup un anumit numr de trageri &cel puin dou trageri' ,tiind c la toate tragerile efectuate a o$inut puncte i c dup fiecare tragere el progreseaz constant, adic o$ine cu un punct mai mult dec.t la tragerea anterioar, se cere s se determine toate modalitile de o$inere a puncta%elor &cu suma lor egal cu '' <ate de intrare" de la tastatur se va citi valoarea lui ' &numr natural nenul WAA33==' <ate de ieire" !entru fiecare soluie se va afia pe c.te un r.nd numrul de trageri i puncta%ul primei trageri cu un spaiu ntre ele, iar la sf.rit pe ultima linie se va afia mesa%ul Dumar solutii urmat de numrul de soluii Exemplu: ?entru *=1& pe ecran se va a'i a: 5 0= 9: ,umr s"lu)ii $ &ODI Jlciuc 0660 clasa a V-a' Rspunsuri: Problema 1 var n,",c:integer; begin writeln( N*-ere care a* patr* "ivi8ori/!; 1or n:#7 to 2(( "o begin c:#(; 1or ":#2 to n "o i1 n -o" "#( t<en c:#c%2; i1 c#9 t<en write(n,/ !; en"; writeln; en"0 Problema 2 var -a3,n,nr,",c: integer; begin -a3:#(; 92

1or n:#2 to 2((( "o begin c:#(; 1or ":#2 to n "o i1 n -o" "#( t<en c:#c%2; i1 -a3Mc t<en begin -a3:#c; nr:#n; en"; en"; writeln( pri-*l n*-ar c* cei -ai -*lti "ivi8or este ,nr!; en"0 Problema 3 var n,e2,e',a,i: integer; begin write( n#/!; rea"(n!; e2:#(; e':#(; I or memora suma exponentilor lui 2 si + din descompunerea fiecarui numarJ 1or i:#2 to n "o begin write( n*-ar#/!; rea"(a!; i1 a -o" 2#( t<en w<ile a -o" 2#( "o begin a:#a "iv 2; e2:#e2%2; en"; i1 a -o" '#( t<en w<ile a -o" '#( "o begin a:#a "iv '; e':#e'%2; en"; en"; Icum pentru fiecare perec"e 2, + din produs se obtine un zero, nr. de zerouri este egal cu min(e2,e+)J i1 e2Me' t<en writeln( pro"*s*l se ter-ina in ,e2,/ 8ero*ri/! else writeln( pro"*s*l se ter-ina in ,e',/ 8ero*ri/!; en"0 Problema 4 var -in,-a3,t,i: integer; begin -a3:# 4'(; -in:# '(; 1or i:#2 to 22 "o begin write( te-perat*ra in l*na ,i!; rea"(t!; i1 (-a3Mt! an" (tM(! t<en -a3:#t; i1 (-inOt! an" (tO(! t<en -in:#t; en"; writeln( -a3 negative#/,-a3!; writeln( -in po8itive#/,-in!; en"0 Problema 5 var e,i,5,c: byte Ic=numar cifre, e=numar maxim de cifre eliminate pe o latura J n,nr,1,r: longint; I r=numar ramas dupa eliminarea cifrelor de pe extreme J begin write( n#/!; rea"(n!; c:#(; nr:#n; repeat Ise deermina c, numarul de cifre al numarului nJ c:#c%2; nr:#nr "iv 2(; *ntil nr#(; 92

e:#(c42! "iv 2; 1oe i:#e "ownto ( "o begin 1:#2; 1or 5:#2 to i "o 1:#1$2(; r:#n "iv 1; Ise elimina f cifre de la sfarsitJ 1:#2; 1or 5:#2 to c42$i "o 1:#1$2(; r:#r -o" 1; Ise elimina cifrele de la inceputJ writeln(r:c4i!; en"; en"0 Problema 6 var 3: longint; begin writeln( n*-ar#/!; rea"(3!; writeln( scrierea ro-ana a n*-ar*l*i "at:/!; w<ile 3O#2((( "o begin write( >/!; 3:#342((( en"; i1 3O#;(( t<en begin write( C>/!; 3:#34;(( en" else i1 3O#'(( t<en begin write( G/!; 3:#34'(( en" else i1 3O#9(( t<en begin write(RCG/!; 3:#349(( en"; w<ile 3O#2(( "o begin write( C/!; 3:#342(( en"; i1 3O#;( t<en begin write( SC/!; 3:#34;( en" else i1 3O#'( t<en begin write( L/!; 3:#34'( en" else i1 3O#9( t<en begin write( SL/!; 3:#349( en"; w<ile 3O#2( "o begin write( S/!; 3:#342( en"; i1 3O#; t<en begin write( IS/!; 3:#34; en" else i1 3O#' t<en begin write( F/!; 3:#34' en" else i1 3#' t<en begin write( IF/!; 3:#349 en"; w<ilw 3O#2 "o begin write( I/!; 3:#342 en"; en"0 Problema 7 var corect:boolean; i,8,p: c<ar; n,l,5: byte; nr,8ec,per,1,n-r,n-t,"ei-p,i-p,rest: integer; Inr=partea intreaga, zec=partea zecimala neperiodica, per=partea zecimala periodicaJ begin writeln( intro"*ceti ci1rele pe ran"/!; nr:#(; 8ec:#(; per:#(; n:#(; l:#(; corect:#tr*e; repeat Ise formeaza numarul nr# rea"ln(i!; case i o1 (/00/;/: nr:#nr$2(%or"(i!49&; ,/: Iinstructiune idaJ else corect:#1alse; en"; *ntil (i#/0/! or (i# /!/ !; i1 not corect t<en begin writeln( n* e corecta/!; <alt en"; repeat Ise formeaza numarul zecJ rea"ln(8!; case 8 o1 (/00/;/:begin 8ec:#8ec$2(%or"(8!49&;n:#n%2; en"; (/: else corect:#1alse; 9.

en"; *ntil (8#/(/! or (8#/!/!; i1 not corect t<en begin writeln( n* e corecta/!; <alt en"; repeat Ise formeaza numarul perJ rea"ln(p!; case p o1 (/00/;/:begin per:#per$2(%or"(p!49&; l:#l%2; en"; !/: else corect:#1alse; en"; *ntil p#/!/; i1 not corect t<en begin writeln( n* e corecta/!; <alt en"; writeln( 1ractia este corecta/!; 1:#2; 1or 5:#2 to l "o 1:#1$2(; n-t:#8ec$1%per; n-t:#n-t48ec; Iformula pentru numaratorul unei fractii periodice mixteJ n-r:#(; 1or 5:#2 to l "o n-r:#n-r$2(%;; 1or 5:#2 to n "o n-r:#n-r$2(; Iformula pentru numitorul unei fractii periodice mixteJ n-t:#n-t%nr$n-r; Ise introduc intregii in fractieJ "ei-p:#n-t; i-p:#n-r; Ise calculeaza cmmdc pentru nmt si nmr, se simplifica fractiaJ repeat rest:#"ei-p -o" i-p; "ei-p:#i-p; i-p:#rest *ntil rest#(; n-t:#n-t "iv "ei-p; n-r:#n-r "iv "ei-p; writeln( 1ractia or"inara#/,n-t,/6/,n-r!; en"0 Problema 8 var op,c:c<ar; nr:longint; i: integer; e: real; begin writeln( intro"* e3presia arit-etica, caracter c* caracter:/!; Iexpresia introdusa se presupune ca a fi corectaJ nr:#(; repeat Ise formeaza primul termenJ rea"ln(c!; case c o1 (/00/;/: nr:#nr$2(%or"(c!49&; en"; *ntil (or"(c!M9&! or (or"(c!O':!; e:#nr; nr:#(; op:#c; repeat rea"ln(c!; case c o1 (/00/;/: nr:#nr$2(%or"(c!49&; %/,/4 ,/$/,/6/: begin case op o1 %/: e:#e%nr; 99

4/: e:#e4nr; $/: e:#e$nr; 6/: e:#e6nr; en"; op:#c; nr:#( en"; en"; *ntil c#/#/; case op o1 Ise face ultima operatie cu ultimul numar introdusJ %/: e:#e%nr; 4/: e:#e4nr; $/: e:#e$nr; 6/: e:#e6nr; en"; writeln( valoarea e3presiei#/,e:2(:.!; en"0 Problema 9 var ",p:real; s,n,t:wor"; begin write( p, n, t #/!; rea"(p,n,t!; ":#(; s:#(; repeat ":#"%p; s:#s%2; i1 s -o" n#( t<en p:#p62; *ntil s#t; writeln( "#/,":2(:2,/ c-/!; en"0 Problema 10 var co",c",a<,c<,3,b<,n,,pre-iant,nrpre-oras,nrpre-sc,i: integer; begin write( co"*l prieten*l*i:/!; rea"(co"!; a<:#co" "iv 2((; c<:#co" -o" 2(; 3:#co" -o" 2((; b<:#3 "iv 2(; write( cate l*crari@/!; rea"(n!; writeln( intro"* co"*rile celor ,n,/ l*crari:/!; pre-iant:#1alse; nrpre-oras:#(; nrpre-sc:#(; 1or i:#2 to n "o begin write( co"#/!; rea"(c"!; a:#c" "iv 2((; c:#c" -o" 2(; 3:#c" -o" 2((; b:#3 "iv 2(; i1 c"#co" t<en pre-iant:#tr*e; i1 a#a< t<en nrpre-oras:#nrpre-oras%2; i1 (b#b<! an" (a#a<! t<en nrpre-sc:#nrpre-sc%2; en"; i1 pre-iant t<en writeln( N este pre-iantU/! else writeln( N n* este pre-iant/!; writeln(nrpre-oras,/ pre-ii "in oras*l l*i N/!; 9'

writeln(nrpre-sc,/ pre-ii "in scoala l*i N/!; en"0 Problema 11 var n,,,<,i,s: longint; posibil: boolean; begin write( cate pagini s*nt@/!; rea"(n!; write( ,,<#/!; rea"(,,<!; s:#(; 1or i:#2 to n "o i1 (i -o" ,#(! an" (i -o" <MO(! t<en begin s:#s%i -o" 2(; posibil:#tr*e en"; i1 posibil t<en writeln( *lti-a ci1ra#/,s -o" 2(! else writeln( I-posibil/!; en"0 Problema 12 var a: longint; i,n,c,s: byte; begin 1or i:#2 to n "o begin write( n*-ar in-atric*lare:/!; rea"(a!; s:#(; repeat c:# a -o" 2(; s:#s%c; a:#a "iv 2(; *ntil a#(; i1 s -o" 2#2 t<en writeln( po8itia ,i!; en"; en"0 Problema 13 ve8i proble-a 2( cap0III Instr*cVi*ni "e ciclare, algorit-i ciclici0 Utili8area instr*cVi*nilor "e ciclare pentr* generare "e n*-ere

I4. !ablouri cu o dimensiune )vectori* Introducere, parcurgere, afiare Parcurgere cu instruciunea for -' *e citesc -6 numere de ma7im A cifre * se afieze pe vertical, specific.ndu-se i poziia pe care o ocup n ir 0' *e d un ir de -5 numere reale * se afieze pe dou r.nduri, pe primul r.nd cele ntregi i pe al doilea cele fracionare 9' *e introduc -6 litere, s se afieze n ordinea invers introducerii :' @n acrosti) este o poezie la care, citind nceputul fiecrui vers, se o$ine un mesa% * se introduc un acrosti), vers cu vers, i s se afieze mesa%ul dat de primele litere Exemplu: 9reau s d"rm 1Bd +n s"mn Este ca un dr"# Acest dra# s"mn Citat +n pat *e va a'i a 91EAC 97

5' Introducei n numere ntr-un vector i un numr d +fiai acele numere din irul dat care sunt divizi$ile cu d Re olvri: Problema 1 var 3: arrayW2002(X o1 longint; i: byte; begin writeln( intro"* 2( n*-ere/!; 1or i:#2 to 2( "o rea"(3WiX!; writeln( Ei intro"*s n*-erele:/!; 1or i:#2 to 2( "o writeln( po8itia ,i:.,3WiX:22!; en"0 Problema 2 var 3: arrayW2002'X o1 real; i: byte; begin writeln( intro"* 2' n*-ere/!; 1or i:#2 to 2' "o rea"(3WiX!; writeln( n*-erele intregi:/!; 1or i:#2 to 2' "o i1 3WiX#int(3WiX! t<en write(tr*nc(3WiX!:2(!; writeln( n*-erele 1ractionare:/!; 1or i:#2 to 2' "o i1 3WiXMOint(3WiX! t<en write(3WiX:2(:.!; en"0 Problema 3 var c: arrayW2002(X o1 c<ar; i: byte; begin writeln( intro"* pe ran" 2( litere/!; 1or i:#2 to 2( "o rea"ln(cWiX!; writeln( literele in or"ine inversa:/!; 1or i:#2( "ownto 2 "o write(cWiX!; en"0 Problema 4 var v: arrayW2002((X o1 string; n,i: byte; begin write( cate vers*ri are acrosti<*l@/!; rea"ln(n!; writeln( intro"* pe ran" vers*rile/!; 1or i:#2 to n "o rea"ln(vWiX!; writeln( >esa5*l:/!; 1or i:#2 to n "o write(vWiXW2X!; en"0 Problema 5 var 3: arrayW2002((X o1 integer; ",n,i: integer; begin write( cate n*-ere@/!; rea"(n!; writeln( n*-erele:/!; 1or i:#2 to n "o rea"(3WiX; write( "#/!; rea"("!; writeln( n*-ere "ivi8ibile c* ,"!; 1or i:#2 to n "o i1 3WiX -o" "#( t<en write(3WiX::!; en"0 $tilizarea altor instruciuni de ciclare pentru parcurgerea vectorilor -' *e introduc n numere reprezent.nd puncta%ele o$inute la un concurs * se afieze primele , puncta%e mai mari dec.t o valoare b, necesar calificrii la o etap superioar <ac nu sunt suficieni concureni care s fi o$inut puncta% peste $, s se afieze i mesa%ul XCandidati insuficientiH 0' * se afieze elementele unui vector p.n la prima valoare nul <ac nu e7ist nici un 6, se vor afia toate numerele i mesa%ul XDici un element nulH 9' <ate n numere reale, s se afieze pe un r.nd cele de pe poziii pare i pe un alt r.nd cele de pe poziii impare :' *e introduc un numr par de numere * se adune c.te dou numere consecutive i s se afieze sumele o$inute

9:

5' *e introduc pe r.nd n caractere * se afieze pe ce poziie apare prima dat caracterul spaiu Re olvri: Problema 1 var 3: arrayW2002((X o1 integer; n,i,,,b,c: integer; begin write( n#/!; rea"(n!; writeln( intro"* p*ncta5ele/!; 1or i:#2 to n "o rea"(3WiX!; write( ,#/!; rea"(,!; write( b#/!; rea"(b!; i:#2; c:#(; repeat i1 3WiXOb t<en begin write(3WiX::!; inc(c! en"; inc(i!; *ntil (cO#,! or (iOn!; i1 cM, t<en writeln( Can"i"ati ins*1icienti/!; en"0 Problema 2 var 3: arrayW2002((X o1 integer; n,i: integer; begin write( cate n*-ere@ !; rea"(n!; writeln( intro"* n*-erele !; 1or i:#2 to n "o rea"(3WiX!; i:#2; w<ile (3WiXMO(! an" (iM#n! "o begin write(3WiX::!; inc(i!; en"; i1 iOn t<en write( nici *n ele-ent n*l/!; en"0 Problema 3 var 3: arrayW2002((X o1 real; n,i: integer; begin write( cate n*-ere@ !; rea"(n!; writeln( intro"* n*-erele !; 1or i:#2 to n "o rea"(3WiX!; writeln( n*-ere "e pe po8itii i-pare/!; i:#2; repeat write(3WiX:2(:.!; i:#i%2 *ntil iOn; writeln; writeln( n*-ere "e pe po8itii pare/!; i:#2; repeat write(3WiX:2(:.!; i:#i%2 *ntil iOn; en"0 Problema 4 var 3: arrayW2002((X o1 integer; n,i,s: integer; begin write( intro"* *n n*-ar par !; rea"(n!; writeln( intro"* n*-erele !; 1or i:#2 to n "o rea"(3WiX!; writeln( s*-ele a cate "o*a n*-ere consec*tive:/!; i:#2; repeat s:#3WiX%3Wi%2X; write(s,/ !; i:#i%2; *ntil iOn; en"0 9&

Problema 5 var 3: arrayW2002((X o1 c<ar; n,i: integer; begin write( cate caractere@ !; rea"ln(n!; writeln( intro"* pe ran" caracterele !; 1or i:#2 to n "o rea"ln(3WiX!; i:#2; w<ile (3WiXMO/ ! an" (iM#n! "o inc(i!; i1 iOn t<en writeln( n* s4a gasit spati*/! else writeln( pri-*l spati* apare pe po8itia ,i!; en"0 'ume, produse, contorizri, min, max -' * se afieze suma valorilor pozitive i suma valorilor negative din n numere date 0' *e introduc temperaturile msurate n n zile * se afieze media temperaturilor negative i media celor pozitive 9' <in n numere ntregi introduse n calculator doar unul este nul i nu este primul sau ultimul +fiai suma numerelor din faa acestui 6 i suma celor de dup el :' Bntr-un ir de numere ntregi, s se afieze suma elementelor de pe poziiile pare i suma celor de pe poziii impare 5' *e introduc n calculator i se memoreaz v.rstele a n $r$ai +fiai c.i au v.rsta mai mare dec.t 56 i mai mic dec.t =6 de ani ;' Ma o cur de sl$ire de , zile se nscriu n persoane, fiecare cu greutatea g)i* ,tiind c greutatea ideal este mai mare sau egal cu a i mai mic sau egal cu b, iar persoanele urmeaz tratamente diferite astfel" cei su$ greutate ideal se ngra - 4g pe zi, cei peste greutatea ideal sl$esc - 4g pe zi, cei cu greutatea ideal i pstreaz greutatea, aflai a' numrul de persoane cu greutate ideal la nceputul tratamentului 8 $' numrul persoanelor cu greutate ideal dup cele , zile de tratament. Exemplu: n=10 D=/ a=%0 b=&0 i $8 %1 %8 &0 &% &8 60 %2 $2 se va a'i a a4 % pers"ane b4 / pers"ane. 3Info*tar +iud -AA3 clasa a VI-a' =' <ate n numere naturale, c.te sunt prime cu =C <ar cu -6C 3' *e introduc n numere egale cu 6, - sau 0 * se scrie un program care s determine pe ce poziie apare primul 6, de c.te ori apare fiecare cifr i care este cifra folosit cel mai puin A' +fiai c.te numere au forma aaa , din n numere date -6' <in n numere introduse de la tastatur, afiai cel mai mare, cel mai mic i diferena lor --' *e dau n numere * se determine cea mai mic valoare i s se afieze de c.te ori apare ea n ir -0' *e introduc n numere ntregi <intre numerele mai mici ca -66, afiai numrul cu valoarea cea mai mare -9' * se calculeze suma componentelor pozitive, produsul celor negative i numrul componentelor nule ale unui vector cu n numere reale -:' @n lot de pm.nt este mprit n n parcele dreptung)iulare, numerotate de la - la n *e citesc perec)ile de numere care reprezint lungimea i limea fiecrei parcele * se afieze suma ariilor parcelelor i valoarea celei mai mari suprafee -5' * se nlocuiasc fiecare element dintr-un ir numeric cu media aritmetic a celorlalte n-- elemente ale sale -;' ?o Crciun sosete n mi%locul copiilor oferind fiecrui copil un cadou cu o anumit valoare &numrul copiilor se citete de la tastatur, precum i valorile cadourilor, n lei' * se spun" -c.t a c)eltuit ?oul pentru cumprarea cadourilor &n moi, - leu/; moi'

9;

-dac ?oul are sau nu un copil preferat, adic dac e7ist un copil al crui cadou s ai$ valoarea mai mare dec.t suma valorilor cadourilor tuturor celorlali copii <ac e7ist, afiai <+, urmat de indicele copilului, n caz contrar afiai D@ Exemplu: dac n=& val"ri cad"uri: 10 &0 6 & 20, se va a'i a: E"sul a cheltuit &%6 m"si FA 2 &Info*tar, +iud -AA5 clasa a VI-a' -=' @n pitic vrea s urce o scar care are n trepte de nlimi date, ordonate cresctor Bnlimile treptelor sunt n cm i sunt valori ntregi +colo unde diferena ntre dou trepte consecutive este de - cm piticul urc fr dificulti, unde diferena este mai mare dec.t - cm piticul tre$uie s ia o pastil care i d putere s sar pe treapta urmtoare Cunosc.nd nlimile treptelor, prima fiind o$ligatoriu 6, piticul vrea s afle care este numrul minim de pastile de care are nevoie pentru a urca scara i de asemenea care este cea mai mare diferen dintre dou trepte consecutive . Exemplu: pentru n=9 i +nl)imile treptel"r 0 $ % 6 / 10 19 20 21, se va a'i a: numar minim de pastile =% di'erenta maxima=9 &Info*tar, +iud -AA; clasa a VI-a' Re olvri: Problema 1 var 3: arrayW2002((X o1 integer; n,i,sp,sn: longint; begin write( n#/!; rea"(n!; writeln( intro"* n*-erele/!; 1or i:#2 to n "o rea"(3WiX!; sn:#(; sp:#(; 1or i:#2 to n "o i1 3WiXO( t<en sp:#sp%3WiX else sn:#sn%3WiX; writeln( s*-a n*-erelor po8itive:/,sp!; writeln( s*-a n*-erelor negative:/,sn!; en"0 Problema 2 var t: arrayW200.7'X o1 integer; n,i,sp,sn,cp,cn: integer; begin write( n#/!; rea"(n!; writeln( intro"* te-perat*rile/!; 1or i:#2 to n "o rea"(tWiX!; sp:#(; sn:#(; cp:#(; cn:#(; 1or i:#2 to n "o i1 tWiXO#( t<en begin inc(cp!; sp:#sp%tWiX en" else begin inc(cn!; sn:#sn%tWiX en"; i1 cpMO( t<en writeln( -e"ia te-perat*rilor po8itive#/,sp6cp:9:2! else writeln( n* s4a* inregistrat te-perat*ri po8itive/!; i1 cnMO( t<en writeln( -e"ia te-perat*rilor negative#/,sn6cn:9:2! else writeln( n* s4a* inregistrat te-perat*ri negative/!; en"0 Problema 3 var 3: arrayW2002((X o1 integer; n,i,5,s1,s": longint; begin write( n#/!; rea"(n!; writeln( intro"* n*-erele/!; 1or i:#2 to n "o rea"(3WiX!; s1:#(; s":#(; Isf=suma numerelor din fata lui (, sd=suma numerelor de dupa (J i:#2; w<ile 3WiXMO( "o begin s1:#s1%3WiX; inc(i! en"; 1or 5:#i%2 to n "o s":#s"%3WiX; writeln( s*-a n*-erelor pana la (#/,s1!; writeln( s*-a n*-erelor "e "*pa (#/,s"!; '(

en"0 Problema 4 var 3: arrayW2002((X o1 integer; n,i,sp,si: longint; begin write( n#/!; rea"(n!; writeln( intro"* n*-erele/!; 1or i:#2 to n "o rea"(3WiX!; sp:#(; si:#(; 1or i:#2 to n "o i1 i -o" 2#( t<en sp:#sp%3WiX else si:#si%3WiX; writeln( s*-a n*-erelor "e pe po8itii pare#/,sp!; writeln( s*-a n*-erelor "e pe po8itii i-pare#/,si!; en"0 Problema 5 var 3: arrayW2002((X o1 integer; n,i,c: integer; begin write( n#/!; rea"(n!; writeln( intro"* varstele/!; 1or i:#2 to n "o rea"(3WiX!; c:#(; 1or i:#2 to n "o i1 (3WiXO'(! an" (3WiXM:(! t<en inc(c!; writeln(c,/ barbati a* varsta c*prinsa intre '( ani si :( ani/!; en"0 Problema 6 var g: arrayW200'(X o1 byte; n,,,a,b,c,8,i: integer; begin write(/cate persoane@/!; rea"(n!; write(/cate 8ile@/!; rea"(,!; write(/li-itele gre*tatii i"eale /!; rea"(a,b!; writeln(/intro"* gre*tatea 1iecarei persoane:/!; 1or i:#2 to n "o rea"(gWiX!; c:#(; 1or i:#2 to n "o i1 (gWiXO#a! an" (gWiXM#b! t<en inc(c!; writeln(/a0! /Rc, / persoane/!; 1or 8:#2 to , "o 1or i:#2 to n "o begin i1 gWiXMa t<en gWiX:#gWiX%2; i1 gWiXOb t<en gWiX:#gWiX42; en"; c:#(; 1or i:#2 to n "o i1 (gWiXO#a! an" (gWiXM#b! t<en inc(c!; writeln(/b0! /Rc, / persoane/!; en"0 Problema 7 var 3: arrayW2002((X o1 integer; n,i,c:,c2(: integer; begin write( n#/!; rea"(n!; writeln( intro"* n*-erele/!; 1or i:#2 to n "o rea"(3WiX!; c::#(; c2(:#(; 1or i:#2 to n "o begin I1 3WiX -o" :MO( t<en inc(c:!; i1 (3WiX -o" 2MO(! an" ( 3WiX -o" 'MO(! t<en inc(c2(!; en"; writeln(c:,/ n*-ere pri-e c* : ,c2(,/ n*-ere pri-e c* 2(/!; en"0 Problema 8 var 3: arrayW2002((X o1 integer; n,i,c(,c2,c2: integer; begin write( n#/!; rea"(n!; '2

writeln( intro"* n*-erele/!; 1or i:#2 to n "o rea"(3WiX!; i:#2; w<ile 3WiXMO( "o inc(i!; writeln( pri-*l ( apare pe po8itia ,i!; c(:#(; c2:#(;c2:#(; 1or i:#2 to n "o case 3WiX o1 (: inc(c(!; 2: inc(c2!; 2: inc(c2!; en"; writeln( ci1ra ( apare "e ,c(,/ ori/!; writeln( ci1ra 2 apare "e ,c2,/ ori/!; writeln( ci1ra 2 apare "e ,c2,/ ori/!; i1 (c(Mc2! an" (c(Mc2! t<en writeln( cel -ai p*tin apare (/!; i1 (c2Mc2! an" (c2Mc(! t<en writeln( cel -ai p*tin apare 2/!; i1 (c2Mc2! an" (c2Mc(! t<en writeln( cel -ai p*tin apare 2/!; en"0 Problema 9 var 3: arrayW2002((X o1 integer; n,i,c,*,s8,s,8:integer; begin write( n#/!; rea"(n!; writeln( intro"* n*-erele/!; 1or i:#2 to n "o rea"(3WiX!; c:#(; 1or i:#2 to n "o begin *:#3WiX -o" 2(; s8:#3WiX "iv 2(; 8:#s8 -o" 2(; s:#s8 "iv 2(; i1 (*#8! an" (8#s! t<en inc(c!; en"; writeln(c,/ n*-ere "e 1or-a aaa/!; en"0 Problema 10 var 3: arrayW2002((X o1 integer; n,i,-in,-a3: integer; begin write( n#/!; rea"(n!; writeln( intro"* n*-erele/!; 1or i:#2 to n "o rea"(3WiX!; -in:#-a3int; -a3:#4-a3int; 1or i:#2 to n "o begin i1 -inO3WiX t<en -in:#3WiX; i1 -a3M3WiX t<en -a3:#3WiX; en"; writeln( -a3#/,-a3,/ -in#/,-in,/ "i1erenta#/, -a34-in!; en"0 Problema 11 var 3: arrayW2002((X o1 integer; n,i,-in,c: integer; begin write( n#/!; rea"(n!; writeln( intro"* n*-erele/!; 1or i:#2 to n "o rea"(3WiX!; -in:#-a3int; c:#(; 1or i:#2 to n "o i1 -inO3WiX t<en -in:#3WiX; 1or i:#2 to n "o i1 -in#3WiX t<en inc(c!; writeln( -in#/,-in,/ apare "e ,c,/ ori/!; '2

en"0 Problema 12 var 3: arrayW2002((X o1 integer; n,i,-a3: integer; begin write( n#/!; rea"(n!; writeln( intro"* n*-erele/!; 1or i:#2 to n "o rea"(3WiX!; -a3:#4-a3int; 1or i:#2 to n "o i1 (-a3M3WiX! an" (3WiXM2((! t<en -a3:#3WiX; writeln( cel -ai -are n*-ar -ai -ic "ecat 2(( este ,-a3! en"0 Problema 13 var 3: arrayW2002((X o1 integer; n,i,c: integer; s,p: longint; begin write( n#/!; rea"(n!; writeln( intro"* n*-erele/!; 1or i:#2 to n "o rea"(3WiX!; s:#(; c:#(; p:#2; 1or i:#2 to n "o i1 3WiXO( t<en s:#s%3WiX else i1 3WiXM( t<en p:#p$3WiX else inc(c!; writeln( s*-a#/,s,/ pro"*s#/,p,/ n*-ar valori n*le#/,c!; en"0 Problema 14 var a,b: arrayW2002((X o1 integer; n,i: integer; s,-a3: longint; begin write( n#/!; rea"(n!; 1or i:#2 to n "o begin writeln( intro"* l*ngi-ea si lati-ea parcelei /,i!; rea"(aWiX, bWiX!; en"; s:#(; -a3:#4-a3longint; 1or i:#2 to n "o begin s:#s%aWiX$bWiX; i1 -a3MaWiX$bWiX t<en -a3:#aWiX$bWiX; en"; writeln( s*-a s*pra1etelor#/,s,/ cea -ai -are s*pra1ata#/,-a3!; en"0 Problema 15 var 3: arrayW2002((X o1 real; n,i,: integer; s,-: real; begin write( n#/!; rea"(n!; writeln( intro"* n*-erele/!; 1or i:#2 to n "o rea"(3WiX!; s:#(; Ise calculeza suma tuturor numerelorJ 1or i:#2 to n "o s:#s%3WiX; 1or i:#2 to n "o begin -:#(s43WiX!6(n42!; Ise calculeaza media celorlalte n-1 elementeJ 3WiX:#en"; 1or i:#2 to n "o write(3WiX:2(:.!; en"0 Problema 16 var c: arrayW2002((X o1 longint; n,i: integer; s: longint; 1av: boolean; begin write( cati copii@/!; rea"(n!; '.

writeln( intro"* valorile ca"o*rilor/!; 1or i:#2 to n "o rea"(cWiX!; s:#(; 1or i:#2 to n "o s:#s%cWiX; writeln( >os*l a c<elt*it ,s$7,/ -osi/!; 1av:#1alse; 1or i:#2 to n "o i1 cWiXOs4cWiX t<en begin 1av:#tr*e; writeln( GE ,i! en"; i1 not 1av t<en writeln( NU/!; en"0 Problema 17 var t: arrayW2002((X o1 integer; c,"i1,-a3,n,i,: integer; begin write( cate trepte@/!; rea"(n!; writeln( intro"* inalti-ile treptelor /!; 1or i:#2 to n "o rea"(tWiX!; c:#(; -a3:#4-a3int; 1or i:#2 to n42 "o begin "i1:#tWi%2X4tWiX; i1 "i1O2 t<en inc(c!; i1 -a3M"i1 t<en -a3:#"i1; en"; writeln( pitic*l are nevoie "e ,c,/ pastile/!; writeln( "i1erenta -a3i-a#/,-a3!; en"0 "rdonarea elementelor unui vector -' *e dau n numere reale * se afieze n ordine cresctoare 0' *e d un vector cu n componente ntregi *e cere s se afieze primele , componente n ordine cresctoare iar celelalte n ordine descresctoare Exemplu: n=/ D=$ irul 2$ 12 18 % 0 2$ & se va a'i a 12 18 2$ 2$ & % 0 9' 1 numere naturale introduse de la tastatur s se afieze astfel" numerele pare n ordine cresctoare i cele impare n ordine descresctoare Exemplu: pentru n=/ i irul 2 & $ 1 8 & % se va a'i a 2 1 $ & % & 8. :' * se verifice dac n numere date formeaz o mulime, ordonnd elementele 5' !rin ordonarea elementelor unui vector format din n caractere, s se afieze de c.te ori apare fiecare caracter ;' * se verifice dac doi vectori cu aceeai lungime au aceleai elemente, ordonnd am$ii vectori n preala$il =' *e cere s se interclaseze dou iruri de numere reale, ordonate cresctor !rin interclasare se nelege crearea unui nou ir ordonat , format din elementele irurilor date 3' Cunosc.nd numele i nlimea a n elevi, nN/-66, s se afieze numele acestora n ordinea descresctoare a nlimii Re olvri: Problema 1 !r"onarea prin inversiuni var a: arrayW2002((X o1 integer; i,3,n: integer; sortat: boolean; begin write( n#/!; rea"(n!; writeln( intro"* n*-erele/!;1or i:#2 to n "o rea"(aWiX!; repeat sortat:#tr*e; 1or i:#2 to n42 "o i1 aWiXOaWi%2X t<en begin '9

3:#aWiX; aWiX:#aWi%2X; aWi%2X:#3; sortat:#1alse en"; *ntil sortat; writeln( sir*l or"onat crescator:/!; 1or i:#2 to n "o write(aWiX::!; en"0 !r"onarea prin sele#$ie %"eterminarea min& var a: arrayW2002((X o1 integer; i,5,n,-in,3,p-in: integer; begin write( n#/!; rea"(n!; writeln( intro"* n*-erele/!;1or i:#2 to n "o rea"(aWiX!; 1or i:#2 to n42 "o begin -in:#aWiX; p-in:#i; 1or 5:#i%2 to n "o i1 -inOaW5X t<en begin -in:#aW5X; p-in:#5 en"; 3:#aWp-inX; aWp-inX:#aWiX; aWiX:#3; en"; writeln( sir*l or"onat crescator:/!; 1or i:#2 to n "o write(aWiX::!; en"0 Problema 2 var a: arrayW2002((X o1 integer; n,i,,,8: integer; s: boolean; begin write( n#/!; rea"(n!; writeln( intro"* n*-erele !; 1or i:#2 to n "o rea"(aWiX!; write( ,#/!; rea"(,!; repeat s:#tr*e; 1or i:#2 to ,42 "o i1 aWiXOaWi%2X t<en begin 8:#aWiX;aWiX:#aWi%2X;aWi%2X:#8;s:#1alse en"; *ntil s; repeat s:#tr*e; 1or i:#,%2 to n42 "o i1 aWiXMaWi%2X t<en begin 8:#aWiX;aWiX:#aWi%2X;aWi%2X:#8;s:#1alse en"; *ntil s; writeln( sir*l in no*a or"ine/!; 1or i:#2 to n "o write(aWiX:7!; en"0 Problema 3 var a: arrayW2002((X o1 integer; n,i,5,-in,8,-a3,p-in,p-a3: integer; begin write( n#/!; rea"(n!; writeln( intro"* n*-erele !; 1or i:#2 to n "o rea"(aWiX!; 1or i:#2 to n42 "o begin Iordonare cu metoda determinarii min (max)J i1 aWiX -o" 2#( t<en begin -in:#aWiX; p-in:#i; 1or 5:#i%2 to n "o i1 (-inOaW5X! an" (aW5X -o" 2#(! t<en begin -in:#aW5X; p-in:#5 en"; 8:#aWiX; aWiX:#aWp-inX; aWp-inX:#8; en" else begin -a3:#aWiX; p-a3:#i; 1or 5:#i%2 to n "o i1 (-a3MaW5X! an" o""(aW5X! t<en ''

begin -a3:#aW5X; p-a3:#5 en"; 8:#aWiX; aWiX:#aWp-a3X; aWp-a3X:#8; en"; en"; writeln( sir*l in no*a aran5are !; 1or i:#2 to n "o write(aWiX:7!; en"0 Problema 4 var a: arrayW2002((X o1 integer; n,i,3: integer; s: boolean; begin write( n#/!; rea"(n!; writeln( intro"* n*-erele !; 1or i:#2 to n "o rea"(aWiX!; repeat s:#tr*e; 1or i:#2 to n42 "o i1 aWiXOaWi%2X t<en begin 3:#aWiX; aWiX:#aWi%2X; aWi%2X:#3; s:#1alse en"; *ntil s; s:#tr*e; 1or i:#2 to n42 "o i1 aWiX#aWi%2X t<en s:#1alse; i1 s t<en writeln( -*lti-e/! else writeln( n* este -*lti-e/!; en"0 Problema 5 var a: arrayW2002((X o1 c<ar; n,I,c,5: integer; s: boolean; 3: c<ar; begin write( n#/!; rea"ln(n!; writeln( intro"* caracterele !; 1or i:#2 to n "o rea"ln(aWiX!; repeat Iordonez crescator sirul de caractereJ s:#tr*e; 1or i:#2 to n42 "o i1 aWiXOaWi%2X t<en begin 3:#aWiX; aWiX:#aWi%2X; aWi%2X:#3; s:#1alse en"; *ntil s; i:#2; repeat Iparcurg sirul prin doua cicluriJ c:#2; 5:#i%2; w<ile (aW5X#aWiX! an" (5M#n! "o begin inc(5!; inc(c! en"; writeln( caracter*l ,aWiX, apare "e ,c,/ ori/!; i:#5; *ntil iOn; en"0 Problema 6 var a,b: arrayW2002((X o1 integer; n,i: integer; e: boolean; begin write( n*-ar ele-ente /!; rea"(n!; writeln( intro"* ele-entele pri-*l*i sir/!; 1or i:#2 to n "o rea"(aWiX!; writeln( intro"* ele-entele cel*i "e al "oilea sir/!; 1or i:#2 to n "o rea"(bWiX!; repeat Iordonez crescator primul sirJ s:#tr*e; 1or i:#2 to n42 "o i1 aWiXOaWi%2X t<en begin 3:#aWiX; aWiX:#aWi%2X; aWi%2X:#3; s:#1alse en"; *ntil s; repeat Iordonez crescator al doilea sirJ s:#tr*e; '7

1or i:#2 to n42 "o i1 aWiXOaWi%2X t<en begin 3:#bWiX; aWiX:#bWi%2X; bWi%2X:#3; s:#1alse en"; *ntil s; e:#tr*e; 1or i:#2 to n "o Icompar element cu element cele doua siruriJ i1 aWiXMObWiX t<en e:#1alse; i1 e t<en writeln( sir*ri egale/! else writeln( sir*ri "i1erite/!; en"0 Problema 7 var a,b,c: arrayW2002((X o1 integer; n,-,i,5,,: integer; begin write( n*-ar ele-ente "in pri-*l sir /!; rea"(-!; write( n*-ar ele-ente "in al "oilea sir /!; rea"(n!; write( ele-entele sir*l*i a or"onate crescator !;1or i:#2 to - "o rea"(aWiX!; write( ele-entele sir*l*i b or"onate crescator !;1or i:#2 to n "o rea"(bWiX!; 1or i:#2 to -%n "o cWiX:#(; i:#2; 5:#2; ,:#2; Iindicii ectorilor a,b,cJ repeat i1 aWiXM#bW5X t<en begin cW,X:#aWiX; inc(i! en" else begin cW,X:#bW5X; inc(5! en"; inc(,!; *ntil (iO-! or (5On!; w<ile (iM#-! "o begin cW,X:#aWiX; inc(i!; inc(,! en"; Ise copiaza elem. ramase in aJ w<ile (5M#n! "o begin cW,X:#bW5X; inc(5!; inc(,! en"; Ise copiaza elem. ramase in bJ writeln( sir*l interclasat:/!; 1or ,:#2 to -%n "o write(cW,X!,/ !; en"0 Problema 8 var <: arrayW2002((X o1 integer; e: arrayW2002((X o1 string; 8,n,i: integer; s: boolean;3: string; begin write( n# /!; rea"(n!; writeln( n*-e elev, inalti-e:/!; 1or i:#2 to n "o begin rea"ln(eWiX!; rea"ln(<WiX!; en"; repeat s:#tr*e; 1or i:#2 to n42 "o i1 <WiXM<Wi%2X t<en begin 8:#<WiX; <WiX:#<Wi%2X; <Wi%2X:#8; s:#1alse 3:#eWiX; eWiX:#eWi%2X; eWi%2X:#3 en"; *ntil s; writeln( N*-e elev/:2(, Inalti-e/:9!; 1or i:#2 to n "o writeln(eWiX:2(, <WiX:9!; en"0 Pregtire pentru faza naional a "1I i 1I la clasa a 4+a -' Bn Orintia, e7ist o floare care face strict x semine Iiecare sm.n este fertil i n decurs de un an, din ea se dezvolt c.te o floare care va face alte x semine fertile <up , ani, florile orintiene dispar, dar rm.n urmaele lor Jrdinarul !erolino, pe care l intereseaz c.te flori vor fi n grdina lui dup z ani, tiind c n primul an au fost f flori de tipul amintit, v roag s l a%utai la numrarea florilor <ate de intrare f " numrul iniial de flori ':

0'

9'

:'

5'

;'

='

3'

A'

7 " numrul de semine produse de fiecare floare 4 " durata de via a unei flori z " anul n care grdinarul face recensm.ntul <ate de ieire " t " numrul de flori aflate n grdin la sf.ritul anului z 1estric)ii:1=='==10, 1==x==6, 1==D==&, 1=-=& Exemplu: (ntrri '=1 x=2 D=$ -=$ (e ire 8 'l"ri Explica)ie: anul 1 1 'l"are 2 semin)e anul 2 $ 'l"ri 6 semin)e anul $ 8 'l"ri 3$ 7 6 G 14 &CDI, clasa a V-a, *atu-?are, 066:' Dicu are 1 disc)ete cu aceeai capacitate -:66 Yo <isc)etele sunt numerotate cu -, 0, L, D i pe fiecare disc)et are o poriune din ea ocupat cu diverse fiiere <isc)etele -, 0, L, D au ocupate o5, o%, 6, o1 Yo fiecare Dicu afl c prietenul su Jeorge are un %oc frumos de dimensiune x Yo <up multe negocieri cu Jeorge, Dicu are acceptul de a copia %ocul Cerin" <in cele 1 disc)ete alegei c.t mai puine pentru a copia %ocul &dac este posi$il' C.nd nu este posi$il afiai mesa%ul Du se poate copia %oculR &CDI *atu-?are 0669 clasa a V-a' +fiai primele dou numere prime alturate dintre cele n numere ntregi date C.nd acestea nu e7ist, afiai mesa%ul" fr soluie & nN/ 06' Exemplu: ?entru n=/ i numerele 1 18 %1 1$ 9 / & se va a'i a perechea %1 1$ pentru n=6 i numerele 2 8 / 2 & % se va a'i a perechea / 2 pentru n=& i numerele % 12 8 & %se va a'i a mesa0ul 'r s"lu)ie &CDI *atu-?are 0660 clasa a V-a' !entru un n natural dat, sa se determine toate numerele prime mai mici sau egale cu n pentru care oglinditul corespunztor este tot un numr prim &nN-66' Exemplu: n=20, printre numerele #site sunt i 1$, cu "#linditul $1, i 1/, cu "#linditul /1. &CDI !iatra-Deam 066-, clasa a V-a' @n sc)ior i dorete un traseu care s conin cel puin un pisc &v.rf' i cel puin o vale <ac traseul este caracterizat &ca altitudini relative' de cifrele componente ale unui numr dat, a%utai-l s sta$ileasc dac l parcurge sau nu Exemplu: traseul &/%& p"ate 'i parcurs, traseele 12$ i 68&&6 nu p"t 'i parcurse. &CDI !iatra-Deam 066-, clasa a V-a' *e consider un ir cu n numere naturale mai mici dec.t 90666, n N 96 *e cere" a' s se afieze un numr din ir care are n scrierea sa c.t mai multe cifre distincte <ac e7ist mai multe numere cu aceast proprietate se va afia primul element dintre ele $' s se determine o succesiune cu numr ma7im de componente din ir care are proprietatea c fiecare component a succesiunii are acelai numr de cifre distincte n scrierea sa Exemplu: pentru n=9 i irul 86&, 1&, 1%%, 2$1, 1&91, 1998, 62$&, 1%, %201se va a'i a a4 62$& b4 2$1 1&91 1998 &CDI -AA3 clasa a V-a' *e citesc n, numr natural mai mic dec.t -66, i n numere naturale nenule mai mici dec.t 96666 *e cer" a' ultima cifr a numrului 7Z-[27Z0[2 7Zn[ $' ultima cifr a numrului 7Z-[ 7Z0[27Z9[2 7Zn[ Exemplu: pentru n=$ i numerele 11 % $ se va a'i a a4 8 b4 1 &CDI -AA3 clasa a V-a' *e dau patru numere naturale a, b, c, d * se afieze su$ form de fracie ireducti$il cea mai mic fracie su$unitar i cea mai mic fracie supraunitar folosind cele patru numere Exemplu: pentru a=2 b=& c=6 d=16 se v"r a'i a 'rac)iile 1>8 i 6>& &CDI *inaia -AA= clasa a V-a' *e consider n st.lpi de nlimi )Z-[, )Z0[, )Z9[ )Zn[ metri Ma $aza fiecrui st.lp se afl c.te un melc codificat prin numrul st.lpului Iiecare melc i urc ziua p7i8 metri i '&

co$oar noaptea 97i8 metri &pZi[F/\Zi[' * se afieze melcii n ordinea n care ating v.rfurile st.lpilor Exemplu: pentru n=$ i hH1I=2 pH1I=1 JH1I=0, hH2I=% pH2I=% JH2I=%, hH$I=& pH$I=1 JH$I=0 se va a'i a 2 1 $. &CDI *inaia -AA= clasa a V-a' -6'Iie + un ir de n numere naturale, 3N/nN/05;, i p un numr natural dat a' s se precizeze dac p este numr prim $' s se afieze de c.te ori apare p n + i pe ce poziii c' dac numrul p nu apare n +, s se nsereze numrul p pe o poziie ,, -N/4N/n, unde , este dat de la tastatur, deplas.nd spre dreapta elementele aflate pe poziiile 42%, 6N/%N/n-42&CDI Buteni -AA: clasa a V-a' --'<e la tastatur se citesc n elemente ale unui ir de numere * se scrie un program care intersc)im$ dou secvene de lungimi l5 i l% care ncep din poziiile p5, reapectiv p% #lementele care nu sunt cuprinse n cele dou secvene pot fi mutate astfel nc.t intersc)im$area s se poat face #7emplu" pentru n/A, irul -,0,9,:,5,;,=,3,A, p-/0 l-/0 p0/; l0/9, rezultatul este - ; = 3 : 5 0 9 A &CDI Dvodari -AA9 clasa a V-a' -0'<.ndu-se dou numere n, , s se determine 01, numere prime situate n centrul listei numerelor prime din intervalul Z-, n[, n cazul n care n interval este un numr par de numere prime, i 01,-- numere din centrul listei de numere prime, n cazul n care numrul de numere prime este impar <ac numrul 01 , & resp 01,--' este mai mare dec.t numrul de numere prime din intervalul considerat, atunci se vor afia toate numerele prime din interval >estricii" -N/nN/-6666, -N/4N/96, 4Nn Exemplu: n=21 D=2 se va a'isa & / 11 1$ & ODI, clasa a V-a, Iocani, 0669' -9'Bn fiecare zi nelucrtoare din sptm.n !inoc)io spune c.te o minciun datorit creia nasul acestuia crete cu c.te p cm pe zi *.m$ta i duminica, c.nd vine $unicul Jepeto acas, pentru a nu-l supra prea tare, !inoc)io reuete s nu spun nici o minciun, $a c)iar uit.ndu-se n oglind o$serv c n fiecare din aceste zile lungimea nasului su scade cu c.te - cm pe zi C.nd ncepe o nou sptm.n, rm.n.nd singur acas !inoc)io continu irul minciunilor Care este dimensiunea nasului lui !inoc)io dup , zile &zilele ncep cu luni ' tiind c iniial nasul su msura n cmC Exemplu: pentru n=2 p=1 D=8 se va a'i a 6 cm. &ODI 0669 clasa a V-a' -:'Jigel este un tip ciudat Mui i place s i impresioneze colegii e7prim.nd duratele numai n secunde <e e7emplu, dac l vei ntre$a c.t e ceasul el i va rspunde c.te secunde s-au scurs de la ora 6 66 din ziua respectiv <ac ai s-l ntre$i ce v.rst are, el i va rspunde c.te secunde au trecut de c.nd s-a nscut Colegii lui Jigel au )otr.t c nu e cazul s se lase impresionai8 ca urmare au nevoie de un program care s citeasc de la tastatur un numr natural 1 &D0666666666' care reprezint v.rsta lui Jigel e7primat n secunde i care va afia pe ecran c.i ani, c.te luni i c.te zile are Jigel &orele i minutele r mase sunt considerate nesemnificative' *criei acest program pentru colegii lui JigelR Du uitai c anii $iseci sunt cei divizi$ili cu :, dar nedivizi$ili cu -66 sau divizi$ili cu :66 <e e7emplu -AA0 i 0666 au fost ani $iseci <ar anul -A66 nu a fost $isect +nii $iseci au 9;; de zile, spre deose$ire de ceilali care au doar 9;5 Considerm c ne aflm n ultima zi de coal &-5 iunie 0660' Exemplu :?entru ,=69206%00 pr"#ramul va a'i a :Ki#el are 2 ani, 2 luni si 10 -ile. &ODI Jlciuc 0660 clasa a V-a' 2'! Iie un numr p &-p:' dat de la tastatur * se scrie pe ecran toate numerele n de p cifre cu proprietile urmtoare" -' n-- i n2- sunt numere prime 0' suma cifrelor lui n este tot un numr prim Fe exemplu, pentru p=2, numrul n=12 'ace parte din ';

s"lu)ie de"arece n51=11, n71=1$ sunt prime iar suma ci'rel"r lui n este 172=$, t"t un numar prim <ac nu e7ist nici un numr n cu p cifre care s verifice aceste proprieti, se va da un mesa% &?arele !remiu !+CO, 066-' -;' Copa $ate la poarta Orintiei, dar poarta e programat s nu se desc)id dec.t dup ce se introduc, ntr-o caset cu s spaii &9N/sN/-6', s cifre strigate de portar !ortarul a strigat G-H, Copa a $utonat -, n primul spaiu de la st.nga la dreapta !ortarul a strigat G6H, i n timp ce Copa $utona 6 n spaiul al doilea, - a devenit 0 n spaiul anterior !ortarul a strigat G=H Copa scria = n spaiul al treilea, iar n primul spaiu 0 devine 9, iar n al doilea spaiu 6 devine - ,i tot aa, p.n la al s-lea spaiu, c.nd Copa reuete s scrie toate cifrele i apare tot codul ,i poarta se desc)ide, dar L surpriz, mai era o poart, iar codul acesteia, 1, era cel mai mic numr format din c.t mai multe dintre cifrele codului anterior, astfel nc.t nici o cifr s nu se repete O$s " <up A urmeaz 6 <isperat de at.ta informatizare, Copa v cere spri%inul s calculai cel de-al doilea cod D Exemplu: Fate de intrare s=10 ci're stri#ate de p"rtar: 1 0 / 9 / $ 6 9 % 6 Fate de ie ire 102%&6/89 &ODI Iocani 0669 clasa a V-a ' Rspunsuri: Problema 1 var 1,an,3,,,8,se-: integer; t: array W200'X o1 integer; begin write( intro"* valorile pentr* 1,3,,,8:/!; rea"(1,3,,,8!; tW2X:#1; 1or an:#2 to 8 "o begin tWanX:#tWan42X%se-; i1 anO#, t<en tWanX:# tWanX 4 tWan4,%2X; se-:# tWanX $ 3; en"; writeln(tW8X,/ 1lori ,se-,/ se-inte/!; en"0 Problema 2 var o,":array W2002((X o1 integer; i,5,s,8,n,3: integer; sortat:boolean; begin write( n#/!; rea"(n!; writeln( intro"* spatiile oc*pate in 1iecare "isc<eta/!; 1or i:#2 to n "o begin rea"(oWiX!; "WiX:#i en"; Iin d se memoreaza numarul disc"eteiJ write( -ari-e 5oc#/!; rea"(3!; repeat Isortez cresc. sirul capacitatilor ocupate, facand in ersiunile coresp. si in sirul dJ sortat:#tr*e; 1or i:#2 to n42 "o i1 oWiXOoWi%2X t<en begin 8:#oWiX; oWiX:#oWi%2X; oWi%2X:#8; 8:#"WiX; "WiX:#"Wi%2X; "Wi%2X:#8; sortat:#1alse en"; *ntil sortat; s:#(; i:#2;Iinsumez spatiile libere pana la al. lui x sau pana la terminarea disc"etelorJ w<ile (sM3! an" (iM#n! "o begin s:#s%29((4oWiX; i:#i%2 en"; i1 sO3 t<en 1or 5:#2 to i42 "o writeln( "isc<eta nr0/,"W5X! 7(

else writeln( N* se poate copia 5oc*l/!; en"0 Problema 3 var p:array W2002((X o1 integer; i,n,": integer; gata,pri-2,pri-2: boolean; begin write( n#/!; rea"(n!; writeln( intro"* n*-erele/!; 1or i:#2 to n "o rea"(pWiX!; gata:#1alse; i:#2; repeat pri-2:#tr*e; pri-2:#tr*e; i1 (pWiX#2! or (pWiX#(! t<en pri-2:#1alse else 1or ":#2 to pWiX "iv 2 "o i1 pWiX -o" " #( t<en pri-2:#1alse; i1 pri-2 t<en i1 (pWi%2X#2! or (pWi%2X#(! t<en pri-2:#1alse else 1or ":#2 to pWi%2X "iv 2 "o i1 pWi%2X -o" " #( t<en pri-2:#1alse; i1 pri-2 an" pri-2 t<en gata:#tr*e else i:#i%2; *ntil gata or (iOn!; i1 gata t<en writeln(pWiX,/ ,pWi%2X! else writeln( 1ara sol*tie/!; en"0 Problema 4 var n,i,",og,w,c: integer; pri-, pri-og: boolean; begin write( n#/!; rea"(n!; 1or i:#2 to n "o begin pri-:#tr*e; 1or ":#2 to i "iv 2 "o i1 i -o" "#( t<en pri-:#1alse; i1 pri- t<en begin og:#(; w:#i; repeat c:#w -o" 2(; og:#og$2(%c; w:#w "iv 2( *ntil w#(; pri-og:#tr*e; 1or ":#2 to og "iv 2 "o i1 og -o" "#( t<en pri-og:#1alse; i1 pri-og t<en write(i,/ !; en"; en"; en"0 Problema 5 var c:arrayW200;X o1 byte; i,5:byte; n longint; vale,var1: boolean; begin write( n*-ar#/!; rea"(n!; i:#2; vale:#1alse; var1:#1alse; repeat cWiX:#n -o" 2(; i:#i%2; 72

n:#n "iv 2( *ntil n#(; 1or 5:#2 to i42 "o begin i1 (cW5XMcW5%2X! an" (cW5XMcW542X! t<en vale:#tr*e; i1 (cW5XOcW5%2X! an" (cW5XOcW542X! t<en var1:#tr*e; en"; i1 vale an" var1 t<en writeln( poate 1i parc*rs/! else writeln( n* poate 1i parc*rs/!; en"0 Problema 6 var 3,c: arrayW200.(X o1 integer; i, -a3,po8, n,ci1ra,na,-,lc,ls:integer; begin write( n#/!; rea"(n!; writeln( intro"* n*-erele/!; 1or i:#2 to n "o rea"(3WiX!; write( a! !; 1or i:#2 to n "o Iconstruiesc ectorul c al numarului de cifre distincte al fiecarui numar din xJ begin cWiX :#( ; 1or ci1ra :#( to ; "o begin nc :#( ; - :#3WiX ; repeat i1 ci1ra# - -o" 2( t<en nc :#nc%2 ; - :#- "iv 2( ; *ntil -#( ; i1 ncMO( t<en cWiX:#cWiX%2 ; en" ; en"; -a3:#(; Idetermin aloarea maximala in c si prima pozitie a saJ 1or i:#2 to n "o i1 -a3McWiX t<en begin -a3:#cWiX; po8:#i en"; writeln( cele -ai -*lte ci1re "istincte le are n*-ar*l ,3Wpo8X!; write( b! cea -ai l*nga secventa "e ele-ente c* acelasi n*-ar "e ci1re !; lc:#2; ls:#(; Ilc=lungime curenta, ls=lungime solutieJ 1or i:#2 to n42 "o i1 cWiX#cWi%2X t<en lc:#lc%2 else begin i1 lcOls t<en begin ls:#lc; po8:#i4lc%2 en"; lc:#2 en"; i1 lcOls t<en begin ls:#lc;po8:#n4lc%2 en"; Itestul pentru ultima sec entaJ 1or i:#po8 to po8%ls42 "o write(3WiX,/ !; en"0 Problema 7 var 3:arrayW2002((X o1 integer; i,s,n,*c,perioa"a,r: integer; s*-a,pro"*s: longint; begin write( n#/!; rea"(n!; writeln( intro"* n*-erele/!; 1or i:#2 to n "o rea"(3WiX!; write( a! !; s:#(; 1or i:#2 to n "o s:#s%3WiX -o" 2(; 72

writeln( s -o" 2(!; write( b! !; s*-a:#(; 1or i:#2 to n "o s*-a:#s*-a%3WiX; *c:#3W2X -o" 2(; p:#3W2X; i:#2; repeat Idetermin perioada ultimei cifre a puterilor lui x,1-# p:#p$3W2X; i:#i%2; *ntil p -o" 2(#*c; perioa"a:#i42; r:#s*-a -o" perioa"a; i1 r#( t<en *c:#(p "iv 3W2X! -o" 2( else begin p:#2; 1or i:#2 to r "o p:#p$3W2X; *c:#p -o" 2( en"; writeln(*c! en"0 Problema 8 var a,b,c,",3,y,r,n2,n2: integer; sort: boolean; -,n,p: real; begin write( a,b,c,"#/!; rea"(a,b,c,"!; repeat Iaran&ez crescator numerele in ordinea a b c d J sort:#tr*e; i1 aOb t<en begin 3:#a; a:#b; b:#3; sort:#1alse en"; i1 bOc t<en begin 3:#b; b:#c; c:#3; sort:#1alse en"; i1 cO" t<en begin 3:#c; c:#"; ":#3; sort:#1alse en"; *ntil sort; Icea mai mica fractie subunitara este a.d/ aflu cmmmdc al lui a si dJ 3:#a; y:#"; repeat r:#3 -o" y; 3:#y; y:#r *ntil r#(; writeln( 1ractia s*b*nitara -ini-a#/,a "iv 3,/6/," "iv 3!; Iaflu cea mai mica fractie supraunitara ca minimul dintre d.c,c.b si b.aJ -:#b6a; n:#c6b; p:#"6c; i1 (-M#n! an" (-M#p! t<en begin n2:#b;n2:#a en"; i1 (nM#-! an" (nM#p! t<en begin n2:#c;n2:#b en"; i1 (pM#n! an" (pM#-! t<en begin n2:#";n2:#c en"; 3:#n2; y:#n2; repeat r:#3 -o" y; 3:#y; y:#r *ntil r#(; writeln( 1ractia s*pra*nitara -ini-a#/,n2 "iv 3,/6/,n2 "iv 3!; en"0 Problema 9 var <,p,?,8:arrayW2002((X o1 integer; i,-in,n-,n,-elc,*: integer; begin 7.

write( n#/!; rea"(n!; 1or i:#2 to n "o begin write( <,p,? pentr* -elc*l ,i,/ !;rea"(<WiX,pWiX,?WiX!; 8WiX:#( en"; I ariabila u retine la ce inaltime se afla melcul i in fiecare zi pana a&unge la capat, ectorul z memoreaza numarul de zile necesare fiecarui melc sa a&unga susJ 1or i:#2 to n "o begin Iconstruiesc ectorul zJ *:#(; repeat *:#*%pWiX; i1 *M<WiX t<en *:#*4?WiX; 8WiX:#8WiX%2; *ntil *O#<WiX; en"; n-:#2; Iafisez elementele lui z si pozitia pe care se afla in ordine crescatoare, fara sortareJ repeat -in:#-a3int; 1or i:#2 to n "o i1 (-inO8WiX! an" (8WiXMO(! t<en begin -in:#8WiX; -elc:#i en"; write(-elc,/ *rca in ,-in,/ 8ile/!; 8W-elcX:#(; n-:#n-%2 *ntil n-On; en"0 Problema 10 var a: arrayW2002'(X o1 integer; p,i,n,c,,: integer; pri-:boolean; begin write( n#/!; rea"(n!; writeln( intro"* n*-erele/!; 1or i:#2 to n "o rea"(aWiX!; write( p#/!; rea"(p!; pri-:#tr*e; i1 (p#2! or (p#(! t<en pri-:#1alse else 1or i:#2 to p "iv 2 "o i1 p -o" I#( t<en pri-:#1alse; i1 pri- t<en writeln( a! n*-ar pri-/! else writeln( a! n*-ar nepri-/!; c:#(; 1or i:#2 to n "o i1 aWiX#p t<en c:#c%2; i1 cMO( t<en begin write( b! ,p,/ apare "e ,c,/ ori pe po8itiile !; 1or i:#2 to n "o i1 aWiX#p t<en write(i,/ ! en" else begin writeln( b! n* apare/!; write( ,#/!; rea"(,!; 1or i:#n "ownto , "o aWi%2X:#aWiX; aW,X:#p; 1or i:#2 to n%2 "o write(aWiX,/ !; en"; en"0 Problema 11 var 3:arrayW2002((X o1 integer; e,l2,p2,l2,p2,i,5,,,a,n: integer; begin write( n#/!; rea"(n!; writeln( intro"* n*-erele !; 1or i:#2 to n "o rea"(3WiX!; write( p2,l2#/!; rea"(p2,l2!; write( p2,l2#/!; rea"(p2,l2!; i1 p2Mp2 t<en begin a:#p2;p2:#p2;p2:#a;a:#l2;l2:#l2;l2:#a en"; Ip1 este pozitia mai din stangaJ 79

Imut elemetele din al doilea subsir, pe rand, prin deplasarea spre dreapta a celorlalte numereJ i:#p2; 5:#p2; e:#2; Ii=pozitia de plecare, &=pozitia de sosire, e=numar elemente mutateJ repeat a:#3WiX; 1or ,:#i42 "ownto 5 "o 3W,%2X:#3W,X; 3W5X:#a; inc(i!; inc(5!; inc(e!; *ntil eOl2; i:#p2%l2%l2;Ila fel, mut in continuare elementele dintre cele doua sec ente, daca existaJ 5:#p2%l2; e:#2; i1 p24p24l2O( t<en begin repeat a:#3WiX; 1or ,:#i42 "ownto 5 "o 3W,%2X:#3W,X; 3W5X:#a; inc(i!; inc(5!; inc(e!; *ntil eOp24p24l2; en"; 1or i:#2 to n "o write(3WiX,/ !; en"0 Problema 12 var p:arrayW2002((X o1 integer; Ipentru memorarea numerelor prime gasiteJ n*sescri*,n,,,i,c,": integer; pri-: boolean; begin write( n,,#/!; rea"(n,,!; c:#( Iretine cate numere prime suntJ 1or i:#2 to n "o begin pri-:#tr*e; 1or ":#2 to I "iv 2 "o i1 i -o" "#( t<en pri-:#1alse; i1 pri- t<en begin inc(c!;pWcX:#i en"; en"; i1 ((c -o" 2#(! an" (2$,Oc!! or ((c -o" 2#2! an" (2$,42Oc!! t<en n*sescri*:#( else i1 c -o" 2#( t<en n*sescri*:#(c42$,! "iv 2 else n*sescri*:#(c42$,%2! "iv 2; 1or i:# n*sescri*%2 to c4n*sescri* "o write(pWiX,/ !; en"0 Problema 13 var p,l,n,,,i: integer; begin write( l*ngi-e initiala#/!;rea"(n!; write( c* cat creste@/!;rea"(p!; write( cate 8ile@/!; rea"(,!; l:#n; 1or i:#2 to , "o i1 (i -o" 7MO(! an" (i -o" :MO(! t<en l:#l%p else l:#l42; writeln( l*ngi-e nas#/,l,/ c-/!; en"0 Problema 14 var s:longint; o,8,an,8ile,a,l*ni:integer; begin write( n*-ar sec*n"e#/!; rea"(s!; 7'

o:#s "iv .7((; 8:#o "iv 29; an:#8 "iv .7'; 8ile:#8 -o" .7'; 1or a:#2((2 "ownto 2((24an "o i1 ((a -o" 9#(! an" (a -o" 2((MO(!! or (a -o" 9((#(! t<en "ec(8!; l*ni:#8ile "iv .(; 8ile:#8ile -o" .(; writeln(an,/ ani ,l*ni,/ l*ni ,8ile,/ 8ile !; en"0 Problema 15 var n,p,a,b,",3,s: longint; pri-2,pri-2,pri-: boolean; begin write( p#/!; rea"(p!; Iformez capetele a,b ale inter . ,1(0(p-1),1(0p-1- a nr. cu p cifreJ a:#2; 1or ":#2 to p42 "o a:#a$2(; b:#a$2(42; 1or n:#a to b "o begin pri-2:#tr*e; 1or ":#2 to (n42! "iv 2 "o i1 (n42! -o" "#( t<en pri-2:#1alse; pri-2:#tr*e; 1or ":#2 to (n%2! "iv 2 "o i1 (n%2! -o" "#( t<en pri-2:#1alse; i1 pri-2 an" pri-2 t<en begin s:#(; 3:#n; repeat s:#s%3 -o" 2(; 3:#3 "iv 2(; *ntil 3#(; pri-:#tr*e; 1or ":#2 to s "iv 2 "o i1 s -o" "#( t<en pri-:#1alse; i1 pri- t<en write(n,/ !; en"; en"; en"0 Problema 16 var c,nr: arrayW2002(X o1 byte; s,i,5,,,a: integer; este: boolean; begin write( cate spatii are caseta@/!; rea"(s!; write( intro"* ci1rele strigate "e portar /!; 1or i:#2 to s "o begin rea"(cWiX!; 1or 5:#2 to i42 "o begin inc(cW5X; i1 cW5X#2( t<en cW5X:#( en"; en"; ,:#2; Iformez un ector cu cifrele din c luate in mod crescator, o singura dataJ 1or a:#( to ; "o begin este:#1alse; 1or 5:#2 to s "o i1 a#cW5X t<en este:#tr*e; i1 este t<en begin nrW,X:#a; inc(,! en"; en"; i1 nrW2X#( t<en begin nrW2X:#nrW2X; nrW2X:#( en"; write( n*-ar*l N#/!; 1or 5:#2 to ,42 "o write(nrW5X!; en"0

77

:eplasarea elementelor unui vector -' * se insereze cifra 6 pe prima poziie a unui vector dat, fr a utiliza un alt vector 0' *e introduc n numere n calculator * se rearan%eze elementele din ir astfel nc.t primul element al irului dat s apar pe ultima poziie 9' *e introduc n numere n ordine cresctoare i un numr , * se insereze acest numr n irul dat astfel nc.t s rm.n sortat cresctor :' !rin deplasarea spre st.nga a elementelor, s se elimine zerourile dintr-un ir numeric dat 5' * se aeze toate elementele egale cu o valoare v dintr-un ir de n numere date, la sf.ritul irului ;' *e introduc n litere * se realizeze o permutare circular spre dreapta a lor i s se afieze n noua ordine, alturate Exemplu: date n=% i a b c d se va a'i a d a b c . =' * se inverseze elementele egal deprtate de e7tremiti ale unui ir dat de numere reale Rspunsuri: Problema 1 var v: arrayW2002((X o1 integer; n,i: integer; begin write( n*-ar ele-ente# /!; rea"(n!; writeln( intro"* ele-entele /!; 1or i:#2 to n "o rea"(vWiX!; Ise face o deplasare a tuturor elementelor spre dreapta cu o pozitieJ 1or i:#n "ownto 2 "o vWi%2X:#vWiX; Ii=pozitia care se deplaseazaJ vW2X:#(; writeln( no*l sir:/!; 1or i:#2 to n%2 "o write(vWiX:7! en"0 Problema 2 var v: arrayW2002((X o1 integer; 3,n,i: integer; begin write( n*-ar ele-ente# /!; rea"(n!; writeln( intro"* ele-entele /!; 1or i:#2 to n "o rea"(vWiX!; 3:#vW2X; Ise face o deplasare spre stanga a elementelor, fara primulJ 1or i:#2 to n "o vWi42X:#vWiX; Ii=pozitia care deplaseazaJ vWnX:#3; Ise aseaza primul element la sfarsitJ writeln( no*l sir:/!; 1or i:#2 to n "o write(vWiX:7!; en"0 Problema 3 var v: arrayW2002((X o1 integer; ,,n,i: integer; begin write( n*-ar ele-ente# /!; rea"(n!; writeln( intro"* ele-entele, in or"ine crescatoare/!; 1or i:#2 to n "o rea"(vWiX!; write( ,#/!; rea"(,!; Ise cauta primul element mai mare decat ', pe pozitia lui se a aseza 'J i:#2; w<ile (vWiXM,! an" (iM#n! "o inc(i!; i1 iOn t<en vWn%2X:#, I' este mai mare decat toate numerele, se aseaza la sfarsitJ else begin 1or 5:#n "ownto i "o vW5%2X:#vW5X; Ideplasare spre dreapta J vWiX:#,; en"; writeln( no*l sir:/!; 1or i:#2 to n%2 "o write(vWiX::!; en"0 7:

Problema 4 var v: arrayW2002((X o1 integer; c,n,i,5: integer; begin write( n*-ar ele-ente /!; rea"(n!; writeln( intro"* ele-entele /!; 1or i:#2 to n "o rea"(vWiX!; c:#(; Ic=numarul elementelor nuleJ i:#2; repeat i1 vWiX#( t<en begin Ideplasare spre stanga a elementelor de dupa zeroJ 1or 5:#i%2 to n4c "o vW542X:#vW5X; inc(c!; en"; i1 vWiXMO( t<en inc(i!; Ise poate intampla sa a em mai multe ( consecuti e, se mareste i numai daca pe pozitia respecti a este un element nenulJ *ntil iOn4c; writeln( ele-entele nen*le:/!; 1or i:#2 to n4c "o write(vWiX::!; en"0 Problema 5 var a: arrayW2002((X o1 integer; v,n,i,5: integer; begin write( n*-ar ele-ente /!; rea"(n!; writeln( intro"* ele-entele /!; 1or i:#2 to n "o rea"(aWiX!; write(/v#/!; rea"(v!; 1or i:#2 to n "o i1 aWiX#v t<en begin Ideplasare spre stangaJ 1or 5:#i%2 to n "o aW542X:#aW5X; aWnX:#v; en"; write( no*l sir:/!; 1or i:#2 to n "o write(aWiX::!; en"0 Problema 6 var lit: arrayW2002((X o1 c<ar; i,n: integer; 3: c<ar; begin write( n#/!; rea"ln(n!; writeln( intro"* caracterele pe ran"/!; 1or i:#2 to n "o rea"ln(litWiX!; 3:#litWnX; 1or i:#n42 "ownto 2 "o litWi%2X:#litWiX; Ideplasare spre dreaptaJ litW2X:#3; 1or i:#2 to n "o write(litWiX!; en"0 Problema 7 var v: arrayW2002((X o1 real; 3: real; i,n: integer; begin write( n#/!; rea"(n!; writeln( intro"* n*-erele/!; 1or i:#2 to n "o rea"(vWiX!; 1or i:#2 to (n "iv 2! "o begin Ise intersc"imba elementele egal departate de capeteJ 3:#vWiX; vWiX:#vWn4i%2X; vWn4i%2X:#3 en"; 1or i:#2 to n "o write(vWiX:2(:2!; en"0 4erificarea unor proprieti

7&

-' *e introduc dou iruri de numere cu acelai numr de elemente * se verifice dac valorile lor, n ordinea dat, sunt proporionale 0' * se verifice dac un vector dat este monoton cresctor 9' * se caute un numr x printre n numere ntregi generate de calculator av.nd valori ntre 6 i -66 <ac se gsete valoarea respectiv s se afieze ultima poziie n care apare, dac nu se gsete, s se afieze mesa%ul Xnumar ine7istentH :' @n tren este format din n vagoane de clasa I-a i a II-a ,eful de tren nu vrea s fie mai mult de , vagoane de aceeai clas unul dup altul Introduc.ndu-se o aran%are a vagoanelor, s se testeze dac e7ist mai mult de , vagoane de acelai fel consecutive *e va afia un mesa% corespunztor Bn caz afirmativ, s se afieze i poziia de nceput a su$irurilor cu mai mult de , elemente de acelai fel 5' <ate dou iruri de numere, a cu n elemente i b cu m elemente, mN n, s se verifice dac b este su$ir al lui a ;' *e d un ir de numere reale * se verifice dac irul este o progresie aritmetic &diferena dintre oricare dou numere alturate este aceeai, de e7emplu" -,:,=,-6,-9' Rspunsuri: Problema 1 var a,b: arrayW2002((X o1 integer; n,i: integer; v: real; prop: boolean; begin prop:#tr*e; write( n*-ar ele-ente# /!; rea"(n!; writeln( intro"* ele-entele pri-*l*i sir /!; 1or i:#2 to n "o begin rea"(aWiX!; i1 aWiX#( t<en prop:#1alse; en"; writeln( intro"* ele-entele cel*i "e al "oilea sir /!; 1or i:#2 to n "o begin rea"(bWiX!; i1 bWiX#( t<en prop:#1alse; en"; i1 not prop t<en begin writeln( n* s*nt proportionale/!; <alt en"; v:#aW2X6bW2X; 1or i:#2 to n "o i1 aWiX6bWiXMOv t<en prop:#1alse; i1 prop t<en writeln( S*nt proportionale/! else writeln( N* s*nt proportionale/!; en"0 Problema 2 var a: arrayW2002((X o1 integer; n,i: integer; cresc: boolean; begin cresc:#tr*e; write( n*-ar ele-ente# /!; rea"(n!; writeln ( intro"* ele-entele sir*l*i/!; 1or i:#2 to n "o rea"(aWiX!; 1or i:#2 to n42 "o i1 aWiXOaWi%2X t<en cresc:#1alse; i1 cresc t<en writeln( sir crescator/! else writeln( sir*l n* e crescator/!; en"0 Problema 3 var a: arrayW2002((X o1 integer; n,i,3: integer; gasit: boolean; begin write( n*-ar ele-ente# /!; rea"(n!; ran"o-i8e; 1or i:#2 to n "o aWiX:#ran"o-(2(2!; write( valoarea ca*tata:/!; rea"(3!; gasit:#1alse; 1or i:#2 to n "o i1 aWiX#3 t<en gasit:#tr*e; i1 gasit t<en begin writeln( ele-ent e3istent/!; i:#n; w<ile aWiXMO3 "o "ec(i!; 7;

writeln( *lti-a po8itie ,i!; en" else writeln( n*-ar ine3istent/!; en"0 Problema 4 var v: arrayW200.(X o1 byte; n,i,,,nv: integer; gasit: boolean; begin write( n*-ar ele-ente# /!; rea"(n!; writeln( intro"* s*ccesi*nea vagoanelor !; 1or i:#2 to n "o rea"(vWiX!; write( ,#/!; rea"(,!; gasit:#1alse; i:#2; repeat nv:#2; i1 vWiX#vWi%2X t<en w<ile (vWiX#vWi%2X! an" (iM#n! "o begin inc(nv!; inc(i! en" else inc(i!; i1 nvO, t<en begin gasit:#tr*e; writeln( incepan" c* po8itia ,i%24nv! en" *ntil iOn; i1 not gasit t<en writeln( n* e3ista -ai -*lt "e ,,,/ vagoane cosec*tive "e aceeasi clasa/! else writeln( e3ista -ai -*lt "e ,,,/ vagoane "e aceeasi clasa/!; en"0 Problema 5 var a,b: arrayW2002((X o1 integer; n,-,,i,5: integer; s*bsir, este: boolean; begin write( n# /!; rea"(n!; writeln( ele-entele l*i a/!; 1or i:#2 to n "o rea"(aWiX!; write( -# /!; rea"(-!; writeln( ele-entele l*i b/!; 1or i:#2 to - "o rea"(bWiX!; s*bsir:#tr*e; 1or 5:#2 to - "o begin %se erifica daca fiecare element din b este in aJ este:#1alse; 1or i:#2 to n "o i1 bW5X#aWiX t<en este:#tr*e; i1 not este t<en s*bsir:#1alse; en"; i1 s*bsir t<en writeln( b este s*bsir al l*i a/! else writeln( b n* este s*bsir al l*i a/!; en"0 Problema 6 var a: arrayW2002((X o1 integer; n,r,i: integer; prog: boolean; begin write( n*-ar ele-ente# /!; rea"(n!; writeln( ele-entele sir*l*i:/!; 1or i:#2 to n "o rea"(aWiX!; prog:#tr*e; r:#aW2X4aW2X; 1or i:#2 to n42 "o i1 aWi%2X4aWiXMOr t<en prog:#1alse; i1 prog t<en writeln( progresie arit-etica/! else writeln( n* e progresie arit-etica/!; en"0 onstruirea unor vectori -' Dumerele de la - la n sunt aezate n ordine cresctoare pe circumferina unui cerc astfel c n a%unge situat l.ng - Bncep.nd cu numrul s se marc)eaz numerele din , n ,, n

:(

ordinea cresctoare a lor, p.n c.nd un numr este marcat de 0 ori C.te numere au rmas nemarcateC 0' Ciurul lui #ratostene" * se formeze un vector care s conin elementele prime mai mici dec.t un numr dat n, nN-666, utiliz.nd procedeul de e7cludere prezentat n manualul de matematic &e7cluderea se va face prin inlocuirea elementului cu 6' 9' Bntr-o nc)isoare cu n celule se afl, la un moment dat, n deinui *e ia )otr.rea s fie eli$erai anumii deinui, alegerea lor fc.ndu-se ntr-un mod special Bn nc)isoarea aceea erau tot n gardieni !rocedeul de determinare a deinuilor ce vor fi eli$erai este urmtorul" gardianul , pleac de la celula , i merg.nd din , n , celule, sc)im$ starea uilor pe la care trece,-N/,N/n Bn final anumite celule vor rm.ne desc)ise, deinuii respectivi fiind eli$erai !utei afla careC Iniial toate uile sunt nc)ise Exemplu: n=&0 v"r 'i eliberati cei din celulele 1 % 9 16 2& $6 %9. :' * se formeze vectorul primelor n elemente ale irului lui Ii$onacci" 6, -, -, 0, 9, 5, 3, -9,0-, &fZ-[/6, fZ0[/-, fZi[/fZi--[2fZi-0[' 5' *e introduc n numere ntregi #lementele diferite s se memoreze ntr-un alt vector * se afieze acest nou vector ;' * se formeze i s se afieze vectorul care s conin elementele nenule dintr-un vector dat =' * se e7trag dintr-un vector elementele care au ultima cifr egal cu , i s se formeze cu ele un alt vector * se afieze cei doi vectori 3' *e dau n numere ntregi Iolosind un alt vector, s se aeze numerele pare la nceput A' !rin contorizare i utilizarea unui vector a%uttor, ntr-un ir de numere date s se grupeze la nceput numerele deficiente, apoi cele perfecte i la sf.rit cele a$undente &Dumim numr deficient cel care este mai mare dec.t suma divizorilor mai mici ca el, numr perfect cel care este egal cu acest sum i a$undent numrul mai mic dec.t aceast sum' -6'<at un numr n, s se memoreze ntr-un vector toate numerele mai mici ca n prime cu n * se afieze n ordine descresctoare --'*e citete un numr natural * se determine cel mai mic i cel mai mare numr format din cifrele acestui numr -0'* se afieze toate valorile 0n , pentru n cuprins ntre 9- i 56 -9'* se insereze ntre oricare dou elemente alturate ale unui ir numeric dat media lor aritmetic -:' *e d irul -,0,0,9,9,9,:,:,:,:,5, <at un numr ,, s se afieze elementul de pe poziia , -5'<.ndu-se o secven de n numere ntregi, s se decid dac e7ist un numr ma%oritar &numrul de apariii este mai mare dec.t nE0' '( Re olvare Problema1 var c: arrayW2002((X o1 integer; n,i,t,s,,: integer; gata: boolean; begin write( cate n*-ere#/!; rea"(n!; write( pas*l#/!; rea"(,!; write( po8itia "e start#/!; rea"(s!; 1or i:#2 to n "o cWiX:#(; Ic,i-=de cate ori s-a marcat pozitia i pe cercul numerelorJ cWsX:#2; gata:#1alse; t:#s; It= aloarea numerelor care se marc"eazaJ w<ile not gata "o begin t:#t%,; i1 t O n t<en t:#t -o" n; :2

i1 cWtX#( t<en cWtX:#2 else begin -:#(; gata;#tr*e; 1or i:#2 to n "o i1 cWiX#( t<en -:#-%2; writeln( a* ra-as ,-,/ n*-ere/!; en"; en"; en"0 Problema 2 program )iurul_lui_*ratostene+ var c:arrayW2002(((X o1 byte; n,i,5: byte; begin write(/n#/!; rea"(n!; 1or i:#2 to n "o cWiX:#i; Ic contine toate numerele de la 2 la nJ i:#2; Ii=pasul cu care se parcurge sirul pentru eliminareJ repeat i1 cWiXMO( t<en begin 5:#i; I&=pozitia de plecare J repeat 5:#5%i; cW5X:#( *ntil 5O#n; en"; inc(i!; *ntil iO n "iv 2; writeln(/n*-erele pri-e pana la /,n!; 1or i:#2 to n "o i1 cWiXMO( t<en write(cWiX,/ /!; en"0 Problema 3 var *:# arrayW2002((X o1 byte; n,,,pas,i: integer; begin write( n#/!; rea"(n!; 1or i:#2 to n "o *WiX:#2; Iu memoreaza starea usii* (=desc"isa, 1=inc"isaJ 1or ,:#2 to n "o begin pas:#,; repeat case *WpasX o1 (: *WpasX:#2; 2: *WpasX:#(; en"; pas:#pas%,; *ntil pasOn; en"; writeln( vor iesi "etin*tii "e la cel*lele c* n*-ar*l:/!; 1or i:#2 to n "o i1 *WiX#( t<en write(i:.!; en"0 Problema 4 var 1: arrayW2002((X o1 integer; n,i: integer; begin write(/n*-ar ter-eni#/!; rea"(n!; 1W2X:#(; 1W2X:#2; 1or i:#. to n "o 1WiX:#1Wi42X%1Wi42X; 1or i:#2 to n "o write(1WiX:9!; en"0 Problema 5 var v,": arrayW2002((X o1 integer; n,5,,,i: integer; apare: boolean; begin write(/n*-ar ter-eni#/!; rea"(n!; write(/ele-entele sir*l*i:/!; 1or i:#2 to n "o rea"(vWiX!; :2

,:#2; I'=indicele in ectorul nou, dJ 1or i:#2 to n42 "o begin Itestez daca aloarea ,i- mai apare spre dreapta in J apare:#1alse; 1or 5:#i%2 to n "o i1 vWiX#vW5X t<en apare:#tr*e; i1 not apare t<en begin "W,X:#vWiX; inc(,! en"; Itrec in d alorile care nu or mai apareJ en"; "W,X:#vWnX; writeln(/ele-entele "i1erite: /!; 1or i:#2 to , "o write("WiX:9!; en"0 Problema 6 var v,w: arrayW2002((X o1 integer; n,,,i: integer; begin write(/n*-ar ter-eni#/!; rea"(n!; write(/ele-entele sir*l*i:/!; 1or i:#2 to n "o rea"(vWiX!; ,:#2; I'=indicele in ectorul formatJ 1or i:#2 to n "o i1 vWiXMO( t<en begin wW,X:#vWiX; inc(,! en"; writeln(/ele-entele nen*le: /!; 1or i:#2 to ,42 "o write(wWiX:9!; en"0 Problema 7 Ca la !ro$lema ;, se testeaza daca vZi[ mod -6/4. Problema 8 var v,w: arrayW2002((X o1 integer; n,ni,,,i: integer; begin write(/n*-ar ter-eni#/!; rea"(n!; write(/ele-entele sir*l*i:/!; 1or i:#2 to n "o rea"(vWiX!; ,:#2;ni:#(; I'=indicele in noul ector, ni=cate numere impare sunt in J 1or i:#2 to n "o i1 vWiX -o" 2#( t<en begin wW,X:#vWiX; inc(,! en" else begin inc(ni!;wWn%24niX:#vWiX en"; writeln(/ele-ente pare *r-ate "e ele-ente i-pare: /!; 1or i:#2 to n "o write(wWiX:'!; en"0 Problema 9 var v,w: arrayW2002((X o1 integer; n,na,n",np,",s,,,i: integer; begin write(/n*-ar ter-eni#/!; rea"(n!; write(/ele-entele sir*l*i:/!; 1or i:#2 to n "o rea"(vWiX!; n":#(; Iaflu cate numere deficiente suntJ 1or i:#2 to n "o begin s:#(; 1or ":#2 to vWiX42 "o i1 vWiX -o" "#( t<en s:#s%"; i1 vWiXOs t<en inc(n"!; en"; ,:#n"; Inumerele perfecte se pun incepand cu pozitia '$1J n":#(; na:#(; np:#(; Icontorii pentru numere deficiente, abundente, perfecteJ 1or i:#2 to n "o begin s:#(; 1or ":#2 to vWiX42 "o i1 vWiX -o" "#( t<en s:#s%"; i1 vWiXOs t<en begin inc(n"!; wWn"X:#vWiX; en"; i1 vWiX#s t<en begin inc(np!; wW,%npX:#vWiX; en"; i1 vWiXMs t<en begin inc(na!; wWn%24naX:#vWiX; en"; en"; writeln(/n*-ere "e1iciente, per1ecte, ab*n"ente: /!; 1or i:#2 to n "o write(wWiX:9!; en"0 Problema 10 :.

var p: array W2002((X o1 integer; a,b,r,i,n,5: integer; begin write(/n#/!; rea"(n!; 5:#2; Iindicele in noul sirJ 1or i:#2 to n42 "o begin a:#n; b:#i; Icalculez cmmdc dintre n si iJ repeat r:#a -o" b; a:#b; b:#r *ntil r#(; i1 a#2 t<en begin pW5X:#i; inc(5! en"; en"; writeln(/n*-ere pri-e c* /,n, / -ai -ici ca el/!; 1or i:#542 "ownto 2 "o write(vWiX:'!; en"0 Problema 11 var c: array W2002((X o1 byte; i,5,3: integer; n: longint; sortat:boolean; begin write(/n*-ar#/!; rea"(n!; 5:#2; Iindicele in ectorul a and ca elemente cifrele numarului datJ repeat cW5X:#n -o" 2(; n:#n "iv 2(; inc(5! *ntil n#(; repeat Isortez crescator ectorul cifrelor, cu &-1 elemente J sortat:#tr*e; 1or i:#2 to 542 "o i1 cWiXOcWi%2X t<en begin sortat:#1alse; 3:#cWiX;cWiX:#cWi%2X;cWi%2X:#3 en"; *ntil sortat; writeln(/cel -ai -ic n*-ar: /!; 1or i:#2 to 542 "o write(cWiX!; writeln(/cel -ai -are n*-ar: /!; 1or i:#542 "ownto 2 "o write(cWiX!; en"0 Problema 12 var a: array W2009(X o1 byte; i,,,p,5: integer; begin Ise initiali8ea8a aWiX c* (, "e la 2 la .; si aW9(X c* 2J 1or i:#2 to .; "o aWiX:#(; aW9(X:#2; 1or i:#2 to '( "o begin Ii =exponentul puterii lui 2J p:#(; Ip=cifra zecilor care a fi adunata la componenta urmatoareJ 1or 5:#9( "ownto 2 "o begin aW5X:#aW5X$2%p; i1 aW5XO2( t<en begin aW5X:#aW5X42(; p:#2 en"; else p:#(; en"; i1 iO.( t<en begin ,:#2; repeat Inu afisez zerourile din fata numaruluiJ i1 aW,X#( t<en inc(,!; *ntil aW,XMO(; write(2,/T/,i,/#/!; 1or 5:#, to 9( "o write(aW5X!; writeln; en"; en"; en"0

:9

Problema 13 var v,w: arrayW2002((X o1 real; i,5,n: integer; begin write(/cate n*-ere@/!; rea"(n!; writeln(/intro"* n*-erele/!; 1or i:#2 to n "o rea"(vWiX!; 5:#2; Iindicele in noul sirJ 1or i:#2 to n42 "o begin wW5X:#vWiX; wW5%2X:#(vWiX%vWi%2X!62; 5:#5%2 en"; wW5X:#vWnX; writeln(/sir*l no*: /!; 1or i:#2 to 5 "o write(wWiX:'!; en"0 Proble-a 29 var 3: array W2002((X o1 byte; 5,,,p,t: integer; begin write( ,#/!; rea"(,!; p:#2; t:#2; Ip=pozitia in sir, t= aloare termenJ w<ile pM, "o begin 5:#2; repeat 3WpX:#t; Ise atribuie aloarea t de t ori incepand cu pozitia pJ inc(p!; inc(5! *ntil (pO,! or (5Ot!; inc(t!; en"; writeln( pe po8itia ,,,/ se a1la n*-ar*l ,3W,X!; en"0 Problema 15 var v,w: arrayW2002((X o1 integer; n,i,5,c: integer; -a5: boolean; begin write(/cate n*-ere@/!; rea"(n!; writeln(/intro"* n*-erele/!; 1or i:#2 to n "o rea"(vWiX!; 1or i:#2 to n "o Inoul sir a contine numarul de aparitii al fiecarui elementJ begin wWiX:#(; 1or 5:#2 to n "o i1 vWiX#vW5X t<en inc(wWiX!; en"; -a5:#1alse; 1or i:#2 to n "o i1 wWiXOn62 t<en -a5:#tr*e; i1 -a5 t<en writeln( e3ista *n ele-ent -a5oritar/! else writeln( n* e3ista *n ele-ent -a5oritar/! en"0 Probleme de sintez -' <oi copii vopsesc un gard din sc.nduri pe care le vom numerota de la - la n astfel" primul ia o cutie de vopsea roie cu care vopsete sc.ndurile cu numrul p, 0p, 9p, etc +l doilea procedeaz la fel, ncepe de la acelai capt al gardului dar ia o cutie de vopsea al$astr i vopsete din 9 n 9 sc.nduri +stfel, c.nd vor termina de vopsit, gardul va avea multe sc.nduri nevopsite, unele sc.nduri vopsite n rou, altele n al$astru, iar altele n violet Cunosc.nd numerele n, p i 9 afiai" a' c.te sc.nduri rm.n nevopsite $' c.te sc.nduri sunt vopsite n rou c' c.te sc.nduri sunt vopsite n al$astru d' c.te sc.nduri sunt vopsite n violet :'

&ODI 0660 clasa a VI-a' 0' *e d un vector cu n &-n96' elemente numere naturale, cu ma7im 3 cifre *e cere" a' * se afieze c.te elemente din vector sunt valori-pant &numere care privite de la st.nga sau de la dreapta au cifrele n ordine cresctoare, de e7emplu -9;, A9-' $' * se afieze cea mai mare i cea mai mic valoare-pant i poziiile pe care se afl acestea n vector Exemplu: Fac se cite te n=6 i elementele 126 9621 1212 $6/8 92$1 9621 , pr"#ramul va a'i a: numar val"ri5panta= % cea mai mare val"are5 panta=9621 pe p"-itiile 2 6 cea mai mica val"are5panta=126 pe p"-itiile 1. &ODI 0669 clasa VI-a' 9' Iratele cel mic al lui Jigel primise de la ?o Crciun un %oc de cu$uri colorate Jigel l-ar fi nsoit pe cel mic la %oc, mai ales c.nd acesta nira cele n cu$uri unul dup altul, iar lui i treceau prin cap tot felul de cerine pe care profesorul lui de informatic le-ar fi putut scorni" a s vedem c.te culori sunt n total8 $ care culoare este folosit pentru cele mai multe cu$uri8 c ce cu$ ar tre$ui scos din ir astfel nc.t s se formeze din cu$urile rmase un ir c.t mai lung de cu$uri alturate de aceeai culoare *e citesc de la tastatur n, numrul de cu$uri, nN56, i o succesiune de n numere de culori, de la - la -6 <ac la cerinele a, $, c sunt mai multe soluii, se vor preciza toate Exemplu: n=1& cul"rile & 2 & 2 2 $ $ 2 $ & $ $ $ 2 2 se va a'i a a. $ b. 2 $ c. ?"-itia 10 &ODI Iocani 0669 clasa a VI-a' :' !rofesorul de sport al clasei a VI-a B de la o coal din Iocani vrea la nceputul orei s aeze elevii pe terenul de sport, la raport, ntr-o anumit ordine !entru acest lucru, elevii sunt $ine instruii, astfel nc.t, aez.nd pe ultimul r.nd n elevi, celelalte r.nduri de elevi se creeaz singure dup regula" - pe poziia i a unui r.nd se va aeza un elev, dup cum urmeaz" dac pe r.ndul din spate, pe poziiile i i i;5 stau fie numai $iei, fie numai fete, atunci se va aeza o fat, iar dac pe aceste poziii stau elevi de se7 opus, se va aeza un $iat Conform acestei reguli, pe r.ndul cu numrul de ordine i &iO-, 0, L, nP' se vor aeza i elevi Dumrul de elevi din clas este n&n2-'E0 Cerin" !entru n dat i un ir de n numere 6 i - &6 reprezint codificarea pentru o fat, iar - pentru un $iat', care reprezint irul de elevi de pe ultimul r.nd, se cere s se determine numrul de $iei din clas <ate de intrare" <e la tastatur se citesc datele de pe dou linii" pe prima linie n, pe linia a doua un ir de n numere 6 i -, separate printr-un spaiu ce reprezint irul de elevi de pe ultimul r.nd <ate de ieire" !e ecran se va afia numrul de $iei din clas 0 >estricii" - n 06 Exemplu: ?entru datele de intrare: & 1 0 0 1 1 se va a'i a: 8 &ODI Iocani 0669 clasa a VI-a' 5' Jigel a primit spre pstrare un set de n cutii de greuti nu neaprat distincte #l a c.ntrit cutiile i pentru fiecare greutate distinct a notat pe o foaie, n ordine cresctoare a greutilor, numrul de cutii cu greutatea respectiv <eoarece fratele su mai mic avea prostul o$icei s se %oace cu numerele scrise de el pe foaie, Jigel s-a g.ndit s calculeze un Xnumr de controlH dup urmtorul algoritm" ncep.nd de la primul numr a grupat numerele de apariii ale greutilor c.te trei &dac i rm.n numere negrupate la sf.rit, le ignor' <ac ntr-un grup sunt numai numere pare sau numai impare noteaz grupul cu cifra -, altfel l noteaz cu cifra 6 <in irul astfel o$inut, se formeaz un numr care are ca valoare cifra zecilor egal cu numrul de valori - i cifra unitilor egal cu numrul de valori 6, o$in.ndu-se astfel Xnumrul de controlH

:7

Cerin" Citind greutile cutiilor, s se determine Xnumrul de controlH i s se verifice dac este numr prim <ate de intrare" *e citete de la tastatur numrul n urmat de greutile cutiilor <ate de ieire"*e va scrie pe ecran Xnumrul de controlH, urmat de valoarea 6 sau - pe linia urmtoare !e urmtoarea linie se va afia - dac numrul este prim, respectiv 6 n caz contrar >estricii"- n -66 Iiecare greutate este un numr natural, mai mic sau egal cu 066 Exemplu: Fate de intrare n=21 1 $ 2 6 2 6 2 8 9 8 8 9 10 8 11 18 11 12 1% 1& 1/ Fate de ie ire $1 1. Explica)ie: Fup "rd"nare se "b)ine irul: 1 2 2 2 $ 6 6 8 8 8 8 9 9 10 11 11 12 1% 1& 1 18. *e "b)ine ap"i: 1 $ 1 2 % 2 1 2 1 1 1 1 1 care #rupate cate trei dau val"rile 1 1 0 1, din care se "b)ine numrul de c"ntr"l $1, care este numr prim. &OSI 066: clasa a VI-a' ;' V.ntorul ef al regelui +rt)ur a primit nsrcinare s v.neze primele rae ce se ntorc din rile calde >egele fiind un tip cu idei fi7e, i-a cerut v.ntorului s v.neze raele al$e cu sgei al$e, iar raele negre cu sgei negre >aele vin n r.nduri &stoluri' din ce n ce mai mari" mai nt.i una, apoi dou, trei, cinci, opt, treisprezece, a m d *e o$serv c numrul de rae dintr-un r.nd este egal cu numrul de rae de pe cele dou r.nduri anterioare >aele fiind nite creaturi ordonate z$oar n r.nduri, n care nu vei putea gsi dou rae de aceeai culoare alturate, fiecare r.nd ncep.nd cu o ra al$ V.ntorul tie c dac a nceput s do$oare o ra, tre$uie s le do$oare pe toate de pe r.ndul acesteia, deoarece supravieuitoarele vor alerta celelalte rae i ele nu se vor mai ntoarce niciodat, iar v.ntorul nostru i va pierde slu%$a Cerin" ,tiind c v.ntorul a primit ,a sgei al$e i ,b sgei negre, tre$uie s determinai c.te r.nduri de rae a do$or.t i c.te sgei de fiecare tip i-au rmas, tiind c el vrea s-i pstreze slu%$a <ate de intrare" *e citesc de la tastatur numerele ,a i ,b &n aceast ordine' <ate de ieire" *e va afia pe ecran" - numrul de r.nduri do$or.te - numrul de sgei al$e rmase - numrul de sgei negre rmase >estricii" 6W,a, ,bW0 666 666 666 Exemplu: ?entru Da=9 i Db=10 *e va a'i a: % 2 6. Explica)ie: ?entru exemplu avem rBndurile 3A5 ra) alb, ,5 ra) nea#r4 de ra)e: A A, A,A A,A,A &CSI 066: clasa a VI-a' =' * se genereze dou iruri + i B de numere naturale, elementele lui + s fie cuprinse ntre 6 i AA, iar ale lui B ntre - i AAA Cele dou iruri au acelai numr de elemente, specificat de la tastatur * se genereze un ir C dup urmtoarea regul" CZi[/+Zi[-BZi[, dac +Zi[ este par i BZi[ impar, CZi[/+Zi[2BZi[, dac +Zi[ este impar i BZi[ par, CZi[/+Zi[1BZi[, dac +Zi[ i BZi[ sunt am$ele fie pare, fie impare * se afieze c.te patru elemente pe un r.nd, elementele irului +, ale irului B i apoi ale lui C &CDI -A3= clasa a VI-a' 3' O coal are ma7im = serii de clase a VI-a, notate +, B, C, <, #, I * se scrie un program care s genereze o planificare a nt.lnirilor sportive ntre aceste clase, astfel nc.t fiecare s se nt.lneasc o singur dat cu alt clas Bnt.lnirile au loc zilnic, c.te una n fiecare zi, cu e7cepia duminicilor !rogramarea nt.lnirilor ncepe cu ziua de miercuri, - iunie -A33 i arat astfel" miercuri - iunie VI + K VI B %oi 0 iunie VI + K VI C ::

&CDI -A33 clasa a VI-a' A' *e d un vector de numere naturale mai mici dec.t -6- i un numr natural a * se nsereze ntre dou componente vecine, a cror diferen n valoare a$solut este mai mare sau egal cu a, media lor aritmetic, pentru ca n final s rezulte un vector n care diferena a$solut dintre dou elemente este mai mic dec.t a &CDI Dvodari -A3A clasa a VII-a' -6' Iie un ir de n fracii &-n5' de forma aZi[E$Zi[, -in' cu 6aZi[055, -$Zi[3 a' * se simplifice fracia de pe poziia ,, , dat de la tastatur $' * se calculeze suma fraciilor av.nd ca rezultat fracia ireducti$il pE9 c' * se calculeze c.t la sut reprezint numrul 9 din suma p29 &CDI Buteni -AA: clasa a VI-a' --' !e o ti% se afl n discuri av.nd diametre diferite, -N/ nN/-66 *e cere aran%area lor n ordinea descresctoare a diametrelor de %os n sus Bn scopul aran%rii n ordinea cerut se poate efectua un singur tip de operaie" cu a%utorul unei cleme se prind un numr oarecare , de discuri,0N,, ncep.nd cu cel mai de sus se scot de pe ti% i se ntorc, introduc.ndu-le din nou pe ti% <ate de intrare" n/ numar discuri, a5,a% ,an/diametrele discurilor,-N/aiN/AAA <ate de ieire" fiecare sc)im$are const din dou linii de forma ,/numrul discurilor prinse i x5,x%,L,xn/noua configuraie a ti%ei Exemplu: n=& diametrele & $ 2 1 % se va a'i a D=% & % 1 2 $ D=$ & % $ 2 1. &CDI *inaia -AA; clasa a VI-a' -0' *e consider un numr n de copii care poart tricouri de $asc)et ce au pe spate imprimate un numr de la - la n #i %oac urmtorul %oc" se aeaz pe un cerc ntr-o ordine oarecare toi cei n copii8 profesorul, pornind de la un elev ncepe s numere , elevi, cel de-al ,-lea fiind eliminat din cerc8 de la urmtorul dup cel eliminat continu numrtoarea p.n la ,, elimin.ndu-l pe cel la care s-a oprit numrtoarea, a m d Cunosc.ndu-se numerele n i , &n,,N/56', s se determineordinea n care se aflau iniial dispui copiii pe cerc, astfel nc.t acetia s fie eliminai n ordinea -,0,L, n *e va afia pe o linie numrul de ordine al %uctorilor situai iniial pe cerc ncep.nd cu numrul Exemplu: date de intrare: n=& D=2 Fate de ie ire: 1 & 2 % $. &CDI *inaia -AA= clasa a VI-a' 2.! Bn vacan Jigel a uitat te)nica de nmulire a dou numere Ca s-l a%ute, $unica l-a nvat o metod vec)e" <ac a i b sunt cele dou numere care tre$uie nmulite, le vom scrie unul l.ng altul i vom forma su$ fiecare c.te o coloan conform urmtoarelor reguli" -' su$ a se acrie partea ntreag a lui aE0, iar su$ b se scrie 01b 0' se aplic pasul -' p.n c.nd numrul de pe coloana lui a este 9' produsul se o$ine adun.nd numerele din coloana lui b care corespund, pe linie, unor numere impare din coloana lui a Exemplu: a=%&, b=19, a $ produs :5 -A -A2 00 93 -=; =; 5 -50 -50 0 96: ;63 ;63 /// 355 &CDI !iatra-Deam 066- clasa a VI-a' -:' Dicu merge la ?etro s-i cumpere rec)izite colare !e fiecare o$iect cumprat se afl un cod de produs alctuit din cel mult -6 liniue verticale !entru fiecare cod Dicu :&

asociaz un numr de cod astfel" pentru fiecare liniu asociaz o cifr, lungimea liniuei Bn acest mod fiecare o$iect are asociat un numr natural Cerin" !entru cele n o$iecte cumprate i date prin numrul de cod se cere s se afieze c.te numere palindroame e7ist cu proprietile" sunt mai mici strict dec.t cel mai mare numr de cod, nu sunt printre numerele de cod date >estricii" 6NnN0;, cel mai mare numr de cod este mai mic dec.t 966- Exemplu: pentru n=/ i numerele de c"d 8 20 22 %% 108 && 88 se va a'i a 1& 3de"arece avem urmt"arele numere palindr"ame: 0 1 2 $ % & 6 / 9 11 $$ 66 // 99 1014. &CDI *atu-?are 0669 clasa a VI-a' -5' Ma concursul ?ititeluU Jates, pentru $una desfurare a competiiei este necesar o suma dat '8 n acest scop s-a creat o list de n &nN-666' persoane care pot i vor s sponsorizere acest eveniment Iiecare din cele n persoane a confirmat participarea i suma oferit <eterminai valorile selectate pentru sponsorizarea concursului, tiind c numrul persoanelor tre$uie s fie minim i suma total s acopere c)eltuielile &unitatea de msur este milionul' Exemplul 1 : ,=8 *=$0 2.& $ 2 & 1& / % 1 *e va a'i a: 1& / & $ Exemplul 2 : ,=/ *=$/ &.& %.& 2 1/ 2 &.& 10 *e va a'i a: 1/ 10 &.& %.& Rspunsuri: Problema 1 var s: arrayW2002((X o1 integer; n,p,?,cr,cv,ca,i: integer; begin write( cate scan"*ri are gar"*l@/!; rea"(n!; wripe( p,?#/!; rea"(p,?!; ca:#(; cr:#(; cv:#(; 1or i:#2 to n "o begin i1 (sWiX -o" p#(! an" (sWiX -o" ?MO(X t<en inc(cr!; i1 (sWiX -o" ?#(! an" (sWiX -o" pMO(X t<en inc(ca!; i1 (sWiX -o" ?#(! an" (sWiX -o" p#(X t<en inc(cv!; en"; writeln( scan"*ri nevopsite:/,n4ca4cr4cv!; writeln( scan"*ri vopsite in ros*:/,cr!; writeln( scan"*ri vopsite in albastr*:/,ca!; writeln( scan"*ri vopsite in violet:/,cv!; en"0 Problema 2 var v,vp: arrayW200.(X o1 longint; n,i,c,3,*,8: integer; -a3,-in: longint; panta:boolean; begin write( n#/!; rea"(n!; writeln( intro"* n*-erele/!; 1or i:#2 to n "o rea"(vWiX!; c:#(; Icontorul alorilor pantaJ 1or i:#2 to n "o begin 3:#vWiX; *:#vWiX -o" 2(; 3:#3 "iv 2(;Isepar si compar ultimele doua cifre, erific apoi daca relatia# 8:#3 -o" 2(; 3:#3 "iv 2(; Ide inegalitate se pastreaza si la cifrele anterioareJ panta:#tr*e; i1 *M8 t<en w<ile (3O(! an" (panta#tr*e! "o begin *:#8; 8:#3 -o" 2(; i1 *O8 t<en panta:#1alse; :;

3:#3 "iv 2(; en" else w<ile (3O(! an" (panta#tr*e! "o begin *:#8; 8:#3 -o" 2(; i1 *M8 t<en panta:#1alse; 3:#3 "iv 2(; en"; i1 panta t<en begin inc(c!; vpWcX:#vWiX; en"; writeln( s*nt ,c,/ valori panta: !; 1or i:# 2 to c "o write(vpWiX:;!; writeln; -a3:#4-a3longint; -in:#-a3longint; 1or i:# 2 to c "o begin i1 -a3MvpWiX t<en -a3:#vpWiX; i1 -inOvpWiX t<en -in:#vpWiX; en"; writeln( cea -ai -are valoare panta este ,-a3,/ pe po8itiile:/!; 1or i:# 2 to n "o i1 -a3#vWiX t<en write(i,/ !; writeln( cea -ai -ica valoare panta este ,-in,/ pe po8itiile:/!; 1or i:# 2 to n "o i1 -in#vWiX t<en write(i,/ !; en"0 Problema 3 var c*b, color: arrayW200'(X o1 byte; c,n,nrc,-a3,l-a3,l,cate,i,p,po8: integer; begin write( n*-ar c*b*ri:/!; rea"(n!; write( intro"* c*lorile/!; 1or i:#2 to n "o rea"(c*bWiX!; nrc:#(; -a3:#(; Inrc=numar culoriJ 1or c:#2 to 2( "o begin Iformez ectorul color cu 1( componente, color,i-=nr. de aparitii J cate:#(; %al culorii iJ 1or i:#2 to n "o i1 c*bWiX#c t<en inc(cate!; colorWcX:#cate; i1 cateMO( t<en inc(nrc!; i1 -a3Mcate t<en -a3:#cate; en"; writeln( a! ,nrc,/ c*lori/!; write( b! !; 1or i:#2 to 2( "o i1 colorWiX#-a3 t<en write(i,/ !; l-a3:#(; 1or i:#2 to n42 "o i1 c*bWi42X#c*bWi%2X t<en Idaca cub,i- desparte doua al. egale, caut J begin Ispre stanga si spre dreapta pana gasesc alori diferiteJ po8:#i42; l:#2; w<ile (c*bWpo8X#c*bWi42X ! an" (po8O(! "o begin "ec(po8!; inc(i! en"; po8:#i%2; w<ile (c*bWpo8X#c*bWi%2X ! an" (po8M#n! "o begin inc(po8!; inc(l! en"; i1 l-a3Ml t<en begin l-a3:#l; p:#i en"; en"; writeln( c! po8itia ,p!; en"0 Problema 4 var e: arrayW2002(X o1 byte; n,i,nb,r: integer; begin write( n#/!; rea"(n!; writeln( intro"* ase8area pe *lti-*l ran"/!; 1or i:#2 to n "o rea"(eWiX!; &(

nb:#(; Inb=numar baietiJ 1or i:#2 to n "o i1 eWiX#2 t<en inc(nb!; r:#2; Ir=numar randuri formateJ repeat 1or i:#2 to n4r "o i1 eWiX#eWi%2X t<en eWiX:#( else begin eWiX:#2; inc(nb! en"; inc(r!; *ntil rOn; writeln( n*-ar baieti#/,nb!; en"0 Problema 5 var a,b,c: arrayW2002((X o1 integer; n,t,l,nr,i,b,5,,: integer; o,: boolean; begin write( n#/!; rea"(n!; 1or i:#2 to n "o begin rea"(aWiX!; repeat Isortez crescator greutatile introduseJ o,:#tr*e; 1or i:#2 to n42 "o i1 aWiXOaWi%2X t<en begin b:#aWiX; aWiX:#aWi%2X; aWi%2X:#b o,:#1alse en"; *ntil o,; 5:#2; ,:#2: i:#2; t:#2;Iconstruiesc ectorul b al aparitiilor, i,&=indici in a, t=indice in b# %'=contorJ w<ile iM#n "o i1 aW5X#aWiX t<en begin inc(,!; inc(i! en" else begin bWtX:#,; ,:#2; 5:#i; inc(i!; inc(t! en"; bWtX:#,; 1or i:#2 to t "o write(bWtX:.!; writeln; l:#(; i:#2; Igrupez elem. din b cate 3, de la stanga la dreapta, formez ectorul c al nr. de# w<ile iM#t42 "o begin Icontrol, l=indice in c, i=indice in bJ inc(l!; i1 bWiX -o" 2#( t<en begin i1 (bWi%2X -o" 2#(! an" ( bWi%2X -o" 2#(! t<en cWlX:#2 else cWlX:#(; en" else i1 (bWi%2X -o" 2#2! an" ( bWi%2X -o" 2#2! t<en cWlX:#2 else cWlX:#(; i:#i%.; en"; 1or i:#2 to l "o write(cWtX:.!; writeln; nr:#(; Inumar cifrele de 1 si ( din c, nr=numarul de control cerutJ 1or i:#2 "ownto ( "o begin ,:#(; 1or 5:#2 to l "o i1 cW5X#i t<en inc(,!; i1 ,O; t<en begin writeln( -ai -*lt "e ; valori "e /,i!; <alt en"; nr:#nr$2(%, en"; writeln( n*-ar control:/,nr!; o,:#tr*e; I erific daca nr este primJ i:#2; w<ile o, an" (iMnr "iv 2! "o i1 nr "iv i#( t<en o,:#1alse else inc(i!; i1 (nr#2! or (nr#(! t<en o,:#1alse; i1 o, t<en writeln(2! else writeln((!; en"0 Problema 6 1umarul de rate de pe fiecare rand respecta alorile termenilor sirului lui 2ibonacci fara primul termen* 1 2 3 + 3 13 4 var ,a,,b,a,b,c: longint; begin &2

write( n*-ar "e sageti albe:/!; rea"(,a!; write( n*-ar "e sageti negre:/!; rea"(,b!; a:#2; b:#2; nr:#(; Inr=numar randuriJ w<ile (,aO#(b "iv 2 %b -o" 2!! an" (,bO#(b "iv 2!! "o begin Itestez daca exista# inc(nr!; Idestule sagetiJ ,a:#,a4(b "iv 2 %b -o" 2!; Iscad numarul de sageti albe si negre folositeJ ,b:#,b4(b "iv 2!; c:#a%b; Icalculez urmatorul termen din sirul 2ibonacciJ a:#b; b:#c; en"; writeln( n*-ar ran"*ri:/,nr!; writeln( sageti albe ra-ase:/,,a!; writeln( sageti negre ra-ase:/,,b!; en"0 Problema 7 var a,b: arrayW2002((X o1 integer; c:arrayW2002((X o1 longint; n,i: integer; begin write( n#/!; rea"(n!; ran"o-i8e; 1or i:#2 to n "o begin aWiX:#ran"o-(2((!; bWiX:#ran"o-(;;;!%2 en"; writeln( sir*l E:/!; 1or i:#2 to n "o write(aWiX:2(!; writeln; writeln( sir*l H:/!; 1or i:#2 to n "o write(bWiX:2(!; writeln; 1or i:#2 to n "o i1 o""(aWiX% bWiX! t<en i1 aWiX -o" 2#( t<en cWiX:# aWiX4bWiX else cWiX:# aWiX%bWiX else cWiX:# aWiX$bWiX; writeln( sir*l C:/!; 1or i:#2 to n "o write(cWiX:2(!; writeln en"; Problema 8 var clasa: arrayW200:X o1 c<ar; i,5,8i,"ata,-eci: integer; begin 1or i:#2 to : "i clasaWiX:#c<ar(79%I!; -eci:#2; "ata:#2; 1or i:#2 to 7 "o 1or 5:#i%2 to : "o begin 8i:#-eci -o" 7; case 8i o1 2: write( -ierc*ri ,"ata,/ i*nie !; 2: write( 5oi ,"ata,/ i*nie !; .: write( vineri ,"ata,/ i*nie !; 9: write( sa-bata ,"ata,/ i*nie !; ': begin write( l*ni !;inc("ata!;write("ata,/ i*nie !; en"; (: write( -arti ,"ata,/ i*nie !; en"; write( FI ,clasaWiX,/ Y FI ,clasaW5X!; writeln; en"; en"0 Problema 9 var 3: arrayW2002((X o1 real; a,n,i,5,ins: integer; inserare: boolean; begin write( n#/!; rea"(n!; writeln( intro"* n*-erele/!; 1or i:#2 to n "o rea"(3WiX!; write( a#/!; rea"(a!; &2

ins:#(; Iins=numarul inserarilor de mediiJ repeat Ise parcurge repetat ectorul pana nu se mai face nici o inserareJ i:#2; inserare:#1alse; repeat i1 abs(3WiX43Wi%2X!Oa t<en begin Ise deplaseaza elem. spre dreapta si se face inserareaJ 1or 5:#n%ins "ownto i%2 "o 3W5%2X:#3W5X; 3Wi%2X:#(3WiX%3Wi%2X!62; inc(ins!; inserare:#tr*e; en"; i:#i%2; *ntil iOn%ins; *ntil not inserare; writeln( no*l sir:/!; 1or i:#2 to n%ins "o write(3WiX:':2!; en"0 Problema 10 var a,b: arrayW200'X o1 byte; n,,,i,p,?,3,y,r: integer; begin write( n#/!; rea"(n!; writeln( intro"* n*-arator*l si n*-itor*l 1ractiilor:/!; 1or i:#2 to n "o rea"(aWiX,bWiX!; write( ,#/!; rea"(,!; 3:#aW,X; y:#bW,X; Icalculez cmmmdc pentru a,'- si b,'XJ; repeat r:#3 -o" y; 3:#y; y:#r *ntil r#(; writeln( 1ractia si-pli1icata:/,aW,X "iv 3,/6/,bW,X "iv 3!; ?:#2; 1or i:#2 to n "o ?:#?$bWiX; Icalculez numitorul sumeiJ; p:#(; 1or i:#2 to n "o p:#p%(? "iv bWIX!$aWIX; Icalculez numaratorul sumeiJ 3:#p; y:#?; Icalculez cmmmdc pentru p si 5J repeat r:#3 -o" y; 3:#y; y:#r *ntil r#(; writeln( s*-a si-pli1icata:/,p "iv 3,/6/, ? "iv 3!; writeln( ?,/ este ,?6(p%?!$2(( ,/ "in p%?/!; en"0 Problema 11 var ": arrayW2002((X o1 integer; n,3,i,5,,,-a3,nr-a3,p-a3,: integer; begin write( cate "isc*ri s*nt pe ti5a /!; rea"(n!; write( intro"* "ia-etrele "isc*rilor !; 1or i:#2 to n "o rea"("WiX!; nr-a3:#(; Ise cauta discul cu cel mai mare diametru, de n-1 ori, nrmax contorizeazaJ repeat -a3:#(; % se determina max dintre discurile de deasupra ultimului disc asezat corect# 1or i:#nr-a3%2 to n "o i1 -a3M"WiX t<en begin -a3:#"WiX; p-a3:#i en"; inc(nr-a3!; i1 (p-a3Mn! an" (p-a3MO2! t<en begin

&.

Idaca discul maximal nu este de la inceput pe prima pozitie sau nu este deasupra, se prind si se in erseaza discurile aflate deasupra celui cu disc maxim, inclusi acesta, astfel acesta a&unge deasupraJ ,:#n4p-a3%2; 1or 5:#p-a3 to p-a3%, "iv 2 Y2 "o begin 3:#"W5X; "W5X:#"Wn%p-a345X;"Wn%p-a345X:#3 en"; writeln( ,#/,,!; 1or i:#2 to n "o write("WiX:.!; writeln; en"; i1 p-a3MO2 t<en begin Ise in erseaza discurile de deasupra ultimului disc maximal asezat corectJ ,:#n4nr-a3%2; 1or 5:#nr-a3 to nr-a3%, "iv 2 Y2 "o begin 3:#"W5X; "W5X:#"Wn%nr-a345X;"Wn%nr-a345X:#3 en"; writeln( ,#/,,!; 1or i:#2 to n "o write("WiX:.!; writeln; en"; *ntil nr-a3#n42; en"0 Problema 12 var 3: arrayW200'(X o1 byte; n,,,i,val,c: integer; begin write( n,,#/!; rea"(n,,!; 1or i:#2 to n "o 3WiX:#(; Iasez alorile 1,2,4,n in x parcurs circular cu pasul 'J i:#2; val:#2; w<ile valMn "o begin 3WiX:#val; c:#(; Ic numara elementele din x care nu au primit inca aloareJ repeat inc(i!; i1 iOn t<en i:#i -o" n; i1 3WiX#( t<en inc(c!; *ntil c#,; inc(val!; en"; 1or i:#2 to n "o i1 3WiX#( t<en 3WiX:#n; Iatribuirea ultimei aloriJ writeln( or"inea initiala:/!; 1or i:#2 to n "o write(3WiX:9!; en" Problema 13 var va,vb: arrayW2002((X o1 integer; a,b,i,5,p: integer; begin write( a,b#/!; rea"(a,b!; i:#2; vaW2X:#a; vbW2X:#b; Iin a trec alorile de sub a, in b alorile de sub bJ w<ile vaWiXO2 "o begin inc(i!; vaWiX:#vaWi42X "iv 2; vbWiX:#vbWi42X $2; en"; p:#(; 1or 5:#2 to i "o i1 o""(vaW5X! t<en p:#p%vbW5X; writeln( pro"*s#/,p!; &9

en"0 Problema 14 var c: arrayW20027X o1 integer; n,i,-a3,5,a,*,inv: integer; gasit: boolean; begin write( n#/!; rea"(n!; write( intro"* co"*rile/!; 1or i:#2 to n "o rea"(cWiX!; -a3:#(; 1or 1or i:#2 to n "o i1 -a3McWiX t<en -a3:#cWiX; 1or 5:#( to -a3 "o begin inv:#(; Iin =rasturnatul lui &J a:#5; repeat *:#a -o" 2(; inv:#inv$2(%*; a:#a "iv 2( *ntil a#(; i1 5#inv t<en begin gasit:#1alse; 1or i:#2 to n "o i1 inv#cWiX t<en gasit:#tr*e; i1 not gasit t<en write(5:'!; en"; en"; en"0 Problema 15 var a: arrayW2002(((X o1 real; 3,s,sp: real; i,n: integer; o: boolean; begin write( n*-ar sponsori:/!; rea"(n!; write( s*-a necesara:/!; rea"(s!; write( intro"* valoarile o1erite:/!; 1or i:#2 to n "o rea"(aWiX!; repeat Iordonez descrescator alorile din aJ o:#tr*e; 1or i:#2 to n42 "o i1 aWiXMaWi%2X t<en begin o:#1alse; 3:#aWiX; aWiX:#aWi%2X; aWi%2X:#3; en"; *ntil o; sp:#(; i:#2; Isp=suma colectata pentru petrecereJ repeat i1 sp%aWiXM#s t<en begin sp:#sp%aWiX; write(aWiX:9:2,/ !; en"; inc(i!; *ntil (iOn! or (sp#s!; i1 spMs t<en begin sp:#sp%aWnX; write(aWnX:9:2,/ !; en"; en"0 4. !ablouri cu dou dimensiuni )matrici* Introducere, parcurgere integral, afiare 2! 0' 9' *e d un ta$lou $idimensional cu m linii i n coloane, -m,n56, cu componente ntregi i un numr ntreg , *e cere s se afieze ta$loul cu componentele mrite cu , *e introduc dou matrici cu m linii i n coloane * se afieze matricea sum a celor dou matrici date * se verifice dac dou matrici cu aceeai dimensiune sunt egale &au componentele de pe aceeai poziie egale' &'

:'

5' ;'

*e introduce o matrice cu m linii i n coloane * se afieze elementele astfel nc.t liniile s devin coloane Exemplu: m=2, n=$ matricea 1 2 $ se va a'i a 1 % % & 6 2 & $ 6 * se afieze suma i produsul tuturor elementelor unei matrici cu m linii i n coloane cu componente reale C.te elemente sunt ntregiC <at un ta$lou $idimensional cu n linii i n coloane, afiai cea mai mare component i poziiile pe care le ocup Rspunsuri: Problema 1 var a: arrayW200'(,200'(X o1 integer; i,5,n,-: byte; ,: integer; begin write( -,n#/!; rea"(-,n!; writeln( intro"* n*-erele !; 1or i:#2 to - "o 1or 5:#2 to n "o rea"(aWi,5X!; write( ,#/!; rea"(,!; 1or i:#2 to - "o begin 1or 5:#2 to n "o write(aWi,5X%,:'! writeln; en"; en"0 Problema 2 var a,b: arrayW200'(,200'(X o1 integer; i,5,n,-: byte; begin write( -,n#/!; rea"(-,n!; writeln( intro"* n*-erele "in pri-a -atrice !; 1or i:#2 to - "o 1or 5:#2 to n "o rea"(aWi,5X!; writeln( intro"* n*-erele "in a "o*a -atrice !; 1or i:#2 to - "o 1or 5:#2 to n "o rea"(bWi,5X!; 1or i:#2 to - "o begin 1or 5:#2 to n "o write(aWi,5X%bWi,5X:'!; writeln; en"; en"0 Problema 3 var a,b: arrayW200'(,200'(X o1 integer; i,5,n,-: byte; egale: boolean; begin write( -,n#/!; rea"(-,n!; writeln( intro"* n*-erele "in pri-a -atrice !; 1or i:#2 to - "o 1or 5:#2 to n "o rea"(aWi,5X!; writeln( intro"* n*-erele "in a "o*a -atrice !; 1or i:#2 to - "o 1or 5:#2 to n "o rea"(bWi,5X!; &7

egale:#tr*e; 1or i:#2 to - "o 1or 5:#2 to n "o i1 aWi,5XMObWi,5X t<en egale:#1alse; i1 egale t<en writeln( >atrici egale/! else writeln( >atrici neegale/!; en"0 Problema 4 var a: arrayW200'(,200'(X o1 integer; i,5,n,-: byte; begin write( -,n#/!; rea"(-,n!; writeln( intro"* n*-erele !; 1or i:#2 to - "o 1or 5:#2 to n "o rea"(aWi,5X!; 1or 5:#2 to n "o begin 1or i:#2 to - "o write(aWi,5X:'!; writeln; en"; en"0 Problema 5 var a: arrayW200'(,200'(X o1 real; i,5,n,-,c: byte; s,p: real; begin write( -,n#/!; rea"(-,n!; writeln( intro"* n*-erele !; 1or i:#2 to - "o 1or 5:#2 to n "o rea"(aWi,5X!; s:#(; p:#2; c:#(; 1or i:#2 to - "o 1or 5:#2 to n "o begin s:#s%aWi,5X; p:#p$aWi,5X; i1 aWi,5X#int(aWi,5X! t<en inc(c!; en"; writeln( s*-a#/,s:2(:.!; writeln( pro"*s#/,p:2(:.!; writeln(c,/ n*-ere intregi/!; en"0 Problema 6 var a: arrayW200'(,200'(X o1 integer; i,5,n: byte; -a3: integer; begin write( n#/!; rea"(n!; writeln( intro"* n*-erele !; 1or i:#2 to n "o 1or 5:#2 to n "o rea"(aWi,5X!; -a3:#4-a3int; 1or i:#2 to n "o 1or 5:#2 to n "o i1 -a3MaWi,5X t<en -a3:#aWi,5X; writeln( cea -ai -are co-ponenta are valoarea ,-a3,/ si se a1la pe po8itiile !; 1or i:#2 to n "o 1or 5:#2 to n "o i1 -a3#aWi,5X t<en write( W ,i,/,/,5,/X /!; en"0 Parcurgere parial a unui tablou bidimensional 2! * se afieze suma elementelor de pe coloana , a unei matrici cu m linii i n coloane, , n 0' *e introduc puncta%ele realizate de m concureni la n pro$e su$ forma unei matrici cu m linii i n coloane +fiai puncta%ul total realizat de fiecare concurent 9' *e d o matrice ptratic cu dimensiunea n,n +fiai suma elementelor de pe diagonala principal i de pe diagonala secundar

&:

:' <uc.nd cele dou diagonale ntr-o matrice ptratic, se o$in patru zone triung)iulare +fiai suma componentelor din interiorul fiecrei zone 5' *e d un ta$lou cu m linii i n coloane *e cere s se afieze suma componentelor de pe marginea ta$loului ;' *e d o matrice cu n linii i n coloane * se afieze suma componentelor ce se afl pe ptrate concentrice ale matricii date Exemplu: pentru n=% i tabl"ul 1111 se va a'i a suma patrat 1=26 2222 suma patrat 2=10 $$$$ %%%% =' +fiai valoarea ma7im de pe fiecare coloan a unei matrici cu m linii i n coloane 3' *e d un ta$lou cu m linii i n coloane av.nd componente cifre zecimale Iiecare linie a ta$loului reprezint cifrele a m numere naturale *e cere s se afieze pe acelai r.nd cifrele sumei celor m numere date Exemplu: pentru numerele 91%, 9211, $&%/, 2$ se intr"duce matricea cu m=%, n=% 091% 9211 $&%/ 002$ i se va a'i a suma 1 $ 6 9 &. A' O persoan are de cumprat p produse din m magazine * se fac un program care s indice, pentru fiecare produs, magazinul n care acesta are preul minim Cunosc.nd cantitile ce tre$uie cumprate pentru fiecare produs, s se determine suma ce urmeaz a fi c)eltuit Exemplu: p=2 m=$ i pre)urile a e-ate +ntr5" matrice cu p linii i m c"l"ane: &0000 %8000 %9&00 11000 11&00 11&00 se va a'i a: pr"dus 1 pret minim in ma#a-in 2 pr"dus 2 pret minim in ma#a-in 1 , cun"scBnd cantit)ile & /, suma necesar va 'i de $1/000 lei. Rspunsuri: Problema 1 var a: arrayW200'(,200'(X o1 integer; i,5,n,-,,: byte; s: longint; begin write( -,n#/!; rea"(-,n!; writeln( intro"* n*-erele !; 1or i:#2 to - "o 1or 5:#2 to n "o rea"(aWi,5X!; write( coloana ,:/!; rea"(,!; s:#(; 1or i:#2 to - "o s:#s%aWi,,X; writeln( s*-a#/,s!; en"0 Problema 2 var a: arrayW200'(,200'(X o1 integer; i,5,n,-: byte; s: longint; begin write( n*-ar conc*renti, n*-ar probe#/!; rea"(-,n!; writeln( intro"* p*ncta5ele !; 1or i:#2 to - "o 1or 5:#2 to n "o rea"(aWi,5X!; 1or i:#2 to - "o begin s:#(; 1or 5:#2 to n "o s:#s%aWi,5X; writeln( conc*rent*l ,i,/ are p*ncta5*l ,s!; en"; en"0 Problema 3 var a: arrayW200'(,200'(X o1 integer; i,5,n: byte;sp,ss: longint; &&

begin write( n#/!; rea"(n!; writeln( ele-entele tablo*l*i !; 1or i:#2 to n "o 1or 5:#2 to n "o rea"(aWi,5X!; sp:#(; ss:#(; 1or i:#2 to n "o begin sp:#sp%aWi,iX; ss:#ss%aWi,n%24iX en"; writeln( s*-a pe "iagonala principala#/,sp!; writeln( s*-a pe "iagonala sec*n"ara#/,ss!; en"0 Problema 4 var a: arrayW200'(,200'(X o1 integer; i,5,n: byte; s2,s2,s.,s9: longint; begin write( n#/!; rea"(n!; writeln( intro"* n*-erele !; 1or i:#2 to n "o 1or 5:#2 to n "o rea"(aWi,5X!; s2:#(; s2:#(; s.:#(; s9:#(; Is1=triung"i stanga, s2=triung"i sus, s3=triung"i dreapta# 1or i:#2 to n "o Is6=triung"i &osJ 1or 5:#2 to n "o begin i1 (iO5! an" (i%5Mn%2! t<en s2:#s2%aWi,5X; i1 (iM5! an" (i%5Mn%2! t<en s2:#s2%aWi,5X; i1 (iM5! an" (i%5On%2! t<en s.:#s.%aWi,5X; i1 (iO5! an" (i%5On%2! t<en s9:#s9%aWi,5X; en"; writeln( s*-a 2#/,s2!; writeln( s*-a 2#/,s2!; writeln( s*-a .#/,s.!; writeln( s*-a 9#/,s9!; en"0 Problema 5 var a: arrayW200'(,200'(X o1 integer; i,5,n,-: byte; s: longint; begin write( -,n#/!; rea"(-,n!; writeln( intro"* n*-erele !; 1or i:#2 to - "o 1or 5:#2 to n "o rea"(aWi,5X!; s:#(; 1or 5:#2 to n42 "o s:#s%aW2,5X; Ise aduna de pe prima linie, mai putin ultimul elementJ 1or i:#2 to -42 "o s:#s%aWi,nX; Ise aduna de pe ultima coloana, mai putin ultimul elementJ 1or 5:#n "ownto 2 "o s:#s%aW-,5X; Ise aduna de pe ultima linie, mai putin primul elementJ 1or i:#- "ownto 2 "o s:#s%aWi,2X; Ise aduna de pe prima coloana, mai putin primul elementJ writeln( s*-a#/,s!; en"0 Problema 6 var a: arrayW200'(,200'(X o1 integer; i,5,n: byte; s: longint; begin write( n#/!; rea"(n!; writeln( ele-entele -atricii:/!; 1or i:#2 to n "o 1or 5:#2 to n "o rea"(aWi,5X!; 1or i:#2 to n "iv 2 "o begin s:#(; 1or 5:#i to n4i "o s:#s%aWi,5X;Ise aduna elementele de pe linia i, fara primele i-1 si ultimele iJ 1or 5:#i to n4i "o s:#s%aW5,n%24iX;Ise aduna elementele de pe colona a i-a de la dreapta, fara primele i-1 si ultimele iJ 1or 5:#n%24i "ownto i%2 "o s:#s%aWn%24i,5X;Ise aduna elementele de pe linia a i-a de &os in sus, fara primele i si ultimele i-1J 1or 5:#n%24i "ownto i%2 "o s:#s%aW5,iX;Ise aduna elementele de pe coloana i, fara primele i si ultimele i-1J writeln( s*-a patrat ,i,/#/,s!; en"; i1 n -o" 2#2 t<en writeln( s*-a patrat ,i%2,/#/,aWi%2,i%2X!;Idaca n este impar, ultimul patrat# en"0 %se reduce la un singur elementJ &;

Problema 7 var a: arrayW200'(,200'(X o1 integer; i,5,n,-: byte; -a3: integer; begin write( -,n#/!; rea"(-,n!; writeln( intro"* n*-erele !; 1or i:#2 to - "o 1or 5:#2 to n "o rea"(aWi,5X!; 1or 5:#2 to n "o begin -a3:#4-a3int; 1or i:#2 to - "o i1 -a3MaWi,5X t<en -a3:#aWi,5X; writeln( coloana ,5,/ -a3#/,-a3!; en"; en"0 Problema 8 var a: arrayW200'(,200'(X o1 byte; s: arrayW200'(X o1 byte; i,5,n,-,c: byte; begin write( -,n#/!; rea"(-,n!; 1or i:#2 to - "o begin writeln( intro"* ci1rele n*-ar*l*i ,i,/ (n ci1re!:/!; 1or 5:#2 to n "o rea"(aWi,5X!; en"; c:#(; Ic=cifra zecilor la suma pe o coloanaJ 1or 5:#n "ownto 2 "o begin sW5X:#c; 1or i:#2 to - "o sW5X:#sW5X%aWi,5X; i1 sW5XO; t<en begin c:#sW5X "iv 2(; sW5X:#sW5X -o" 2(; en" else c:#(; en"; i1 cMO( t<en write(c:2!; 1or 5:#2 to n "o write(sW5X:2!; en"0 Problema 9 var a: arrayW200'(,200'(X o1 longint; c: arrayW200'(X o1 integer; i,5,-,p,-ag: byte; -in,s: longint; begin write( p,-#/!; rea"(p,-!; writeln( intro"* pret*rile "in 1iecare -aga8in !; 1or i:#2 to p "o begin write( pro"*s ,i,/: /!;1or 5:#2 to - "o rea"(aWi,5X!; en"; writeln( intro"* cantitatile pentr* 1iecare pro"*s !; 1or i:#2 to p "o begin write( pro"*s ,i,/: /!; rea"(cWiX!; en"; s:#(; Is=suma necesaraJ 1or i:#2 to p "o begin -in:#-a3longint; Icalculez minimul pe fiecare linieJ 1or 5:#2 to - "o i1 -inOaWi,5X t<en begin -in:#aWi,5X; -ag:#5 en"; writeln( pro"*s ,i,/ are pret -ini- in -aga8in /,-ag!; s:#s%cWiX$-in; en"; writeln( s*-a necesara:/,s!; en"0 /liminarea, adugarea i sc<imbarea poziiei liniilor i coloanelor ;(

-' *e introduce o matrice cu m linii i n coloane *e cere ca prin operaii de intersc)im$are de linii s se o$in o matrice cu elementele de pe prima coloan ordonate cresctor 0' !rin operaii de intersc)im$are a liniilor i coloanelor s se aran%eze cresctor elementele de pe diagonala principal a unei matrice ptratice date Exemplu: pentru n=$, matricea 1 2 $ se va a'i a 1 $ 2 / 8 9 % 6 & % & 6 / 9 8 .! *e dau o matrice de dimensiune m,n i un numr ,, ,m * se elimine linia , din matrice :' *e dau o matrice de dimensiune m,n i un vector cu n elemente * se adauge aceste elemente ca linie , n matricea dat 5' * se afieze suma vecinilor fiecrui element al unei matrice de m linii i n coloane Exemplu: m=$, n=2 pentru matricea 1 2 se va a'i a 9 8 18 1/ 1$ 12. $ % & 6 Rspunsuri: Problema 1 var a: arrayW200'(,200'(X o1 integer; i,5,n,-: byte; 3: integer ; cresc: boolean; begin write( -,n#/!; rea"(-,n!; writeln( intro"* n*-erele !; 1or i:#2 to - "o 1or 5:#2 to n "o rea"(aWi,5X!; repeat cresc:#tr*e; 1or i:#2 to -42 "o i1 aWi,2XOaWi%2,2X t<en begin Iin ersez liniile i si i$1J 1or 5:#2 to n "o begin 3:#aWi,5X; aWi,5X:#aWi%2,5X; aWi%2,5X:#3 en"; cresc:#1alse; en"; *ntil cresc; 1or i:#2 to - "o begin 1or 5:#2 to n "o write(aWi,5X:'!; writeln; en"; en"0 Problema 2 var a: arrayW200'(,200'(X o1 integer; i,5,n,-: byte; 3: integer; cresc: boolean; begin write( n#/!; rea"(n!; writeln( intro"* n*-erele !; 1or i:#2 to n "o 1or 5:#2 to n "o rea"(aWi,5X!; repeat cresc:#tr*e; 1or i:#2 to n42 "o i1 aWi,iXOaWi%2,i%2X t<en begin 1or 5:#2 to n "o begin Iin ersez liniile i si i$1J 3:#aWi,5X; aWi,5X:#aWi%2,5X; aWi%2,5X:#3 en"; 1or 5:#2 to n "o begin Iin ersez coloanele i si i$1J 3:#aW5,iX; aW5,iX:#aW5,i%2X; aW5,i%2X:#3 en"; cresc:#1alse; en"; *ntil cresc; 1or i:#2 to n "o begin 1or 5:#2 to n "o write(aWi,5X:'!; writeln; en"; en"0 Problema 3 var a: arrayW200'(,200'(X o1 integer; i,5,n,-,,: byte; begin ;2

write( -,n#/!; rea"(-,n!; writeln( intro"* n*-erele !; 1or i:#2 to - "o 1or 5:#2 to n "o rea"(aWi,5X!; write( ,#/!; rea"(,!; 1or i:#, to -42 "o Ise aduce linia i$1 peste linia i, incepand cu linia '$1J 1or 5:#2 to n "o aWi,5X:#aWi%2,5X; "ec(-!; Iscad dimensiunea matriciiJ 1or i:#2 to - "o begin 1or 5:#2 to n "o write(aWi,5X:'!; writeln; en"; en"0 Problema 4 var a: arrayW200'(,200'(X o1 integer; v: arrayW200'(X o1 integer; i,5,n,-,,: byte; begin write( -,n#/!; rea"(-,n!; writeln( intro"* n*-erele !; 1or i:#2 to - "o 1or 5:#2 to n "o rea"(aWi,5X!; write( ,#/!; rea"(,!; write( ele-entele care se intro"*c:/!; 1or 5:#2 to n "o rea"(vW5X!; 1or i:#- "ownto , "oIse aduce linia i peste linia i$1, incepand cu ultima linie pana la linia 'J 1or 5:#2 to n "o aWi%2,5X:#aWi,5X; 1or 5:#2 to n "o aW,,5X:#vW5X; Ise introduc noile alori pe linia 'J inc(-!; Icresc dimensiunea matriciiJ 1or i:#2 to - "o begin 1or 5:#2 to n "o write(aWi,5X:'!; writeln; en"; en"0 Problema 5 var a: arrayW(00'(,(00'(X o1 integer; i,5,n,-: byte; s: longint; begin write( -,n#/!; rea"(-,n!; writeln( intro"* n*-erele !; 1or i:#2 to - "o 1or 5:#2 to n "o rea"(aWi,5X!; Ibordez matricea cu elemente nuleJ 1or i:#2 to - "o begin aWi,(X:#(; aWi,n%2X:#( en"; 1or 5:#( to n%2 "o begin aW(,5X:#(; aW-%2,5X:#( en"; 1or i:#2 to - "o 1or 5:#2 to n "o begin s:#aWi42,542X%aWi42,5X%aWi42,5%2X%aWi,542X%aWi,5%2X%aWi%2,542X%aWi%2,5X%aWi%2,5%2X; write(s:'!; en"; en"0 4erificarea unor proprieti -' * se verifice dac o matrice ptratic de dimensiune n,n este simetric 0' *e d un ta$lou cu m linii i n coloane * se determine numrul de linii care au toate elementele egale 9' *e introduc mediile a m elevi dintr-o clas, la n materii * se verifice dac n acea clas sunt elevi repeteni &cel puin trei corigene' Bn caz afirmativ, s se specifice i c.i sunt :' * se verifice dac o matrice are toate elementele distincte Rspunsuri: Problema 1 var a: arrayW200'(,200'(X o1 integer; i,5,n: byte; si-: boolean; begin write( n#/!; rea"(n!; ;2

writeln( intro"* ele-entele !; 1or i:#2 to n "o 1or 5:#2 to n "o rea"(aWi,5X!; si-:#tr*e; 1or i:#2 to n "o 1or 5:#2 to n "o i1 aWi,5XMOaW5,iX t<en si-:#1alse; i1 si- t<en writeln( -atrice si-etrica/! else writeln( -atrice nesi-etrica/!; en"0 Problema 2 var a: arrayW200'(,200'(X o1 integer; i,5,n,-,c: byte; egale: boolean; begin write( -,n#/!; rea"(-,n!; writeln( intro"* n*-erele !; 1or i:#2 to - "o 1or 5:#2 to n "o rea"(aWi,5X!; c:#(; Ic=numarul liniilor cu elemente egaleJ 1or i:#2 to - "o begin egale:#tr*e; 1or 5:#2 to n42 "o i1 aWi,5XMOaWi,5%2X t<en egale:#1alse; i1 egale t<en inc(c!; en"; writeln( -atricea are ,c,/ linii c* ele-ente egale/!; en"0 Problema 3 var a: arrayW200'(,200'(X o1 real; i,5,n,-,c,cor: byte; begin write( -,n#/!; rea"(-,n!; writeln( intro"* -e"iile !; 1or i:#2 to - "o 1or 5:#2 to n "o rea"(aWi,5X!; c"/68 1or i:#2 to - "o begin cor:#(; 1or 5:#2 to n "o i1 aWi,5XM' t<en inc(cor!; i1 corO#. t<en inc(c!; en"; i1 cMO( t<en writeln( s*nt ,c,/ repetenti/! else writeln( n* s*nt repetenti/!; en"0 Problema 4 var a: arrayW200'(,200'(X o1 integer; v: arrayW2002'(X o1 integer; i,5,,,n,-: byte; "i1: boolean; begin write( -,n#/!; rea"(-,n!; writeln( intro"* n*-erele !; 1or i:#2 to - "o 1or 5:#2 to n "o rea"(aWi,5X!; "i1:#tr*e; ,:#(; Iliniarizez matricea, creez ectorul din elementele matriciiJ 1or i:#2 to - "o 1or 5:#2 to n "o begin inc(,!; vW,X:#aWi,5X en"; 1or ,:#2 to -$n42 "o 1or 5:#,%2 to -$n "o i1 vW,X#vW5X t<en "i1:#1alse; i1 "i1 t<en writeln( ele-ente "i1erite/! else writeln( n* s*nt "i1erite/!; en"0 onstruirea unui tablou -' * se construiasc un ta$lou ptratic de dimensiune n,n cu primele n1n numere pare Exemplu: n=$ se va a'i a 2 % 6 8 10 12 1% 16 18 0' *e d un numr natural n Vrem s construim un ta$lou ptratic cu n linii i n coloane av.nd elementele n mulimea O--, -P astfel nc.t produsul elementelor de pe fiecare ;.

linie, respectiv coloan s fie K- Cerin" +fiai unul din ta$lourile cu proprietile de mai sus >estricii" 6NnN0; Exemplu: pentru n=% " s"lu)ie p"sibil este - K- K- K- - K- -- - - 2 2 42 2 &CDI *atu-?are 0660 clasa a VI-a' 9' Dumim cele$ritate o persoan care este cunoscut de toat lumea, dar nu cunoate pe nimeni *e pune pro$lema de a identifica o cele$ritate, dac e7ist, ntr-un grup de n persoane pentru care se cunosc relaiile dintre persoane Rspunsuri: Problema 1 var a: arrayW200'(,200'(X o1 integer; i,5,n,nr: byte; begin write( n#/!; rea"(n!; nr:#2; 1or i:#2 to n "o begin 1or 5:#2 to n "o begin aWi,5X:#nr; nr:#nr%2; write(aWi,5X:9!; en"; writeln; en"; en"0 Problema 2 var a: arrayW200'(,200'(X o1 integer; i,5,n: byte; begin write( n#/!; rea"(n!;Iconstruiesc matricea cu 71 pe diagonala principala si 1 in restJ 1or i:#2 to n "o 1or 5:#2 to n "o i1 iMO5 t<en aWi,5X:#2 else aWi,5X:#42; 1or i:#2 to n "o begin 1or 5:#2 to n "o write(aWi,5X:9!; writeln en"; en"0 Problema 3 var r: arrayW200'(,200'(X o1 byte; Ir,i,&-= ( sau 1 dupa cum i nu cunoaste sau cunoaste pe &J i,5,n,cl,cc: byte; celebr: boolean; begin write( n*-ar persoane#/!; rea"(n!; celebr:#1alse; writeln( intro"*ceti relatiile "intre persoane/!; 1or i:#2 to n "o 1or 5:#2 to n "o i1 i#5 t<en aWi,iX#2 else begin writeln( persoana ,i,/ c*noaste sa* n* persoana ,5,/@(2 sa* (!/!; rea"(pWi,5X!; en"; 1or i:#2 to n "o begin ;9

cl:#(; cc:#(; Icl=numarul de ( pe linia i, cc=numarul de 1 de pe coloana iJ 1or 5:#2 to n "o begin i1 pWi,5X#( t<en inc(cl!; i1 pW5,iX#2 t<en inc(cc!; en"; i1 (cl#2! an" (cc#n! t<en begin writeln( persoana ,i,/ este o celebritate/!; celebr:#tr*e en"; en"; i1 not celebr t<en writeln( n* e3ista celebritate/!; en"0 Probleme de sintez -' @n grup de elevi formeaz o coloan care are m r.nduri, m-5, cu n elevi pe r.nd, n; <e pe fiecare r.nd este ales cel mai scund elev, iar dintre alei, cel mai nalt primete un steag +l doilea steag este repartizat n mod similar, se alege de pe fiecare r.nd cel mai nalt elev, iar dintre alei, cel mai scund Bn cazul n care e7ist mai muli elevi cu aceeai nlime, se alege primul dintre ei * se scrie un program care s afieze nlimile purttorilor de steag8 valorile m, n i nlimile elevilor se citesc de la tastatur Exemplu: m=$ n=% rBndul 1: 120 1$0 1%0 1&0 rBndul 2: 110 120 1$0 1$0 rBndul $: 1%0 1%0 1&0 1&0 < primul stea# este dat elevului din p"-i)ia 3$,14, cu +nl)imea 1%0, iar al d"ilea stea# elevului din p"-i)ia 32,$4, cu +nl)imea 1$0. &CDI -A3A clasa a V-a' 0' Bntr-un parc cu castani un copil gsete o zon cu -0 dale, aran%ate su$ forma unui dreptung)i cu : linii i 9 coloane Copilul i noteaz numrul de castane de pe fiecare dal, ncep.nd cu dala de pe prima linie i prima coloan, continu.nd linie cu linie &notiele copilului se introduc de la tastatur' #l pornete de pe prima dal &unde nu sunt castane', se poate muta de pe o dal pe alta doar pe linie sau pe coloan Copilul adun castanele de pe fiecare dal pe care a%unge i face un numr de , mutri &4 citit de la tastatur' Comanda unei mutri de pe o dal pe alta se va face aps.nd pe una dintre tastele +, B, C sau <, unde mutrile posi$ile sunt definite astfel" + K pe linia anterioar8 B K pe coloana urmtoare8 C K pe linia urmtoare8 < K pe coloana anterioar a *e cere s se afieze c.te castane a adunat copilul dup fiecare mutare $ Copilul se %oac cu cifrele numrului total de castane, o$inut la punctul a , conform urmtoarelor e7emple" -=9 ]F -- ]F 0, 3 ]F 3, -: ]F 5, A= ]F -; ]F =, -A3A ]F 0= ]F A Ce cifr o$ine copilul la punctul &$ ' pentru numrul o$inut la punctul &a ', dup mutarea ,C O$s " Copilul nu va primi comenzi prin care s ias de pe dale Exemplu: ?entru urmt"area reparti)ie de castane pe dale ( ' : . 2 2 2( & 9 7 2 2 i pentru D = %: a0 Co-en8i "e la tastat*rZ: )e8*ltat a1i[at pe ecran H ' C 7 H & C 22 $ -0 ]F 9 ;'

9'

&CDI *atu-?are 0660 clasa a VI-a' ?arius are o org de lumini de form dreptung)iular cu n linii i m coloane de $eculee Iuncionarea orgii este automat, automodific.ndu-se o dat la - secund simultan toate $ecurile, dup urmtoarea regul" dac un $ec are un numr par de $ecuri vecine aprinse &n st.nga, dreapta, sus i %os' atunci i sc)im$ starea &dac este aprins se stinge, iar dac este stins se aprinde', ns dac are un numr impar de $ecuri vecine aprinse i pstreaz starea ,tiind configuraia iniial a orgii determinai cum va arta orga dup , secundeC >estricii"-N/n,mN/-66, -N/,N/566 <ate de intrare" n m K dimensiunile orgii, , K timpul de rulare a orgii, n linii, fiecare av.nd m elemente separate printr-un spaiu, reprezent.nd strile $ecurilor *tarea unui $ec este data prin -, daca $ecul este aprins i 6, daca este stins <ate de ieire" n linii cu m elemente de 6 i - reprezent.nd configuraia orgii dup , secunde, elementele fiind separate printr-un spaiu 0 Exemplu: Fate de intrare: % % $ -66--66 6--6666 1spuns" 6-66 ---66----Explica)ie: -66--66 ---6 6-66 --66 66-- ---6 ---6--- -66- -6-- 66-6666 -666 -6-6 ---Dot" <ac un element are 6 $ecuri vecine aprinse, se consider c are un numr par de $ecuri vecine aprinse &CDI *atu-?are 066: clasa a VI-a' Rspunsuri: Problema 1 var a: arrayW200'(,200'(X o1 byte; i,5,n,-,-a3,-in,l,c,co: byte; begin write( -,n#/!; rea"(-,n!; writeln( intro"* inalti-ile !; 1or i:#2 to - "o begin writeln( ran"*l ,i!; 1or 5:#2 to n "o rea"(aWi,5X!; en"; -a3:#(; 1or i:#2 to - "o begin -in:#2((; 1or 5:#2 to n "o i1 -inOaWi,5X t<en begin -in:#aWi,5X; c:#5 en"; i1 -a3M-in t<en begin -a3:#-in; l:#i; co:#c en"; en"; writeln( pri-*l steag: pe po8itia ( , l , /,/ , co ,/! elev*l*i c* inalti-ea "e /,-a3,/ c-/ !; -in:#2((; 1or i:#2 to - "o begin -a3:#(; 1or 5:#2 to n "o i1 -a3MaWi,5X t<en begin -a3:#aWi,5X; c:#5 en"; i1 -inO-a3 t<en begin -in:#-a3; l:#i; co:#c en"; en"; ;7

writeln( al "oilea steag: pe po8itia ( , l , /,/ , co ,/! elev*l*i c* inalti-ea "e /,-in,/ c-/ !; en"0 Problema 2 bar a: arrayW2009,200.X o1 byte; l,c,,,-: byte; n,s: integer; co-: c<ar; begin writeln( intro"* n*-ar*l "e castane/!; 1or l:#2 to 9 "o 1or c:#2 to . "o rea"(aWl,cX!; write( n*-ar -*tari:/!; rea"ln(,!; l:#2; c:#2; s:#aW2,2X;-:#(; Im=numar mutari,l=linia c=coloana matricii de daleJ repeat write( co-an"a:/!; rea"ln(co-!;; inc(-!; case co- o1 a/: "ec(l!; b/: inc(c!; c/: inc(l!; "/: "ec(c!; en"; s:#s%aWl,cX; writeln(s,/ castane/!; *ntil -#,; repeat Ise face repetat suma cifrelor lui s pana se obtine un numar de o cifraJ n:#s; s:#(; repeat s:#s%n -o" 2(; n:#n "iv 2( *ntil n#(; *ntil sM2(; writeln( n*-ar obtin*t:/,s!; en"0 Problema 3 var a,b: arrayW(002(2,(002(2X o1 byte;Ia=starea initiala a becurilor, b=starea lor dupa o# i,5,,,-,n,0s,sec: integer; %secundaJ begin write( -,n#/!; rea"(-,n!; write( n*-ar sec*n"e:/!; rea"(,!; write( con1ig*ratia initiala a orgii:/!; 1or i:#2 to - "o 1or 5:#2 to n "o rea"(aWi,5X!; Ipentru usurarea calculului sumei ecinilor nenuli, bordez matricea cu elemente nule J 1or i:#2 to - "o begin aWi,(X:#(; aWi,n%2X:#( en"; 1or 5:#( to n%2 "o begin aW(,5X:#(; aW-%2,5X:#( en"; Ila fiecare secunda se sc"imba simultan starea celor m8n becuri, noua stare se memoreaza in b, care a de eni ec"ea stare pentru secunda urmatoareJ 1or sec:#2 to , "o begin 1or i:#2 to - "o 1or 5:#2 to n "o begin s:#aWi42,5X%aWi%2,5X%aWi,542X%aWi,5%2X; i1 s -o" 2#( t<en begin i1 aWi,5X#( t<en bWi,5X:#2 else bWi,5X:#( en" else bWi,5X:#aWi,5X; en"; 1or i:#2 to - "o 1or 5:#2 to n "o aWi,5X:#bWi,5X; en"; 1or i:#2 to - "o begin 1or 5:#2 to n "o write(aWi,5X!; writeln; ;:

en"; en"0 4I. =iruri de caractere ) tipul string* Parcurgere, testarea elementelor -' * se afieze cu litere mari un te7t dat, de ma7im 055 caractere 0' * se afieze numrul de vocale dintr-un te7t scris cu litere mici, memorat ntr-o varia$il strin# 9' * se scrie toate prefi7ele unui cuv.nt dat8 prin prefi7 se nelege irul format din primele caractere ale cuv.ntului, minim un caracter, ma7im toate Exemplu: pre'ixele pentru tabl"u sunt: t ta tab tabl tabl" tabl"u. :' * se afieze toate sufi7ele unui cuv.nt Exemplu: cuvBntul tabl"u, su'ixele: u "u l"u bl"u abl"u tabl"u. 5' * se sta$ileasc proprietatea de palindrom a unui cuv.nt . Exemplu: cuvBntul c"0"c este palindr"m. ;' Bntr-un te7t de ma7im 055 caractere, s se afieze cea mai lung secven de caractere identice. <ac sunt mai multe secvene, se va afia prima Exemplu: text: aabsssdadaaab se va a'i a sss. =' * se afieze literele folosite i frecvena fiecreia ntr-un te7t de ma7im 055 de caractere 3' *e d un te7t cu cel mult 055 caractere i o secven continu de litere Cuvintele din te7t sunt separate prin unul sau mai multe spaii *e cere s se determine numrul de apariii a grupului de litere dat, n te7t . Exemplu: text: Alina mer#e sa cumpere mere, #rup de litere: me, se va a'i a 2. A' * se codifice un te7t dat afi.nd n locul fiecrei litere codul ei +*CII * se afieze te7tul codificat, cu un spaiu ntre coduri i trei spaii pentru un spaiu n te7t Exemplu: textul: LAm un marM se va a'i a 6& 109 11/ 110 109 9/ 11%. -6' Bntr-un te7t dat, s se nlocuiasc o liter dat cu o alt liter dat de la tastatur --' * se verifice dac dou cuvinte date au aceleai litere -0' * se introduc n calculator un numr cu mai mult de -6 cifre, su$ form strin#, i s se afieze cu cifrele grupate c.te trei, de la dreapta la st.nga, grupele fiind separate de punct Exemplu: numrul 12$%&6/8900 va 'i a'i at ca 12.$%&.6/8.900 Rspunsuri: Problema 1 var te3t: string; i: byte; begin write( te3t:/!; rea"ln(te3t!; 1or i:# 2 to lengt<(te3t! "o write( *pcase(te3tWiX!!; en"0 Problema 2 var te3t: string; c,i: byte; begin write( te3t:/!; rea"ln(te3t!; c:#(; 1or i:# 2 to lengt<(te3t! "o i1 (te3tWiX#/a/! or (te3tWiX#/e/! or (te3tWiX#/i/! or (te3tWiX#/o/! or (te3tWiX#/*/! t<en inc(c!; writeln( te3t*l contine ,c,/ vocale/!; en"0 Problema 3 ;&

var c*v: string; i: byte; begin write( c*vant:/!; rea"ln(c*v!; 1or i:# 2 to lengt<(c*v! "o writeln(copy(c*v,2,i!!; en"0 Problema 4 La 1el ca la Proble-a ., se sc<i-ba "oar para-etr*l po8itie "in 1*nctia copy: avewriteln(copy(c*v, lengt<(c*v!%24i ,i!!; Problema 5 var c*v: string; lc,i: byte; pal: boolean; begin write( c*vant:/!; rea"ln(c*v!; lc:#lengt<(c*v!; pal:#tr*e; 1or i:# 2 to (lc "iv 2! "o i1 c*vWiXMO c*vWlc%24iX t<en pal:#1alse; i1 pal t<en writeln( palin"ro-/! else writeln( n* este palin"ro-/!; en"0 Problema 6 var te3t: string; lc,l-a3,po8,i: byte; begin write( te3t:/!; rea"ln(te3t!; lc:#2; l-a3:#2; po8:#2; Ilc=lungimea curenta a sec entei de caractere egale, lmax=lungime maxima, poz=pozitia pimului caracter din sec enta solutieJ 1or i:# 2 to lengt<(te3t!42 "o i1 te3tWiX#te3tWi%2X t<en inc(lc! else begin i1 lcOl-a3 t<en begin l-a3:#lc; po8:#i%24l-a3; en"; lc:#2; en"; i1 lcOl-a3 t<en begin l-a3:#lc; po8:#i%24l-a3; en"; Itest pt. ultima sec entaJ writeln( cea -ai l*nga secventa:/!; 1or i:# 2 to l-a3 "o write(te3tWpo8X!; en"0 Problema 7 var te3t: string; i,c: byte; l: c<ar; begin write( te3t:/!; rea"ln(te3t!; 1or l:#/a/ to 8/ "o begin Ise numara aparitiile fiecarei litereJ c:#(; 1or i:#2 to lengt<(te3t! "o i1 te3tWiX#l t<en inc(c!; i1 cMO( t<en writeln( litera ,l,/ apare "e ,c,/ ori/!; en"; en"0 Problema 8 var te3t,c*v: string; c,l,i: byte; begin writeln( te3t:/!; rea"ln(te3t!; writeln( gr*p "e litere:/!; rea"ln(c*v!; l:#lengt<(c*v!; c:#(; 1or i:#2 to lengt<(te3t!4l "o i1 copy(te3t,i,l!#c*v t<en inc(c!; writeln( secventa ,c*v,/ apare "e ,c,/ ori/!; en"0 Problema 9 var te3t: string; i: byte; begin ;;

writeln( te3t:/!; rea"ln(te3t!; 1or i:#2 to lengt<(te3t! "o i1 te3tWiXMO/ t<en write(or"(te3tWiX!,/ ! else write( !; en"0 Problema 10 var te3t,te3tno*: string; l2,l2: c<ar; i: byte; begin writeln( te3t:/!; rea"ln(te3t!; writeln( litera care se inloc*ieste:/!; rea"ln(l2!; writeln( litera c* care se inloc*ieste:/!; rea"ln(l2!; te3no*:#//; Iinitial sirul id, dupa bucla for a a ea ca aloare noul textJ 1or i:#2 to lengt<(te3t! "o i1 te3tWiX#l2 t<en te3tno*:#te3tno*%l2 else te3tno*:#te3tno*%te3tWiX; writeln( no*l te3t:/,te3tno*!; en"0 Problema 11 var c*v2,c*v2: string; l: c<ar; i: byte; or": boolean; begin writeln( pri-*l c*vant:/!; rea"ln(c*v2!; writeln( al "oilea c*vant:/!; rea"ln(c*v2!; repeat Iordonez alfabetic literele din cele doua cu inteJ or":#tr*e; 1or i:#2 to lengt<(c*v2!42 "o i1 c*v2WiXOc*v2Wi%2X t<en begin l:#c*v2WiX; c*v2WiX:#c*v2Wi%2X; c*v2Wi%2X:#l ;or":#1alse; en"; *ntil or"; repeat Iordonez alfabetic literele din cele doua cu inteJ or":#tr*e; 1or i:#2 to lengt<(c*v2!42 "o i1 c*v2WiXOc*v2Wi%2X t<en begin l:#c*v2WiX; c*v2WiX:#c*v2Wi%2X; c*v2Wi%2X:#l ;or":#1alse; en"; *ntil or"; i1 c*v2#c*v2 t<en writeln( c*vinte c* aceleasi litere/! else writeln( n* a* aceleasi litere/!; en"0 Problema 12 var n: string; r,i: byte; begin writeln( n*-ar:/!; rea"ln(n!; r:#lengt<(n! -o" .; Ir=numarul de cifre din prima grupaJ i1 rO( t<en begin 1or i:#2 to r "o write(nWiX!; write( 0/!; en"; i:#r%2; w<ile iMlengt<(n! "o begin write(nWiX,nWi%2X,nWi%2X!,/0/!; i:#i%. en"; en"0 'coaterea cuvintelor dintr+un text -' *e consider un te7t memorat ntr-o varia$il strin# * se scrie un program care numr cuvintele din te7t, separatorii folosii fiind spaiul, punctul, virgula 0' <in mai multe linii de la tastatur se citete un te7t terminat cu 1, format din mai multe propozii *e cere s se afieze numrul cuvintelor din fiecare propoziie &separatorul fiind spaiul' i numrul propoziiilor &separatorul fiind un punct i un spaiu' 9' O linie citit de la tastatur cuprinde cuvinte separate prin spaii *e cere s se afieze lungimea minim i ma7im a cuvintelor din linie 2((

:'

*e citete de la tastatur un te7t cu ma7im 055 caractere, cuvintele fiind separate de spaiu, punct, virgul i caracterele C,R *e cere s se afieze unul su$ altul cuvintele din te7t Exemplu: pentru textul: ?leaca ("n la mareN se va a'i a: ?leaca ("n la mare 5' * se afieze n ordine alfa$etic cuvintele formate din dou litere dintr-un te7t dat ;' *e d un te7t cu cel mult 055 caractere, litere mici i mari ale alfa$etului englez i spaii *e cere s se afieze cuvintele din te7t de lungime ma7im Exemplu: ("nica vrea sa mear#a cu Eircea al mare, se va a'i a: ("nica mear#a Eircea. =' *e introduc de la tastatur dou te7te prin dou varia$ile de tip strin# *e cere s se afieze cuvintele comune celor dou te7te, tiind c dou cuvinte pot fi separate prin unul sau mai multe spaii. Exemplu: pentru textele: ("n mer#e la peste i Fan mer#e la ("n, se va a'i a : ("n mer#e la.

Rspunsuri: Problema 1 var t: string; i,c,,: byte; begin write( te3t:/!; rea"ln(t!; c:#(; ,:#(; Icontorizeaza alternanta spatiu 7 caracter diferit de spatiu9J 1or i:#2 to lengt<(t! "o i1 tWiX#/ t<en ,:#c else c:#,%2; writeln( te3t*l are ,c,/ c*vinte/!; en"0 Problema 2 var t: c<ar; p,c,,: byte; begin writeln( te3t:/!; c:#(; ,:#(; p:#(; repeat rea"(t!; i1 t#/ t<en ,:#4c else c:#,%2; i1 t#/0/ t<en inc(p!; *ntil t#/$/ writeln( te3t*l are ,p,/ propo8itii si ,c,/ c*vinte/!; en"0 Problema 3 var c<: c<ar; c, l-in, l-a3: integer; begin c:#(; l-in:#2''; l-a3:#2; repeat rea"(c<!; i1 (c<#/ ! an" (cO(! t<en begin i1 cMl-in t<en l-in:#c; i1 cOl-a3 t<en l-a3:#c; c:#(; en"; i1 c<MO/ t<en inc(c!; *ntil eoln; i1 cO( t<en begin 2(2

i1 cMl-in t<en l-in:#c; i1 cOl-a3 t<en l-a3:#c; en"; writeln( l*ngi-e -a3i-a:/,l-a3!; writeln( l*ngi-e -ini-a:/,l-in!; en"0 Problema 4 var t, c*v: string; i: byte; begin writeln( te3t:/!; rea"ln(t!; i:#2; repeat case tWiX o1 ,/0/,/,/,/@/,/U/: inc(i!; else begin c*v:#//; w<ile (iM#lengt<(t!! an" (tWiXMO/ ! an" (tWiXMO/0 ! an" (tWiXMO/, ! an" (tWiXMO/@ ! an" (tWiXMO/U ! "o begin c*v:#c*v%tWiX; inc(i! en"; writeln(c*v!; en"; *ntil IOlengt<(t!; en"0 Problema 5 Se scot c*vintele "in te3t ca la Proble-a 9, iar in loc "e writeln(c*v! se testea8a "aca c*v are l*ngi-ea 2; "aca "a, se -e-orea8a intr4*n vector "e string4*ri, care apoi se or"onea8a crescator si se a1isea8a0 Problema 6 var te3t: string; c*v: arrayW2002''X o1 string; I a contine cu intele din textJ n,i,,,-a3: byte; begin write( te3t:/!; rea"ln(te3t!; n:#lengt<(te3t!; i:#2; ,:#(; Ii=indicele in string, '=numar cu inte, indice in ectorul cu J w<ile iMn "o begin i1 te3tWiXMO/ t<en begin inc(,!; c*vW,X:#//; w<ile (te3tWiXMO/ ! an" (iMn! "o begin c*vW,X:#c*vW,X%te3tWiX; inc(i! en"; en"; en"; -a3:#(; Icalculez max dintre lungimile cu intelor din cu J 1or i:#2 to , "o i1 -a3Mlengt<(c*vWiX! t<en -a3:#lengt<(c*vWiX!; 1or i:#2 to , "o i1 -a3#lengt<(c*vWiX! t<en writeln(c*vWiX!; en"0 Problema 7 Se scot c*vintele "in 1iecare te3t si se -e-orea8a in cate *n vector0 Se a1isea8a ele-entele co-*ne celor "oi vectori0 Probleme de sintez -' *e consider un te7t cu lungimea ma7im de 055 caractere (e7tul este format din cuvinte separate de cel puin un spaiu *e cere s se gseasc cuvintele de lungime ma7im i toate literele care se regsesc simultan n toate aceste cuvinte &CDI Dvodari -AA0 clasa a V-a' 2(2

0'

9'

:'

5'

;'

='

0&!

*e citesc dou mulimi (5 i (% de cuvinte precum i un numr natural , * se aeze cuvintele mulimii (5 unele su$ altele astfel nc.t literele lor de pe poziia , s formeze pe vertical un cuvnt din mulimea (% * se afieze unele su$ altele cuvintele din mulimea (5 dup ce au fost ordonate corespunztor. Exemplu: E1=Hcarte, acesta, arid, racI, E2=H cutie, abac, acar, c"rtI, D=2, re-ultatul carte acesta ra c arid . &CDI Dvodari -AA0 clasa a VII-a' *e introduce un te7t format din cuvinte desprite prin oric.te spaii i av.nd ma7im 055 de caractere, toate ma%uscule a' * se afieze toate cuvintele din te7t, unul dup altul $' * se gseasc lungimea celui mai mic cuvnt c' *e citete un cuv.nt de la tastatur8 s se afieze toate cuvintele din te7t care au aceeai lungime i sunt formate din e7act aceleai litere cu ale cuvntului dat &CDI Buteni -AA: clasa a VII-a' *e consider un ir de cel mult -66 caractere, format din literele mici ale alfa$etului englez *e numete o $.l$ o secven de caractere care apare n ir de cel puin dou ori i una dup alta Exempu: abbcabab are bBlbele b i ab. a' * se determine cea mai lung $.l$ din irul considerat &ca numr de caractere' $' * se codifice irul dat nlocuind fiecare caracter cu ultima cifr a lui 0 la puterea x, unde x este codul +*CII asociat literei respective Exemplu: Fate de intrare abbcabab date de ie ire a4 ab b4 2%%82%2% &CDI -AA= clasa a VI-a' *e citete de la tastatur un numr natural n, nN/-5' !entru a codifica un te7t scris cu cel mult primele n litere mici din alfa$etul englez, se folosesc cele mai mici n numere naturale care au e7act 9 divizori !entru litera a se folosete cel mai mic numr cu aceast proprietate, pentru $ cel mai mic numr diferit de cel folosit pentru a, etc a' * se afieze cele n numere folosite la codificare $' pentru un te7t dat de la tastatur cu ma7im 06 de litere, se cere s se afieze codificarea te7tului Exemplu: pentru n=2 i textul aabbaa, se va a'i a a4 % 9 $' ::AA:: &CDI *inaia -AA3 clasa a VI-a' *e dau dou numere a,b cu ma7im 3 cifre <up fi7area a dou cifre, c.te una din fiecare numr, aceste cifre se intersc)im$ ntre ele, o$in.ndu-se alte dou numere a>, b> <e e7emplu, din numerele a/09, b/:-;, fi7.nd prima cifr din a i a doua cifr din b, dup intersc)im$area lor se o$in numerele a>/-9, b>/:0; * se determine a> i b>, astfel nc.t suma a>2b Ts fie ma7im Exemplu: a=2$, b=%16, suma maxim se "b)ine pentru 6$ i %12. &CDI *inaia -AA3 clasa a VI-a' ?em$rii cercului de electronic de la Clu$ul Copiilor din +iud au realizat un ro$ot care tie s se deplaseze la comand +stfel comanda 1x deplaseaz ro$otul x metri spre nord, comanda /?, 4z, 't, deplaseaz ro$otul respectiv ? metri spre est, z metri spre vest, t metri spre sud &x,?,z,t numere naturale' @n grup de copii dau o serie de comenzi ro$otului pentru a-l rtci Ma comanda *(+I ro$otul se oprete Cunoscnd comenzile date, a%utai mem$rii clu$ului ca prin ma7im 0 comenzi s readuc ro$otul n punctul de plecare. Exemplu: , $ 9 & * $ E % E & , 2 *2A( r"b"tul revine la c"men-ile 9 % * 2 &Info*tar, +iud -AA= clasa a VI-a' *e citete de la tastatur un te7t de ma7im 055 de caractere *ingurul separator ntre cuvinte este considerat caracterul spaiu &*!+C#'

2(.

a *e va afia pentru fiecare cuv.nt" poziia cuv.ntului n te7t, adic al c.telea cuv.nt este8 numrul de litere8 suma codurilor +*CII ale literelor $ *e va afia frecvena de apariie a fiecrui cuv.nt n te7t &CDI *atu-?are 0660 clasa a VI-a'8 Rspunsuri: Problema 1 var t,8: string; 88: c<ar; 3: arrayW2002'7X o1 string; I a contine cu intele din textul tJ i,5,l-a3,,: integer; lit,litc*v: set o1 c<ar; begin write(Rte3t:/!; rea"ln(t!; ,:#(; i:#(; I'=indicele in x, i=indicele in stringJ w<ile iM#lengt<(t! "o begin w<ile (tWiX#/ /! an" (iM#lengt<(t!! "o inc(i!; 8:#//; w<ile (tWiXMO/ /! an" (iM#lengt<(t!! "o begin 8:#8%tWiX; inc(i! en"; i1 8MO// t<en begin inc(,!; 3W,X:#8;en"; en"; l-a3:#(; 1or i:#2 to , "o i1 l-a3Mlengt<(3WiX! t<en l-a3:#lengt<(3WiX!; writeln(c*vintele "e l*ngi-e -a3i-a:/!; 1or i:#2 to , "o i1 l-a3#lengt<(3WiX! t<en write(3WiX;/ /!; writeln; lit:#Wc<r(7'!00c<r(222!X; Imultimea literelorJ 1or i:#2 to , "o i1 l-a3#lengt<(3WiX! t<en begin litc*v:#WX; 1or 5:#2 to lengt<(3WiX! "o litc*v:#litc*v%W3WiXW5XX; lit:#lit$litc*v; Ise intersecteaza multimile literelorJ en"; writeln( literele co-*ne acestor c*vinte:/!; 1or 88:#c<r(7'! to c<r(222! "o i1 88 in lit t<en write(88,/ !; en"0 Problema 2 var -2,-2,-2s: arrayW200'(X o1 string; Im2s contine cu intele din m2, dar cu literele sortate crescatorJ c*v: arrayW200'(X o1 integer; Ic,i- a primi aloarea 1 daca cu antul m1,i- a fost afisat in solutia problemei, altfel este (J c: string; Icontine literele de pe pozitia ' din toate cu intele din m1J i,5,n2,n2,,,po8:integer; sortat,gasit: boolean; 3: c<ar; begin write( cate c*vinte s*nt in -2 !; rea"ln(n2!; write( c*vintele "in -2:/!; 1or i:#2 to n2 "o rea"ln(-2WiX!; write( cate c*vinte s*nt in -2 !; rea"ln(n2!; write( c*vintele "in -2:/!; 1or i:#2 to n2 "o begin rea"ln(-2WiX!; -2sWiX:#-2WiX en"; write( ,#/!; rea"(,!; c:#//; Iconstruiesc sirul literelor de pe pozitia ' in cu intele din m1J 1or i:#2 to n2 "o c:#c%-2WiXW,X; repeat Isortez crescator literele lui cJ sortat:#tr*e; 1or i:#2 to n242 "o i1 cWiXOcWi%2X t<en begin 3:#cWiX;cWiX:#cWi%2X;cWi%2X:#3;sortat:#1alse 2(9

en"; *ntil sortat; 1or i:#2 to n2 "o Isortez crescator literele cu intelor din m2s, copia lui m2J repeat sortat:#tr*e; 1or 5:#2 to lengt<(-2sWiX!42 "o i1 -2sWiXW5XO-2sWiXW5%2X t<en begin 3:#-2sWiXW5X;-2sWiXW5X:#-2sWiXW5%2X;-2sWiXW5%2X:#3;sortat:#1alse en"; *ntil sortat; gasit:#1alse; Icaut cu antul c in multimea m2s, memorez pozitia in pozJ 1or i:#2 to n2 "o i1 c#-2sWiX t<en begin gasit:#tr*e; po8:#i en"; 1or i:#2 to n2 "o c*vWiX:#(; i1 gasit t<en 1or i:#2 to n2 "o begin Icaut in m1 cu antul care are a '-a litera egala cu# 5:#2; Ia i-a litera a cu antului de pe pozitia poz in m2J w<ile (-2Wpo8XWiXMO-2W5XW,X! or (c*vW5X#2X "o inc(5!; c*vW5X:#2; writeln(-2W5X!; en" else writeln( N* e3ista sol*tie/!; en"0 Problema 3 Pentr* a! si b!, ve8i Proble-a 9 si Proble-a 7 "in secti*nea anterioara0 La c!, se 1ace o copie a vector*l*i "e c*vinte c*v, in care or"ona- al1abetic literele "in 1iecare ele-ent0 Se co-para c*vant*l "at scris c* litere or"onate al1abetic, c* toate ele-entele no*l*i vector0 Gaca coinci", se a1isea8a ele-ent*l "in vector*l c*v "e pe po8itia respectiva0 Problema 4 var t: string; lc,l-a3,i,5,pos: byte; begin writeln( te3t:/!; rea"ln(t!; lc:#2; l-a3:#2; pos:#2; Ilc=lungimea balbei curente, lmax=cea mai lunga balbaJ 1or i:#2 to lengt<(t!42 "o Ipos=pozitia de inceput a balbeiJ 1or 5:#i%2 to lengt<(t! "o i1 tWiX#tW5X t<en begin Idaca t,i- mai apare spre dreapta, se erifica daca si caracterele dintre cele doua pozitii coincid cu cele care urmeaza dupa t,&- J i1 copy(t,i%2,54i42!#copy(t,5%2,54i42! t<en Ia em o balba si erificam lungimea saJ begin lc:#54i; i1 lcOl-a3 t<en begin l-a3:#lc; pos:#i en"; en"; en"; writeln( a! cea -ai l*nga balba este:/,copy(t,pos,l-a3!; writeln( b! te3t*l co"i1icat:/!; 1or i:#2 to lengt<(t! "o case or"(tWiX! -o" 9 o1 (: write(7!; 2: write(2!; 2: write(9!; .: write(&!; en"; writeln; en"0 Problema 5 var v: arrayW2002((X o1 integer; I a contine numerele cu trei di izori J s: string; ,,5,i,n: integer; pri-: boolean; begin 2('

write( n#/!; rea"ln(n!; write( te3t:/!; rea"ln(s!; i:#2;I construiesc ectorul cu patratele primelor n numere prime, i=nr. care se testeaza daca# ,:#(; Ieste prim, '=indice in J repeat pri-:#tr*e; 1or 5:#2 to i "iv 2 "o i1 i -o" 5#( t<en pri-:#1alse; i1 pri- t<en begin inc(,!; vW,X:#i%i; en"; inc(i!; *ntil ,#n; write( a! !; 1or i:#2 to n "o write(vWiX:.!; writeln; writeln( b! !; 1or i:#2 to lengt<(s! "o write (vWor"(sWiX!4or"( a/!%2X:.!; en"0 Icu functia ord s-a determinat pozitia literei in alfabetJ Problema 6 var a,b,aa,bb,s-a3,a-a3,b-a3: longint; i,5,la,lb,co": integer; c: c<ar; s2,s2,sa,sb: string; begin write( a,b#/!; rea"(a,b!; str(a,sa!; str(b,sb!; Itransform numerele in string-uriJ la:#lengt<(sa!; lb:#lengt<(sb!; s-a3:#(; Icalculez maximul dintre toate sumele posibileJ 1or i:#2 to la "o 1or 5:#2 to lb "o begin s2:#sa; s2:#sb; c:#s2WiX; s2WiX:#s2W5X; s2W5X:#c; Iintersc"imb doua cifre din a si bJ val(s2,aa,co"!; val(s2,bb,co"J; i1 s-a3Maa%bb t<en begin s-a3:#aa%bb; a-a3:#aa; b-a3:#bb en"; en"; writeln( s*-a -a3i-a este ,s-a3,/ si se obtine pentr* ,a-a3,/ si ,b-a3!; en"0 Problema 7 var c: arrayW2002((X o1 string; I a retine comenzileJ i,5,,,s,n,e,v,nr,"eplori8,"eplvert: integer; begin i:#(; repeat inc(i!; write( co-an"a !; rea"(cWiX!; *ntil cWiX#/stai/; s:#(; n:#(; e:#(; v:#(; Iinsumeaza deplasarile spre sud, nord, est, estJ 1or 5:#2 to i42 "o begin nr:#(; ,:#2; Iformez numarul care reprezinta, in comanda, deplasareaJ w<ile cW5XW,X#/ "o inc(,!; w<ile ,Mlengt<(cW5X! "o begin nr:#nr$2(%or"(cW5XW,X!4or"( (/!; inc(,! en"; case cW5XW2X o1 Itestez directiaJ n/: n:#n%nr; s/: s:#s%nr; e/: e:#e%nr; v/: v:#v%nr; en"; en"; "eplori8:#e4v; "eplvert:#n4s; i1 "eplori8O( t<en write( F ,"eplori8! else write( = ,"eplori8!; 2(7

i1 "eplvertO( t<en write( S ,"eplvert! else write( N ,"eplvert!; en"0 Problema 8 var te3t: string; c*v: arrayW2002''X o1 string; I contine cu intele din textJ i,5,,,s,na: byte;or"onat: boolean; 3:string; begin write( te3t:/!; rea"ln(te3t!; i:#2; ,:#(; Ii=indicele in string, '=numar cu inte, indice in ectorul cu J w<ile iMn "o begin i1 te3tWiXMO/ t<en begin inc(,!; c*vW,X:#//; w<ile (te3tWiXMO/ ! an" (iMn! "o begin c*vW,X:#c*vW,X%te3tWiX; inc(i! en"; en"; en"; 1or i:# 2 to , "o begin write( a! c*vant*l ,c*vWiX,/ oc*pa po8itia ,i!; s:#(; 1or 5:#2 to lengt<(c*vWIX! "o s:#s%or"(c*vWiXW5X!; writeln( are s*-a co"*rilor ESCII#/,s!; en"; write( b! !; repeat Iordonez alfabetic ectorul cu J or"onat:#tr*e; 1or 5:#2 to ,42 "o i1 c*vW5XOc*vW5%2X t<en begin 3:#c*vW5X;c*vW5X:#c*vW5%2X;c*vW5%2X:#3;or"onat:#1alse en"; *ntil or"onat; i:#2; repeat na:#2; Ina=numar de aparitii al cu antului cu ,i- J w<ile (c*vWiX#c*vWi%2X! an" (iM#,! "o begin inc(na!; inc(i! en"; writeln(c*vWiX,/ apare "e ,na,/ ori/!; inc(i! *ntil iO,; en"0 4II0 Probleme diverse -' *in$ad ?arinarul viseaz c se afl ntr-o peter cu comori !este tot se aflau cufere pline cu $i%uterii i monezi de aur ,i n timp ce *in$ad se minuna, se auzi o voce care spuse" X #7ist o cale de a a%unge aici i dac reueti toate aceste comori vor fi ale tale +ceast peter se afl n v.rful muntelui +rarat , dar du)urile rele vor ncerca s te opreasc (u tre$uie s le nvingi n lupt dreapt !entru a desc)ide petera tre$uie s-i aminteti c.te du)uri ai nvins i s rosteti cu voce tare formula magic, care este cel mai mic numr care are at.t prima cifr c.t i numrul de cifre egal cu numrul du)urilor nvinse de tine Bn plus, acest numr tre$uie s ai$ proprietatea c orice secven de dou cifre consecutive tre$uie s fie numere prime diferite Bn acest moment, *in$ad s-a trezit i vrea s plece n cutarea comorii Du se teme de du)urile rele, dar tie c.te calcule necesit cutarea formulei magice &i mai tie c la matematic nu se descurc foarte $ine' <e aceea, v roag s-l a%utai .

2(:

*in$ad v va spune numrul n egal cu numrul du)urilor nvinse de el, iar voi tre$uie s-i spunei formula magic Bn cazul n care nu e7ist un astfel de numr, transmitei-i c Du e7ist Exemplu: n=$ se va a'i a $11 &ODI 0660 clasa a VI-a' 0' Jigel are de rezolvat urmtoarea pro$lem" se consider numrul natural 1 format din ma7im A cifre, distincte dou c.te dou i n care nu e7ist cifra 6 Jigel va tre$ui s fac $ileele pentru fiecare cifr din numr, $ileele pe care le va pune ntr-o cciul, conform urmtorului algoritm" iniial pornete de la ultima cifr a numrului &cifra unitilor' i pune n cciul $ileelul pe care este scris aceast cifr <ac aceasta este o valoare par, ncepe parcurgerea numrului spre dreapta, n caz contrar spre st.nga, parcurgerea fc.ndu-se cu un numr de pai egal cu cifra respectiv Bn parcurgerea unui numr spre dreapta se consider c dup ultima cifr urmeaz prima &cea mai semnificativ cifr a numrului', dup aceasta urmeaz a doua, etc , iar n deplasarea spre st.nga dup prima cifr &cea mai semnificativ cifr a numrului' urmeaz ultima cifr &cifra unitilor', apoi penultima, etc , iar parcurgerea ncepe cu cifra din numr imediat de l.ng cifra scris pe ultimul $ileel introdus n cciul, respect.nd sensul parcurgerii <e e7emplu, dac numrul nostru este -9:;, Jigel pornete de la cifra ;, iar $iletul pe care s-a scris aceast cifr l pune n cciul !arcurge numrul spre dreapta, fc.nd ; pai8 trece prin cifrele" -,9,:,;,- i se oprete la cifra 9 <eci, n cciul va pune $ileelul pe care este scris cifra 9 +lgoritmul continu p.n c.nd se termin toate $ileelele sau c.nd a%unge la o cifr pentru care $ileelul cu valoarea respectiv a fost introdus de%a n cciul Cerin" Bn cazul n care algoritmul se nc)eie ntruc.t Jigel a pus toate $ileelele n cciul, se va afia cifra de pe ultimul $ileel introdus n cciul, iar n cazul n care Jigel a%unge n timpul parcurgerii la o cifr pentru care $ileelul corespunztor a fost introdus de%a n cciul, se va afia valoarea acestei cifre <ate de intrare" *e va citi de la tastatur numrul natural 1 format din cel mult A cifre distincte dou c.te dou, n care nu e7ist cifra 6 <atele de ieire" *e va afia pe ecran cifra la care Jigel a a%uns n momentul opririi algoritmului Exemple : 14 ,=%12 Ki#el +ncepe cu ci'ra 2 3bile)elul cu ci'ra 2 este pus de Ki#el +n cciul4< 'iind val"are par, parcur#e spre dreapta i se "pre te la ci'ra 1, bile)elul cu aceast ci'r 'iind pus +n cciul. .i'ra 1 'iind impar, c"ntinu parcur#erea spre stBn#a i se "pre te la ci'ra % i pune ast'el i ultimul bile)el +n cciul. Fin acest m"ment nu mai exist bile)ele nepuse +n cciul i se va a'i a deci ci'ra % . 24 ,=12%$ Ki#el +ncepe cu ci'ra $ 3bile)elul cu ci'ra $ este pus de Ki#el +n cciul4< 'iind val"are impar, parcur#e spre stBn#a i se "pre te la ci'ra 1, bile)elul cu aceast ci'r 'iind pus +n cciul. .i'ra 1 'iind impar, c"ntinu parcur#erea spre stBn#a i se "pre te t"t la ci'ra $, dar nu mai exist bile)elul cu ci'ra $ pentru a putea 'i pus +n cciul. *e va a'i a deci, ci'ra $. &ODI Iocani 0669 clasa a VI-a' 9' *impatie mare ntre Ionel i ?rioara, doi elevi venii n ta$r la JlciucLR !entru a scpa de indiscreia colegilor, cei doi )otrsc s-i trimit mesa%e, unul altuia, folosind o metod simpl de criptare" te7tul de criptat se scrie pe o foaie, aran%.nd literele cuvintelor ntr-un ta$lou av.nd c.te 5 caractere pe fiecare linie *paiul dintre cuvinte este i el caracter (e7tul astfel aran%at pe un numr suficient de linii pentru a ncape, se citete pe coloane, de sus n %os i de la st.nga la dreapta Bn locul spaiilor dintre cuvinte se pun puncte (ot puncte se pun i la sf.ritul te7tului, at.tea c.te spaii li$ere sunt rmase la sf.ritul te7tului GpusH n ta$lou 2(&

Exemplu: ?entru textul: 2e astept dupa cina la "ra 8 se va aran0a*


2 , t " # l a 2 e e u i a . P P 8 9 a t a a o ' s

se va c"di'ica: (tdclaeeuia ppn 3ataao s r Fec"di'icarea mesa0ului se va 'ace +nvers c"di'icrii. +%utai-i, realiz.nd un program care s codifice i s decodifice mesa%ele celor doi copii !entru diferenierea mesa%elor ce tre$uie codificate, de cele care tre$uie decodificate, primul caracter al mesa%ului va fi TCU sau TcU pentru codificare, respectiv T<U sau TdU pentru decodificare +ceste caractere, vor fi lipite de prima litera din te7tul mesa%ului Intrare" C+m un mar Ieire" + mm aurn Intrare" d(aJia au$llcaaa r c Ieire" (a$ara la Jalaciuc &ODI Jlciuc 0660 clasa a VI-a' :' * se calculeze anul, ziua, luna i ora revenirii unei rac)ete pe !m.nt cunosc.nd anul, ziua, luna i ora plecrii i durata z$orului n minute Q$orul dureaz cel mult un an &CDI Dvodari -A3A clasa a VI-a' 5' ?inisterul numerelor are de c.teva zile un nou ef +cesta a dorit s fac o serie de sc)im$ri n ministerul pe care l conduce i a nceput GreorganizareaH cu mulimea numerelor naturale n 0 etape" mai nt.i toate numerele naturale au fost aezate fr spaiu &sau alt separator' ntre ele <up aceast prim etap, mulimea numerelor naturale arta astfel" -09:5;=3A-6---0-9-:-5-;-=-3-A060-00090: + doua etap a GreorganizriiH a constat n formarea unor noi GgrupeH" o grup de o cifr, o grup de 0 cifre, o grup de 9 cifre i aa mai departe +stfel, Ggrupele reorganizateH sunt" -, 09, :5;, =3A-, 6---0, -9-:-5, -;-=-3-, A060-000, 90:050;0= L Cerin" !entru un numr natural 1 dat, s se afieze prima i ultima cifr din cea de-a 1-a grup de cifre o$inut dup GreorganizareH, valori separate printr-un spaiu >estricii" -N/1N/056 Exemplu: ?entru ,=8 se va a'i a: 9 2 3de"arece 9 i 2 sunt prima, respectiv ultima ci'r din #rupa a 8 a care este 92021222 4 &ODI Iocani 0669 clasa a VI-a' Rspunsuri: Problema 1 var n,p,nr,3,s8,",i: integer; b*n, pri-: boolean; begin p:#2; 1or i:#2 to n42 "o p:#p$2(; 1or nr:#n$p to (n%2!$p42 "o begin Idin inter alul ales se asigura ca prima cifra sa fie n J 3:#nr; b*n:#tr*e; I si sa aiba n cifreJ repeat s8:#3 -o" 2((; Idespart ultimele doua cifreJ pri-:#tr*e; 1or ":#2 to s8 "iv 2 "o i1 s8 -o" "#( t<en pri-:#1alse; i1 not pri- t<en b*n#1alse; 3:#3 "iv 2(; *ntil (3M2(!; i1 b*n t<en begin writeln(nr!; <alt en"; en"; en"0 Problema 2 var n: string; b: arrayW200;X o1 c<ar; co",ln,c,i,,: integer; e3: boolean; 2(;

begin write( n#/!; rea"ln(n!; Iintroduc numarul ca o ariabila stringJ cc:#2; Icc=numarul de cifre alese (bilete puse in caciula)J ln:#lengt<(n!; val(nWlX,c,co"!; Ic=cifra aleasa (numar bilet pus in caciulaJ bW2X:#nWlX; I ectorul b este imaginea biletelor din caciulaJ e3:#1alse; Iex=indica daca se repeta alegerea unei cifreJ i:#2; Ii=indicele in string-ul n J w<ile (ccMln! an" (e3#1alse! "o begin i1 c -o" 2#( t<en 1or ,:#2 to c "o begin inc(i!; i1 iOln t<en i:#2; en" else 1or ,:#2 to c "o begin "ec(i!; i1 i#( t<en i:#ln; en"; 1or ,:#2 to cc "o i1 nWiX#bW,X t<en e3:#tr*e; i1 not e3 t<en begin inc(cc!; bWccX:#nWiX; val(nWiX,c,co"! en"; en"; writeln( *lti-a ci1ra aleasa este ,nWiX!; en"0 Problema 3 var t: arrayW200'(,200'X o1 c<ar; -: string; i,5,,,l,r: integer; begin write( -esa5:/!; rea"ln(-!; r:#lengt<(-! -o" '; 1or i:#2 to r "o -:#-%/ ;Ise completeaza mesa&ul cu spatii pentru aJ l:#lengt<(-! "iv '; Iumple complet matricea, l=numar linii in matriceJ i1 (-W2X#/c/! or (-W2X#/C/! t<en begin Ise testeaza primul caracterJ ,:#2; 1or i:# 2 to l "o 1or 5:#2 to ' "o begin tWi,5X:#-W,X; inc(,!; en"; writeln( te3t co"i1icat:/!; 1or 5:# 2 to ' "o 1or i:#2 to l "o i1 tWi,5X#/ t<en write( 0/! else write(tWi,5X!; en" else begin ,:#2; 1or 5:#2 to ' "o Iasez mesa&ul pe coloanele unei matrici l,+J 1or i:#2 to l "o begin i1 -W,X#/0/ T<en tWi,5X:#/ else tWi,5X:#-W,X; inc(,!; en"; writeln( -esa5 "eco"i1icat:/!; 1or i:# 2 to l "o 1or 5:#2 to ' "o write(tWi,5X!; en"; en"0 Problema 4 var anp,lp,8p,op,ans,ls,8s,os,8bor: integer; o,8,": longint; begin write( an, l*na, 8i, ora plecarii:/!; rea"(anp,lp,8p,op!; 22(

write( "*rata 8bor, in -in :/!; rea"("!; o:# " "iv 7(; Io=numar ore de zborJ 8:# o "iv 29; Iz=numar zile de zborJ 8s:#8p; ls:#lp; ans:#anp; o:# o -o" 29; os:#op%o; i1 osO29 t<en begin 8s:#8s%2; os:#os -o" 29 en"; 1or 8bor:#2 to 8 "o begin 8s:#8s%2; i1 (8sO2;! an" (ls#2! an" (ans -o" 9#(! t<en begin ls:#ls%2; 8s:#2 en"; i1 (8sO2&! an" (ls#2! an" (ans -o" 9MO(! t<en begin ls:#ls%2; 8s:#2 en"; i1 (8sO.(! an" ((ls#9! or (ls#7! or (ls#;! or (ls#22!! t<en begin ls:#ls%2; 8s:#2 en"; i1 (8sO.2! an" ((ls#2! or (ls#.! or (ls#'! or (ls#:! or (ls#&! or (ls#2(! or (ls#22!! t<en begin ls:#ls%2; 8s:#2 en"; i1 lsO22 t<en begin ans:#ans%2; ls:#2 en"; en"; writeln( Gata sosirii: an*l /,ans,/ l*na ,ls,/ 8i*a ,8s,/ ora ,os!; en"0 Problema 5 var n,i,5,nc: integer; sir,s: string; begin write( N#/!; rea"(n!; sir:#//; Isir=sirul de cifre din grupele formateJ i:#2; Ii=sirul numerelor naturaleJ nc:#2; Inc=numar cifre in grupaJ repeat repeat str(i,s!; Is=sirul cifrelor numarului iJ 5:#2; I&=indexul in sJ w<ile (5M#lengt<(s! an" (lengt<(sir!Mnc!! "o begin sir:#sir%sW5X; inc(5! en"; inc(i!; *ntil lengt<(sir!#nc; i1 ncMn t<en sir:#copy(s,5,2''!; Isir preia cifrele ramase din numarul iJ inc(nc!; *ntil ncOn; writeln( gr*pa ,sir,/ incepe c* ,sirW2X,/ se ter-ina c* ,sirWnX! en"0

222

@ibliografieA <oru !opescu +nastasiu, .ule#ere de pr"bleme de in'"rmatic, +ll #ducational, 0666 ?arinel ,er$an, O;A*(., !etrion ?i)ai ?ocanu, $$$ pr"bleme de pr"#ramare , (eora <an Degreanu, ?r"bleme de matematic re-"lvate cu calculat"rul , (eora

$PBI1' C+! I Instruciuni de introducere, afiare i calculL LLLLLLLLLL pag 9 !ro$leme n care se utilizeaz restul i c.tul mpririi ntregiLLLLLL pag = C+! II Instruciunea de decizie8 algoritmi cu ramificaii Comparri ntre valorile a dou varia$ileLLLLLLLLLLLLLLLLL pag A Compararea valorii unei varia$ile cu o constantLLLLLLLLLLLL pag -(estarea c.tului sau a restului mpririi ntregiLLLLLLLLLLLLL pag -9 Operatori logiciLLLLLLLLLLLLLLLLLLLLLLLL LLLLL pag -5 II n IILLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL pag -= C+! III Instruciuni de ciclare, algoritmi ciclici @tilizarea instruciunilor de ciclare pentru generare de numereLLLLL pag -A *ta$ilirea limitelor $uclei for n urma unor testeLLLLLLLLLLLL pag 09 ?ai multe $ucle for incluse una n altaLLLLLLLLLLLLLLLLL pag 0: Calcule de sume i produseLLLLLLLLLLLLLLLLLLLLLLL pag 05 @tilizarea instruciunilor de ciclare pentru repetarea unor aciuniLLLL pag 0; +lgoritmi de nsumare, contorizare, determinare a min i ma7LLLLL pag 0A +lgoritmul de mprire n cifre a unui numrLLLLLLLLLLLLLL pag 9+lgoritmul lui #uclidLLLLLLLLLLLLLLLLLLLLLLLLLLL pag 9; Jenerarea aleatoare a unor numereLLLLLLLLLLLLLLLLLL pag 9= !ro$leme de logicLLLLLLLLLLLLLLLLLLLLLLLLLLL pag 9A !ro$leme de sintezLLLLLLLLLLLLLLLLLLLLLLLLLLL pag :6 C+! IV (a$louri unidimensionale &vectori' Introducere, parcurgere, afiare !arcurgere cu instruciunea for LLLLLLLLLLLLLLLLLLLLL pag :; @tilizarea altor instruciuni de ciclare pentru parcurgerea vectorilor LL pag :=

222

*ume, produse, contorizri, min, ma7 LLLLLLLLLLLLLLLLLL pag :A Ordonarea elementelor unui vector LLLLLLLLLLLLLLLLLLLL pag 5: !regtire pentru faza naional a ODI i CDI LLLLLLLLLLLLLL pag 53 <eplasarea elementelor unui vector LLLLLLLLLLLLLLLLLLL pag ;= Verificarea unor proprieti LLLLLLLLLLLLLLLLLLLLLLLL pag ;A Construirea unor vectori LLLLLLLLLLLLLLLLLLLLLLLLL pag =!ro$leme de sintez LLLLLLLLLLLLLLLLLLLLLLLLLLL pag =; C+! V (a$louri cu dou dimensiuni &matrici' Introducere, parcurgere integral, afiare LLLLLLLLLLLLLLLL pag 3; !arcurgere parial a unui ta$lou $idimensional LLLLLLLLLLLLL pag 33 #liminarea, adugarea i sc)im$area poziiei liniilor i coloanelor LLLL pag AVerificarea unor proprieti LLLLLLLLLLLLLLLLLLLLLLLL pag A9 Construirea unui ta$lou LLLLLLLLLLLLLLLLLLLLLLLLLL pag A: !ro$leme de sintez LLLLLLLLLLLLLLLLLLLLLLLLLLLL pag A5 C+! VI !ro$leme diverse LLLLLLLLLLLLLLLLLLLLLLLLLLLL pag -63

22.

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