SlideShare a Scribd company logo
Testul 1

      1.Precizaţi valorile de adevăr ale afirmaţiilor de mai jos:
   a) Orice subprogram recursiv trebuie sa aibă cel puţin un parametru transmis prin
      valoare
   b) Orice subprogram recursiv se poate implementa si nerecursiv
   c) Un subprogram este recursiv daca si numai daca conţine mai mult de un apel
      autoapel
   d) Programul principal (Pascal) sau funcţia main (C++) nu pot conţine autoapel
                                                                                  R: f,a,f,a

      2.La fiecare apel recursiv al unui subprogram, in segmentul de stiva sunt memorate
   a) Adresa de revenire, valorile variabilelor locale si a parametrilor transmişi prin referinţă
   b) Adresa de revenire si valorile variabilelor globale
   c) Adresa de revenire, valorile variabilelor locale si a parametrilor transmişi prin valoare
      si adrese parametrilor transmişi prin referinţa
   d) Adresa de revenire, valorile locale si a variabilelor globale
                                                                                             R: c)

      3.Fie funcţia recursivă

      functiona ael ( n:integer ):integer;            int ael ( int n )
      begin                                           {
        if n=0 then ael:=0                            if ( n = =0 ) return 0
             else ael:=ael ( n-1 ) + 2*n-1;                    else return ( ael(n-1)+2*n-1)
      end;                                            }


      Precizaţi valoarea lui n pentru care ael (n)= 36
         a) 9
         b) 3
         c) 15
         d) 6
                                                                                               R: d)

      4. Se consideră subprogramul recursiv:

     procedure test (n:integer);                      void test ( int n )
     begin                                            {
        if n<>1 then                                     if ( n!=1 )
       begin                                             {
          write (n, ’,’);                                  cout<<n<<”,”
          if (n mod 2) then test (n div 2)            if ( n%2 = =0 ) test (n/2)
                          else test (3*n+1);                    else test (3*n+1)
              end                                        }
            else write (1);                             else cout<<1;
     end;


      Precizaţi ce va fi afişat la apelul test(10)?
a)   10,5,4,2,1
           b)   10,5,16,8,4,2
           c)   10,5,16,8,4,2,1
           d)   5,16,8,4,2,1
                                                                                                   R: c)

           5. Fie funcţia recursiva:

     function verif( n,k: integer): integer;                      int test (int n, int k)
     begin                                               {
     if ( k=n ) then verif:=1                            if (k= =n) return 1;
        else if (n mod k=0) then verif:=0                      else if ( n%k= =0 ) return 0;
               else verif:=verif (n, k+1);                             else return test (n, k+1)
            end;                                         }


       La apelul verif (n,2) valoarea funcţiei este 1 dacă şi numai dacă:

           a)   n Î À şi n este par
           b)   n Î À şi n este prim
           c)   n Î À şi n este impar
           d)   n Î À şi n nu este prim
                                                                                                   R: b)

           6. Fie şirul de numere definit astfel:

                          m, pentru n=0 şi mЄÂ
                            an
                an=            , dacă n este par
                            4
                          4 an-1, dacă n este impar


           Care este valoarea termenului a5 , dacă m=2 ?

                a)   5
                b)   6
                c)   12
                d)   7
                e)   2
                                                                                                   R: a)

       7. Fie următorul subprogram recursiv:

procedure c ( b,a: word);                                               end;
begin                                                 end;
  if ( a<= b div 2) then                              void c ( unsigned b, unsigned a)
        begin                                         {
         if not (b mod a<>0) then write(a,’ ’);       if (a <= b/2)
                    c (b,a+1);                               { if (!(b%a= = 0)) cout <<a<<” “
c (b, a+1)                }
}


      La apelul c (15,2), se va afişa:

          a)   3515
          b)   2467
          c)   35
          d)   135
                                                                                   R: c)

8. Se considera funcţia s: N* x N* → N definită astfel


