Page 131 - MATINF Nr. 1
P. 131

˘
            PROBLEME DE INFORMATICA PENTRU EXAMENE                                                       131


            SUBIECTUL al III-lea (30 de puncte)

                Pentru itemul 1, scriet , i pe foaia de examen litera corespunz˘atoare r˘aspunsului
            corect.
               1. Utilizˆand metoda backtracking se genereaz˘a numere de 3 cifre impare, cifre care apart , in
                  mult , imii {9, 8, 1, 6, 3, 2} Primele 4 solut , ii sunt 999, 991, 993, 919. Care este cea de
                  a 9 - a solut , ie?                                                                  (4p.)
                    a) 931                 b) 939                 c) 933                d) 193

               2. Subprogramul sub este definit ˆın dreapta.       void sub(int x,int nr) {
                  Ce se afis , eaz˘a ca urmare a apelului            if(x*nr >0) {
                  sub(2024,2)?                        (6p.)             if(x%4==0)
                                                                             cout <<x<<" ";
                                                                        sub(x-4,nr -1);
                                                                     }
                                                                    cout <<x<<" ";
                                                                    }


               3. Scriet , i definit , ia complet˘a a unui subprogram f cu trei parametri: a un num˘ar natural
                  nenul avˆand maxim 8 cifre, n un num˘ar natural nenul mai mic ca 10 s , i s care returneaz˘a
                                                                  −1
                  suma primelor n zecimale ale num˘arului real a .                                    (10p.)
                  Exemplu: Pentru f(4,3,s), s va avea valoarea 7 deoarece 4    −1  = 0.25000 s , i suma primelor
                  3 zecimale este 2+5+0=7.
                  ˆ
               4. In fis , ierul bac.in se afl˘a cel mult un milion de numere naturale cu maxim 9 cifre separate
                  ˆıntre ele prin cˆate un spat , iu.

                    a) Scriet , i ˆın limbajul C/C++ un algoritm, eficient din punct de vedere al memoriei s , i
                       al timpului de execut , ie, care cites , te din fis , ier datele existente s , i determin˘a s , i afis , eaz˘a
                       ˆın fis , ierul bac.out, numarul cel mai mare din fis , ierul bac.in care este egal cu suma
                                          ˆ
                       numerelor vecine. In cazul ˆın care nu exist˘a astfel de numere se afis , eaz˘a mesajul NU
                       EXISTA.                                                                         (8p.)
                    b) Descriet , i succint ˆın limbaj natural, metoda de rezolvare folosit˘a, explicˆand ˆın ce
                       const˘a eficient , a ei.                                                         (2p.)
                       Exemplu:
                       bac.in                                        bac.out
                       2 2 70 3 33 30 7 17 10                        33


                                                        Testul 5

                                                                                          C˘at˘alina Enescu  7

                Limbajul C/C++
                SUBIECTUL I (30 de puncte)

                Pentru itemul 1, scriet , i pe foaia de examen litera corespunz˘atoare r˘aspunsului
            corect.

               1. Variabila x este de tip real. Care dintre urm˘atoarele expresii C/C++ are valoarea 1 dac˘a
                  s , i numai dac˘a num˘arul real memorat ˆın variabila x nu apart , ine intervalului (1,8]? (4p.)
               7
                Profesor, Liceul Teoretic ,,Ion Cantacuzino”, Pites , ti, catalina.enescu@yahoo.com
   126   127   128   129   130   131   132   133   134   135   136