Page 75 - REVISTA MATINF Nr. 5
P. 75

˘
            PROBLEME DE INFORMATICA PENTRU EXAMENE                                                         75


                    a) Scriet , i ce valoare se va afis , a, dac˘a  citeste n, d
                       se citesc, ˆın aceast˘a ordine, valorile   m ← 0
                       5,3,15,54,7,9,27.               (6p.)      pentru i←1,n executa
                                                                  |     citeste x
                    b) Dac˘a pentru n s , i d se citesc valorile 4,
                                                                  |     k ← 0
                       respectiv 2, scriet , i un s , ir de n valori
                                                                  |     cat timp x%d=0 executa
                       de intrare care s-ar putea citi, astfel
                                                                  |     |    k ← k+1
                       ˆıncˆat, ˆın urma execut˘arii algoritmu-
                                                                  |     |_ x ← [x/d]
                       lui,s˘a afis , eze valoarea 4.   (6p.)      |     daca k>m atunci
                    c) Scriet , i un program C/C++ cores-         |_    |_ m ← k
                       punz˘ator algoritmului dat.    (10p.)      scrie m
                    d) Scriet , iˆın pseudocod un algoritm, echi-
                       valent cu cel dat, ˆınlocuind structura
                       cat timp ...      executa cu o alt˘a
                       structur˘a repetitiv˘a.         (6p.)
               2. Se consider˘a variabilele A,B,C de tip structur˘a cu eticheta punct2D, structur˘a ce memoreaz˘a
                  valorile reale ale abscisei s , i ordonatei unui punct din plan. Scriet , i o secvent , ˘a de instruct , iuni
                  C/C++ pentru afis , area abscisei s , i ordonatei centrului de greutate al triunghiului de vˆarfuri
                  A,B,C.                                                                               (6p.)
                  ˆ
               3. In secvent , a de instruct , iuni de mai jos, variabilele i s , i j sunt de tip ˆıntreg. F˘ar˘a a utiliza
                  alte variabile, scriet , i una sau mai multe instruct , iuni C/C++ ce pot ˆınlocui punctele de
                  suspensie, astfel ˆıncˆat, ˆın urma execut˘arii secvent , ei obt , inute, s˘a se afis , eze matricea de mai
                  jos, dreapta.                                                                        (6p.)

                        for (i=1;i <=5;i++) {                      < < < < *
                           for (j=1;j <=5;j++)                     < < < * >
                                                                   < < * > >
                              ...............
                                                                   < * > > >
                           printf ("\n");| cout <<endl;
                                                                   * > > > >
                        }
                SUBIECTUL al III-lea (30 de puncte)

                Scriet , i pe foaia de examen r˘aspunsul corect pentru fiecare dintre cerint , ele
            urm˘atoare.

               1. Scriet , i, ˆın pseudocod, un algoritm care cites , te de la tastatur˘a dou˘a numere naturale n
                  s , i m de maxim 9 cifre, apoi determin˘a s , i afis , eaz˘a factorii primi care se g˘asesc atˆat ˆın
                  descompunerea ˆın factori primi a lui n, cˆat s , i ˆın descompunerea ˆın factori primi a lui m,
                  la aceeas , i putere, iar dac˘a nu exist˘a factori comuni la aceeas , i putere se va afis , a mesajul
                  Imposibil.                                                                          (10p.)
                                                                                2
                                                                                       2
                                                                                                    3
                                                                                                           2
                  Exemple: Pentru n=2100 s , i m=600 se afis , eaz˘a 3, 5 (2100 = 2 · 3 · 5 · 7, 600 = 2 · 3 · 5 ),
                                                                                      2
                                                                                  3
                                                                 3
                  pentru n=120 s , i m=1400 se afis , eaz˘a 2 (120 = 2 · 3 · 5, 1400 = 2 · 5 · 7), iar pentru n=6 s , i
                                                              2
                  m=9 se afis , eaz˘a Imposibil (6 = 2 · 3, 9 = 3 ).
               2. Se citesc de la tastatur˘a trei numere naturale nenule: n, m s , i k. Considerˆand un tablou
                  unidimensional x cu elementele 1,2,...,n, scriet , i un program C/C++ care elimin˘a ele-
                  mente din x, ˆıncepˆand cu al m-lea, apoi cele din k ˆın k.                         (10p.)
                  Exemplu: Pentru n=15, m=2 s , i k=3, tabloul unidimensional x devine (1,3,4,6,7,
                  9,10,12,13,15).
                                                                                                       6
               3. Fis , ierul bac.txt cont , ine pe prima linie valoarea natural˘a nenul˘a a variabilei n (≤ 10 ), iar
                  pe urm˘atoarea linie un s , ir de n numere naturale de cel mult 2 cifre fiecare, acestea fiind
                  separate prin spat , ii. Se cere afis , area pe ecran a celui mai mare palindom de 7 cifre impare
                  care apar ˆın component , a celor n numere de pe linia a doua din fis , ier (dac˘a nu se poate
                  contrui un astfel de palindrom, se va afis , a pe ecran valoarea 0).
   70   71   72   73   74   75   76   77   78   79   80