La apelul funcţiei s (3,5) unde m=1 şi n=1 se va obţine
   a) 12
   b) 11
   c) 8
   d) 9
                                                                                    R: b)

    Fie programul următor:

    program T9;                                       # include <iostream.h>
    var x,z:integer;                                  int x,y;
    procedure t( x:integer, z:integer);               void t (int x, int y)
    begin                                             { if (x>0)
      if x>0 then begin                                      { x=x-1;
                  x:=x-1;                                      y=y-1;
                  y:=y-1;                                      t (x,y);
                  t (x,y);                                   }
                 end;                                 }

    begin                                             void main()
      x=3;y=1;                                        { x=3; y=1;
      write (x,’’,y,’’);                                cout<<x<<” ”<<y<<” ”;
      t (x,y);                                          t (x,y);
     writeln (x,’ ’,y,’ ’);                             cout<<x<<” ”<<y<<” ”<<endl;
    end.                                              }



      Care este modificarea din program, astfel încât după execuţia să se afişeze 3 1 0 1
      PASCAL
      a) procedure t (var x:integer; y: integer);
      b) procedure t (var x:integer; var y: integer);
      c) procedure t (x:integer; var y: integer);

      C++
a) void t (int & x, int y);
b) void t (int & x, int & y);
c) void t (int x, int & y);
                                R: a)

More Related Content

What's hot

Functii in pascal
Functii in pascalFunctii in pascal
Functii in pascalm_gutu
 
10 fisa functii recursive 1 23feb2012
10 fisa functii recursive 1   23feb201210 fisa functii recursive 1   23feb2012
10 fisa functii recursive 1 23feb2012Radu Danni
 
Explicitarea recurentelor fundamentale s.boga
Explicitarea recurentelor fundamentale   s.bogaExplicitarea recurentelor fundamentale   s.boga
Explicitarea recurentelor fundamentale s.bogaBoga Silviu
 
112
112112
Variabile dinamice. Tipul referinta.
Variabile dinamice. Tipul referinta.Variabile dinamice. Tipul referinta.
Variabile dinamice. Tipul referinta.
m_gutu
 
Razbunarea inginerilor !
Razbunarea inginerilor !Razbunarea inginerilor !
Razbunarea inginerilor !
digibrain
 
Despre ingineri
Despre ingineriDespre ingineri
Despre ingineri
constructiiforum
 
Tipul de date pointer
Tipul de date pointerTipul de date pointer
Tipul de date pointer
Colegiul de Industrie Usoara
 
Variabile dinamice
Variabile dinamiceVariabile dinamice
Variabile dinamice
Maria Gutu
 
Catalina.metoda reluării
Catalina.metoda reluăriiCatalina.metoda reluării
Catalina.metoda reluăriiBalan Veronica
 
Functii, tablouri si pointeri in c si c++
Functii, tablouri si pointeri  in c si c++Functii, tablouri si pointeri  in c si c++
Functii, tablouri si pointeri in c si c++Serghei Urban
 

What's hot (20)

Metoda reluarii..
Metoda reluarii..Metoda reluarii..
Metoda reluarii..
 
Metoda backtracking
Metoda backtrackingMetoda backtracking
Metoda backtracking
 
Functii in pascal
Functii in pascalFunctii in pascal
Functii in pascal
 
Metoda reluării(1)
Metoda reluării(1)Metoda reluării(1)
Metoda reluării(1)
 
Metoda reluării
Metoda reluăriiMetoda reluării
Metoda reluării
 
10 fisa functii recursive 1 23feb2012
10 fisa functii recursive 1   23feb201210 fisa functii recursive 1   23feb2012
10 fisa functii recursive 1 23feb2012
 
Explicitarea recurentelor fundamentale s.boga
Explicitarea recurentelor fundamentale   s.bogaExplicitarea recurentelor fundamentale   s.boga
Explicitarea recurentelor fundamentale s.boga
 
Metoda reluarii
Metoda reluariiMetoda reluarii
Metoda reluarii
 
Metoda reluării(3)
Metoda reluării(3)Metoda reluării(3)
Metoda reluării(3)
 
112
112112
112
 
0metoda reluarii
0metoda reluarii0metoda reluarii
0metoda reluarii
 
Madaç
MadaçMadaç
Madaç
 
Variabile dinamice. Tipul referinta.
Variabile dinamice. Tipul referinta.Variabile dinamice. Tipul referinta.
Variabile dinamice. Tipul referinta.
 
Razbunarea inginerilor !
Razbunarea inginerilor !Razbunarea inginerilor !
Razbunarea inginerilor !
 
Despre ingineri
Despre ingineriDespre ingineri
Despre ingineri
 
Tipul de date pointer
Tipul de date pointerTipul de date pointer
Tipul de date pointer
 
