Page 83 - MATINF Nr. 11-12
P. 83

˘
            PROBLEME DE INFORMATICA PENTRU EXAMENE                                                         83


                  consecutive ˆın fis , ierul bac.txt. Se va scrie un algoritm eficient din punct de vedere al
                  memoriei s , i al timpului de execut , ie.
                                  a
                  Exemplu: dac˘ fis , ierul bac.txt cont , ine numerele 10 11 12 100 101 102 89 se va afis , a:
                              a
                  2. Sunt dou˘ triplete de numere consecutive cresc˘ator aflate pe pozit , ii consecutive: 10 11
                  12 s , i 100 101 102.

                    a) Descriet , i ˆın limbaj natural algoritmul proiectat, justificˆand eficient , a acestuia. (2p.)
                    b) Scriet , i programul C/C++ corespunz˘ator algoritmului proiectat.               (8p.)




                                                        Testul 2


                                                                                           Sanda Profeanu   2


                Limbajul C/C++

                     a
                Filier˘ teoretic˘a, profil real, specializare s , tiint , e ale naturii
            ◦ Toate subiectele sunt obligatorii. Se acord˘a 10 puncte din oficiu.
            ◦ Timpul de lucru efectiv este de 3 ore.
            ◦ Identificatorii utilizat , i ˆın rezolv˘ari trebuie s˘a respecte preciz˘arile din enunt , (bold), iar ˆın
            lipsa unor preciz˘ari explicite, notat , iile trebuie s˘ corespund˘ cu semnificat , iile asociate acestora
                                                            a
                                                                         a
            (eventual ˆın form˘a prescurtat˘a). Datele de intrare se consider˘a corecte, validarea lor nefiind
            necesar˘a.


                SUBIECTUL I (20 de puncte)
                Pentru fiecare dintre itemii de la 1 la 5, scriet , i pe foaia de examen litera cores-
            punz˘atoare r˘aspunsului corect.

               1. Se consider˘a dou˘a variabile de tip int cu numele x s , i y. Ce valoare are expresia x*x/y +
                  y*y/x, dac˘a x are valoarea 13 s , i y valoarea 4?                                  (4p.)
                    a) 43.25                b) 43                   c) 43.48                d) 40
               2. Indicat , i valoarea expresiei 3*pow(fabs(10)+fabs(-10),2).                          (4p.)

                    a) 60                   b) 48                   c) 11                   d) 1200
               3. Cu ce trebuie ˆınlocuite punctele de suspen-    cin >>a>>b;
                                                           a
                  sie ... pentru ca secvent , a de instruct , iuni s˘  do{
                  afis , eze cel mai mare divizor comun pentru           k = ...;
                  a s , i b?                          (4p.)             a = b;
                                                                        b = k;
                                                                  }while(k);
                    a) a % b                c) a + b              cout <<a;
                    b) a / b                d) b*a
               4. Fie a un tablou unidimensional de dimen-        s=0;
                  siune 10 cu indicii de la 0, ˆın care compo-    for(i=1;i <10;i++)
                  nentele au valorile a[i] = (i+1)*(i+1),                     s += a[i]/10/%10;
                  i = 0,..., 9.      Ce se va afis , a dup˘a       cout <<s;
                  execut , ia secvent , ei de instruct , iuni? (4p.)
                2
                 Profesor, Liceul Tehnologic Metalurgic, Slatina, sandaprofeanu@gmail.com
   78   79   80   81   82   83   84   85   86   87   88