Page 91 - MATINF Nr. 7
P. 91

˘
            PROBLEME DE INFORMATICA PENTRU EXAMENE                                                         91


                     - s care ˆıntoarce suma cifrelor comune distincte din cele dou˘a numere.

                  S˘a se scrie definit , ia complet˘a a subprogramului.                                (10p.)

                  Exemplu: Pentru a=232445 s , i b=6238855, s va fi 10 (2+3+5)
               2. Scriet , i un program C/C++ care cites , te de la tastatur˘a un num˘ar natural x de exact 3 cifre
                  s , i un num˘ar natural, n (n ∈ [3, 20]) s , i construies , te ˆın memorie un tablou bidimensional cu
                  n linii s , i n coloane, astfel ˆıncˆat are propriet˘at , ile:

                     • elementele de pe prima coloan˘a au cifra sutelor lui x;
                     • elementele de pe a doua coloan˘a au cifra zecilor a lui x;

                     • elementele de pe a treia coloan˘a au cifra unit˘at , ilor lui x;
                     • dac˘a tabloul are mai mult de 3 coloane se reia completarea elementelelor conform
                       celor descrise mai sus.

                  Programul afis , eaz˘a pe ecran tabloul construit, fiecare linie a tabloului pe cˆate o linie a
                  ecranului, cu elementele aflate pe aceeas , i linie separate prin cˆate un spat , iu.  (10p.)
                                                                        1 2 3 1 2
                                                                        1 2 3 1 2
                  Exemplu: x = 123 s , i n = 5 se va construi tabloul
                                                                        1 2 3 1 2
                                                                        1 2 3 1 2
                                                                                                       6
               3. Din fis , ierul bac.txt se cites , te de pe prima linie un num˘ar natural n (1 ≤ n ≤ 10 ), iar
                                                                                  9
                  apoi se citesc n numere naturale apart , inˆand intervalului [0, 10 ]. Se cere s˘a se determine
                  care este cea mai lung˘a secvent , ˘a de numere care ˆıncepe s , i se termin˘a cu un num˘ar prim
                  s , i s˘a se afis , eze lungimea acesteie, precum s , i elementul de ˆınceput s , i elementul de final al
                  secvent , ei, precum s , i indicii pozit , iilor de ˆınceput s , i sfˆars , it pentru secvent , ˘a. Dac˘a nu este
                  niciun num˘ar prim s˘a se afis , eze mesajul ”Nu sunt numere prime!”. Proiectat , i un algoritm
                  eficient din punctul de vedere al memoriei utilizate s , i al timpului de executare.
                    a) Descriet¸i ˆın limbaj natural un algoritm eficient de rezolvare a problemei.     (2p.)
                    b) Scriet¸i programul C/C++ corespunz˘ator.                                        (8p.)


                  Exemplu: dac˘a ˆın fi¸sierul bac.txt avem:
                  11

                  8 14 17 5 8 9 10 7 22 19 20
                  Se va afis , a

                  8
                  17 19

                  3 10
   86   87   88   89   90   91   92   93   94   95   96