Variabile dinamice
Variabile dinamiceVariabile dinamice
Variabile dinamice
 
Catalina.metoda reluării
Catalina.metoda reluăriiCatalina.metoda reluării
Catalina.metoda reluării
 
Functii, tablouri si pointeri in c si c++
Functii, tablouri si pointeri  in c si c++Functii, tablouri si pointeri  in c si c++
Functii, tablouri si pointeri in c si c++
 
RH
RHRH
RH
 

Viewers also liked

Baza Farmacie
Baza FarmacieBaza Farmacie
Elaborarea+si+gestionarea+unei+baze+de+date[1]
Elaborarea+si+gestionarea+unei+baze+de+date[1]Elaborarea+si+gestionarea+unei+baze+de+date[1]
Elaborarea+si+gestionarea+unei+baze+de+date[1]Claudia
 
Proiect Design Baze de Date
Proiect Design Baze de DateProiect Design Baze de Date
Proiect Design Baze de Date
Madalin Blidaru
 
Baze+de+date 1
Baze+de+date 1Baze+de+date 1
Baze+de+date 1Claudia
 
baze-de-date-access-laborator-de-ioan-mocian
baze-de-date-access-laborator-de-ioan-mocianbaze-de-date-access-laborator-de-ioan-mocian
baze-de-date-access-laborator-de-ioan-mocianCristina Timofte
 
Introducere baza de-date
Introducere baza de-dateIntroducere baza de-date
Introducere baza de-date
Chelariu Mihai
 

Viewers also liked (7)

Baza de date
Baza de dateBaza de date
Baza de date
 
Baza Farmacie
Baza FarmacieBaza Farmacie
Baza Farmacie
 
Elaborarea+si+gestionarea+unei+baze+de+date[1]
Elaborarea+si+gestionarea+unei+baze+de+date[1]Elaborarea+si+gestionarea+unei+baze+de+date[1]
Elaborarea+si+gestionarea+unei+baze+de+date[1]
 
Proiect Design Baze de Date
Proiect Design Baze de DateProiect Design Baze de Date
Proiect Design Baze de Date
 
Baze+de+date 1
Baze+de+date 1Baze+de+date 1
Baze+de+date 1
 
baze-de-date-access-laborator-de-ioan-mocian
baze-de-date-access-laborator-de-ioan-mocianbaze-de-date-access-laborator-de-ioan-mocian
baze-de-date-access-laborator-de-ioan-mocian
 
Introducere baza de-date
Introducere baza de-dateIntroducere baza de-date
Introducere baza de-date
 

Similar to Test i

Instructiuni in c si c++
Instructiuni in c si c++Instructiuni in c si c++
Instructiuni in c si c++Serghei Urban
 
6207247 probleme-de-algebra-liniara-dumitru-busneag
6207247 probleme-de-algebra-liniara-dumitru-busneag6207247 probleme-de-algebra-liniara-dumitru-busneag
6207247 probleme-de-algebra-liniara-dumitru-busneagMagda Pop
 
Auxiliar clasa v
Auxiliar clasa vAuxiliar clasa v
Auxiliar clasa v
leliana loredana buzatu
 
Binom Newton
Binom NewtonBinom Newton
Binom Newton
oles vol
 
E c matematica_m2_var_07_lro
E c matematica_m2_var_07_lroE c matematica_m2_var_07_lro
E c matematica_m2_var_07_lroAdi Muresan
 
Rn2009 curs6
Rn2009 curs6Rn2009 curs6
Rn2009 curs6livlivliv
 
Veronica botnarenco
Veronica botnarencoVeronica botnarenco
Veronica botnarenco
Balan Veronica
 
Teorie mate liceu stan adrian
Teorie mate liceu stan adrianTeorie mate liceu stan adrian
Teorie mate liceu stan adriandeneeyza1
 
Metoda bisecu021 biei
Metoda bisecu021 bieiMetoda bisecu021 biei
Metoda bisecu021 biei
Balan Veronica
 
E d informatica_2020_sp_sn_c_var_test_02
E d informatica_2020_sp_sn_c_var_test_02E d informatica_2020_sp_sn_c_var_test_02
E d informatica_2020_sp_sn_c_var_test_02
Ovidiu Dumitrescu
 
