Page 83 - REVISTA MATINF Nr. 5
P. 83

˘
            PROBLEME DE INFORMATICA PENTRU EXAMENE                                                         83


                    c) Scriet , i programul C/C++ corespunz˘ator algoritmului dat.                    (10p.)
                    d) Scriet , i ˆın pseudocod un algoritm echivalent cu cel dat, ˆınlocuind adecvat structura
                       pentru ...     execut˘ a cu o structur˘a repetitic˘a de alt tip.                (6p.)
               2. Variabila c memoreaz˘a date specifice unui cerc: coordonatele reale (abscisa s , i ordonata),
                  ˆın planul xOy, ale centrului cercului, precum s , i lungimea razei acestuia. S , tiind c˘a
                  expresiile C/C++: c.centru.x, c.centru.y, respectiv c.raza au ca valori numere reale
                  reprezentˆand datele specifice ale unui cerc, scriet , i definit , ia unei structuri cu eticheta
                  figura, care permite memorarea datelor precizate s , i declarat , i corespunz˘ator variabila c.
                  (6p.)

               3. Variabilele i s , i j sunt de tip ˆıntreg, iar variabila m memoreaz˘a un tablou bidimensional
                  cu 7 linii s , i 7 coloane, numerotate de la 0 la 6, cu elemente de tip char. Init , ial, fiecare
                  element memoreaz˘a caracterul *.                                                    (6p.)
                  F˘ar˘a a utiliza alte variabile, scriet , i       a   b  c   d   e   f  g
                  secvent , a de instruct , iuni de mai jos,       + a     b   c   d   e f
                  ˆınlocuind punctele de suspensie astfelˆıncˆat,  + + a       b   c   d  e
                  ˆın urma execut˘arii secvent , ei obt , inute, va-  + + + a      b   c  d
                  riabila m s˘a memoreze tabloul al˘aturat.        + + + + a           b  c
                                                                   + + + + + a            b
                        for(i=0;i<7;i++)
                                                                   + + + + + + a
                              for(j=0;j<7;j++)
                                      ............


                SUBIECTUL al III-lea (30 de puncte)

               1. Subprogramul multiplu are un singur parametru, n, prin care primes , te un num˘ar natural
                  (n∈[1,104]). Subprogramul returneaz˘a cel mai mic multiplu nenul al lui n cu proprietatea
                  c˘a este p˘atrat perfect. Scriet , i definit , ia complet˘a a subprogramului.
                  Exemplu: dac˘a n=72 sau n=144, subprogramul returneaz˘a num˘arul 144.              (10p.)

               2. Numim citat ˆıntr-un text o secvent , ˘a de caractere din acel text care ˆıncepe cu un caracter
                  < s , i se termin˘a cu un caracter >, celelalte caractere ale secvent , ei fiind diferite de < s , i >.
                  Un text de cel mult 100 de caractere (litere mici ale alfabetului englez, spat , ii s , i caracterele
                  < s , i >) cont , ine cel put , in un citat. Textul nu cont , ine alte caractere < s , i > decˆat cele care
                  m˘arginesc citatele, s , i oricare dou˘a citate nu au nici caractere < s , i > s , i nici alte caractere ˆın
                  comun. Scriet , i un program C/C++ care cites , te de la tastatur˘a un text de tipul precizat
                  s , i ˆıl transform˘a ˆın memorie prin ˆınlocuirea tuturor literelor mici cuprinse ˆın citate cu
                  literele mari corespunz˘atoare, celelalte r˘amˆanˆand nemodificate, ca ˆın exemplul de mai jos.
                  Programul afis , eaz˘a pe ecran textul obt , inut.                                   (10p.)
                  Exemplu: pentru textul
                  mai bine sa fii un <om de valoare> decat un <om de succes>
                  se afis , eaz˘a
                  mai bine sa fii un <OM DE VALOARE> decat un <OM DE SUCCES>.
               3. Se numes , te vˆ arf ˆıntr-un s , ir de numere naturale un termen al s , irului care este strict mai
                  mare decˆat fiecare dintre cei doi termeni vecini cu el, aflat , i ˆın s , ir pe pozit , ia din stˆanga,
                  respectiv din dreapta sa. Fis , ierul bac.in cont , ine un s , ir de cel mult 106 numere naturale
                  din intervalul [0,109], separate prin cˆate un spat , iu. Se cere s˘a se afis , eze pe ecran vˆarful
                  din s , irul aflat ˆın fis , ier pentru care valoarea absolut˘a a diferent , ei dintre cei doi vecini ai
                  s˘ai este minim˘a. Dac˘a exist˘a mai multe astfel de numere, se afis , eaz˘a cel mai mare dintre
                  ele, iar dac˘a nu exist˘a niciun vˆarf, se afis , eaz˘a pe ecran mesajul nu exista. Proiectat , i un
   78   79   80   81   82   83   84   85   86   87   88