E d informatica_2020_sp_mi_c_var_test_08
E d informatica_2020_sp_mi_c_var_test_08E d informatica_2020_sp_mi_c_var_test_08
E d informatica_2020_sp_mi_c_var_test_08
Ovidiu Dumitrescu
 
Tehnici de programare_triere_1522
Tehnici de programare_triere_1522Tehnici de programare_triere_1522
Tehnici de programare_triere_1522miklleee
 
E d informatica_2020_sp_sn_c_var_test_05
E d informatica_2020_sp_sn_c_var_test_05E d informatica_2020_sp_sn_c_var_test_05
E d informatica_2020_sp_sn_c_var_test_05
Ovidiu Dumitrescu
 
Variante bacalaureat m2 - 2011
Variante bacalaureat  m2 - 2011Variante bacalaureat  m2 - 2011
Variante bacalaureat m2 - 2011silviabraica
 
Informatica metoda trierii
Informatica metoda trieriiInformatica metoda trierii
Informatica metoda trieriiBalan Veronica
 
125907307 ecuatii-trigonometrice
125907307 ecuatii-trigonometrice125907307 ecuatii-trigonometrice
125907307 ecuatii-trigonometriceClaudia Morosanu
 

Similar to Test i (20)

Instructiuni in c si c++
Instructiuni in c si c++Instructiuni in c si c++
Instructiuni in c si c++
 
6207247 probleme-de-algebra-liniara-dumitru-busneag
6207247 probleme-de-algebra-liniara-dumitru-busneag6207247 probleme-de-algebra-liniara-dumitru-busneag
6207247 probleme-de-algebra-liniara-dumitru-busneag
 
Opt
OptOpt
Opt
 
Auxiliar clasa v
Auxiliar clasa vAuxiliar clasa v
Auxiliar clasa v
 
L 2 var_9 description
L 2 var_9 descriptionL 2 var_9 description
L 2 var_9 description
 
Carte(2)
Carte(2)Carte(2)
Carte(2)
 
Binom Newton
Binom NewtonBinom Newton
Binom Newton
 
E c matematica_m2_var_07_lro
E c matematica_m2_var_07_lroE c matematica_m2_var_07_lro
E c matematica_m2_var_07_lro
 
Numere rationale VII
Numere rationale VIINumere rationale VII
Numere rationale VII
 
Rn2009 curs6
Rn2009 curs6Rn2009 curs6
Rn2009 curs6
 
Veronica botnarenco
Veronica botnarencoVeronica botnarenco
Veronica botnarenco
 
Teorie mate liceu stan adrian
Teorie mate liceu stan adrianTeorie mate liceu stan adrian
Teorie mate liceu stan adrian
 
Metoda bisecu021 biei
Metoda bisecu021 bieiMetoda bisecu021 biei
Metoda bisecu021 biei
 
E d informatica_2020_sp_sn_c_var_test_02
E d informatica_2020_sp_sn_c_var_test_02E d informatica_2020_sp_sn_c_var_test_02
E d informatica_2020_sp_sn_c_var_test_02
 
E d informatica_2020_sp_mi_c_var_test_08
E d informatica_2020_sp_mi_c_var_test_08E d informatica_2020_sp_mi_c_var_test_08
E d informatica_2020_sp_mi_c_var_test_08
 
Tehnici de programare_triere_1522
Tehnici de programare_triere_1522Tehnici de programare_triere_1522
Tehnici de programare_triere_1522
 
E d informatica_2020_sp_sn_c_var_test_05
E d informatica_2020_sp_sn_c_var_test_05E d informatica_2020_sp_sn_c_var_test_05
E d informatica_2020_sp_sn_c_var_test_05
 
Variante bacalaureat m2 - 2011
Variante bacalaureat  m2 - 2011Variante bacalaureat  m2 - 2011
Variante bacalaureat m2 - 2011
 
Informatica metoda trierii
Informatica metoda trieriiInformatica metoda trierii
Informatica metoda trierii
 
125907307 ecuatii-trigonometrice
125907307 ecuatii-trigonometrice125907307 ecuatii-trigonometrice
125907307 ecuatii-trigonometrice
 

More from natashcka

Recursivitatea prin exemple manualul profesorului
Recursivitatea prin exemple   manualul profesoruluiRecursivitatea prin exemple   manualul profesorului
Recursivitatea prin exemple manualul profesoruluinatashcka
 
Manualul profesorului
Manualul profesoruluiManualul profesorului
Manualul profesoruluinatashcka
 
Motivatia alegerii
Motivatia alegeriiMotivatia alegerii
Motivatia alegeriinatashcka
 
Manualul profesorului
Manualul profesoruluiManualul profesorului
Manualul profesoruluinatashcka
 
Manualul profesorului
Manualul profesoruluiManualul profesorului
Manualul profesoruluinatashcka
 
Manualul profesorului
Manualul profesoruluiManualul profesorului
Manualul profesoruluinatashcka
 
Manualul profesorului
Manualul profesoruluiManualul profesorului
Manualul profesoruluinatashcka
 
Manualul profesorului
Manualul profesoruluiManualul profesorului
Manualul profesoruluinatashcka
 
Manualul profesorului
Manualul profesoruluiManualul profesorului
Manualul profesoruluinatashcka
 
Manualul profesorului
Manualul profesoruluiManualul profesorului
Manualul profesoruluinatashcka
 
Manualul profesorului
Manualul profesoruluiManualul profesorului
Manualul profesoruluinatashcka
 
Studierea limbajului pascal
Studierea limbajului pascalStudierea limbajului pascal
Studierea limbajului pascalnatashcka
 
Manualul profesorului
Manualul profesoruluiManualul profesorului
Manualul profesoruluinatashcka
 
Surse educaţionale pe web
Surse educaţionale pe webSurse educaţionale pe web
Surse educaţionale pe web
natashcka
 
Manualul profesorului
Manualul profesoruluiManualul profesorului
Manualul profesorului
natashcka
 
Manualul profesorului
Manualul profesoruluiManualul profesorului
Manualul profesorului
natashcka
 
Tipuri de lectie
Tipuri de lectieTipuri de lectie
Tipuri de lectie
natashcka
 
Metode
MetodeMetode
Metode
natashcka
 

More from natashcka (20)

Recursivitatea prin exemple manualul profesorului
Recursivitatea prin exemple   manualul profesoruluiRecursivitatea prin exemple   manualul profesorului
Recursivitatea prin exemple manualul profesorului
 
Manualul profesorului
Manualul profesoruluiManualul profesorului
Manualul profesorului
 
Manual
ManualManual
Manual
 
Motivatia alegerii
Motivatia alegeriiMotivatia alegerii
Motivatia alegerii
 
Manualul profesorului
Manualul profesoruluiManualul profesorului
Manualul profesorului
 
Manualul profesorului
Manualul profesoruluiManualul profesorului
Manualul profesorului
 
Manualul profesorului
Manualul profesoruluiManualul profesorului
Manualul profesorului
 
Manualul profesorului
Manualul profesoruluiManualul profesorului
Manualul profesorului
 
Manualul profesorului
Manualul profesoruluiManualul profesorului
Manualul profesorului
 
Manualul profesorului
Manualul profesoruluiManualul profesorului
Manualul profesorului
 
Manualul profesorului
Manualul profesoruluiManualul profesorului
Manualul profesorului
 
Manualul profesorului
Manualul profesoruluiManualul profesorului
Manualul profesorului
 
Studierea limbajului pascal
Studierea limbajului pascalStudierea limbajului pascal
Studierea limbajului pascal
 
Tema
TemaTema
Tema
 
Manualul profesorului
Manualul profesoruluiManualul profesorului
Manualul profesorului
 
Surse educaţionale pe web
Surse educaţionale pe webSurse educaţionale pe web
Surse educaţionale pe web
 
Manualul profesorului
Manualul profesoruluiManualul profesorului
Manualul profesorului
 
Manualul profesorului
Manualul profesoruluiManualul profesorului
Manualul profesorului
 
Tipuri de lectie
Tipuri de lectieTipuri de lectie
Tipuri de lectie
 
Metode
MetodeMetode
Metode
 

Recently uploaded

Raport proiect transfrontalier Culori fermecate.pdf
Raport proiect transfrontalier Culori fermecate.pdfRaport proiect transfrontalier Culori fermecate.pdf
Raport proiect transfrontalier Culori fermecate.pdf
savinioana
 
PARTENERIAT TRANSFRONTALIER REPUBLICA MOLDOVA-ROMÂNIA
PARTENERIAT TRANSFRONTALIER REPUBLICA MOLDOVA-ROMÂNIAPARTENERIAT TRANSFRONTALIER REPUBLICA MOLDOVA-ROMÂNIA
PARTENERIAT TRANSFRONTALIER REPUBLICA MOLDOVA-ROMÂNIA
FlorinaTrofin
 
Proiect transfrontalier Grecu Larisa .pptx
Proiect transfrontalier Grecu Larisa .pptxProiect transfrontalier Grecu Larisa .pptx
Proiect transfrontalier Grecu Larisa .pptx
AlexandrinaCn
 
Să ne împrietenim cu lectura Ermurachi Nina/ Pruncia Monica
Să ne împrietenim cu lectura Ermurachi Nina/ Pruncia MonicaSă ne împrietenim cu lectura Ermurachi Nina/ Pruncia Monica
Să ne împrietenim cu lectura Ermurachi Nina/ Pruncia Monica
NinaTofanErmurachi
 
Proces verbal sedinta cu parintii (26.09.2023).docx
Proces verbal sedinta cu parintii (26.09.2023).docxProces verbal sedinta cu parintii (26.09.2023).docx
Proces verbal sedinta cu parintii (26.09.2023).docx
AureliaTertereanu
 
Analiza SWOT - fisa de lucru aplicabila pentru liceu
Analiza SWOT - fisa de lucru aplicabila pentru liceuAnaliza SWOT - fisa de lucru aplicabila pentru liceu
Analiza SWOT - fisa de lucru aplicabila pentru liceu
Andreea Balaci
 
Căutarea binară într-un vector proiect informatica
Căutarea binară într-un vector proiect informaticaCăutarea binară într-un vector proiect informatica
Căutarea binară într-un vector proiect informatica
MarioButnaru
 
Papa Francisco canoniza los martires de Rumanía (Rumanian).pptx
Papa Francisco canoniza los martires de Rumanía (Rumanian).pptxPapa Francisco canoniza los martires de Rumanía (Rumanian).pptx
Papa Francisco canoniza los martires de Rumanía (Rumanian).pptx
Martin M Flynn
 

Recently uploaded (8)

Raport proiect transfrontalier Culori fermecate.pdf
Raport proiect transfrontalier Culori fermecate.pdfRaport proiect transfrontalier Culori fermecate.pdf
Raport proiect transfrontalier Culori fermecate.pdf
 
PARTENERIAT TRANSFRONTALIER REPUBLICA MOLDOVA-ROMÂNIA
PARTENERIAT TRANSFRONTALIER REPUBLICA MOLDOVA-ROMÂNIAPARTENERIAT TRANSFRONTALIER REPUBLICA MOLDOVA-ROMÂNIA
PARTENERIAT TRANSFRONTALIER REPUBLICA MOLDOVA-ROMÂNIA
 
Proiect transfrontalier Grecu Larisa .pptx
Proiect transfrontalier Grecu Larisa .pptxProiect transfrontalier Grecu Larisa .pptx
Proiect transfrontalier Grecu Larisa .pptx
 
Să ne împrietenim cu lectura Ermurachi Nina/ Pruncia Monica
Să ne împrietenim cu lectura Ermurachi Nina/ Pruncia MonicaSă ne împrietenim cu lectura Ermurachi Nina/ Pruncia Monica
Să ne împrietenim cu lectura Ermurachi Nina/ Pruncia Monica
 
Proces verbal sedinta cu parintii (26.09.2023).docx
Proces verbal sedinta cu parintii (26.09.2023).docxProces verbal sedinta cu parintii (26.09.2023).docx
Proces verbal sedinta cu parintii (26.09.2023).docx
 
Analiza SWOT - fisa de lucru aplicabila pentru liceu
Analiza SWOT - fisa de lucru aplicabila pentru liceuAnaliza SWOT - fisa de lucru aplicabila pentru liceu
Analiza SWOT - fisa de lucru aplicabila pentru liceu
 
Căutarea binară într-un vector proiect informatica
Căutarea binară într-un vector proiect informaticaCăutarea binară într-un vector proiect informatica
Căutarea binară într-un vector proiect informatica
 
Papa Francisco canoniza los martires de Rumanía (Rumanian).pptx
Papa Francisco canoniza los martires de Rumanía (Rumanian).pptxPapa Francisco canoniza los martires de Rumanía (Rumanian).pptx
Papa Francisco canoniza los martires de Rumanía (Rumanian).pptx
 

Test i

  • 1. Testul 1 1.Precizaţi valorile de adevăr ale afirmaţiilor de mai jos: a) Orice subprogram recursiv trebuie sa aibă cel puţin un parametru transmis prin valoare b) Orice subprogram recursiv se poate implementa si nerecursiv c) Un subprogram este recursiv daca si numai daca conţine mai mult de un apel autoapel d) Programul principal (Pascal) sau funcţia main (C++) nu pot conţine autoapel R: f,a,f,a 2.La fiecare apel recursiv al unui subprogram, in segmentul de stiva sunt memorate a) Adresa de revenire, valorile variabilelor locale si a parametrilor transmişi prin referinţă b) Adresa de revenire si valorile variabilelor globale c) Adresa de revenire, valorile variabilelor locale si a parametrilor transmişi prin valoare si adrese parametrilor transmişi prin referinţa d) Adresa de revenire, valorile locale si a variabilelor globale R: c) 3.Fie funcţia recursivă functiona ael ( n:integer ):integer; int ael ( int n ) begin { if n=0 then ael:=0 if ( n = =0 ) return 0 else ael:=ael ( n-1 ) + 2*n-1; else return ( ael(n-1)+2*n-1) end; } Precizaţi valoarea lui n pentru care ael (n)= 36 a) 9 b) 3 c) 15 d) 6 R: d) 4. Se consideră subprogramul recursiv: procedure test (n:integer); void test ( int n ) begin { if n<>1 then if ( n!=1 ) begin { write (n, ’,’); cout<<n<<”,” if (n mod 2) then test (n div 2) if ( n%2 = =0 ) test (n/2) else test (3*n+1); else test (3*n+1) end } else write (1); else cout<<1; end; Precizaţi ce va fi afişat la apelul test(10)?
  • 2. a) 10,5,4,2,1 b) 10,5,16,8,4,2 c) 10,5,16,8,4,2,1 d) 5,16,8,4,2,1 R: c) 5. Fie funcţia recursiva: function verif( n,k: integer): integer; int test (int n, int k) begin { if ( k=n ) then verif:=1 if (k= =n) return 1; else if (n mod k=0) then verif:=0 else if ( n%k= =0 ) return 0; else verif:=verif (n, k+1); else return test (n, k+1) end; } La apelul verif (n,2) valoarea funcţiei este 1 dacă şi numai dacă: a) n Î À şi n este par b) n Î À şi n este prim c) n Î À şi n este impar d) n Î À şi n nu este prim R: b) 6. Fie şirul de numere definit astfel: m, pentru n=0 şi mЄÂ an an= , dacă n este par 4 4 an-1, dacă n este impar Care este valoarea termenului a5 , dacă m=2 ? a) 5 b) 6 c) 12 d) 7 e) 2 R: a) 7. Fie următorul subprogram recursiv: procedure c ( b,a: word); end; begin end; if ( a<= b div 2) then void c ( unsigned b, unsigned a) begin { if not (b mod a<>0) then write(a,’ ’); if (a <= b/2) c (b,a+1); { if (!(b%a= = 0)) cout <<a<<” “
  • 3. c (b, a+1) } } La apelul c (15,2), se va afişa: a) 3515 b) 2467 c) 35 d) 135 R: c) 8. Se considera funcţia s: N* x N* → N definită astfel La apelul funcţiei s (3,5) unde m=1 şi n=1 se va obţine a) 12 b) 11 c) 8 d) 9 R: b) Fie programul următor: program T9; # include <iostream.h> var x,z:integer; int x,y; procedure t( x:integer, z:integer); void t (int x, int y) begin { if (x>0) if x>0 then begin { x=x-1; x:=x-1; y=y-1; y:=y-1; t (x,y); t (x,y); } end; } begin void main() x=3;y=1; { x=3; y=1; write (x,’’,y,’’); cout<<x<<” ”<<y<<” ”; t (x,y); t (x,y); writeln (x,’ ’,y,’ ’); cout<<x<<” ”<<y<<” ”<<endl; end. } Care este modificarea din program, astfel încât după execuţia să se afişeze 3 1 0 1 PASCAL a) procedure t (var x:integer; y: integer); b) procedure t (var x:integer; var y: integer); c) procedure t (x:integer; var y: integer); C++
  • 4. a) void t (int & x, int y); b) void t (int & x, int & y); c) void t (int x, int & y); R: a)