Sunteți pe pagina 1din 2

Testare grile recursivitate nr.

1
1.Subprogramul f este definit mai jos. (2 puncte)
int f(int n)
{if (n<=9) return 0;
if (n%4==0) return 0;
return 1+f(n-3); }

Ce valoarea are f(16)? Dar f(20)?

2.Subprogramul f este definit mai jos. (1 punct)


void f(int a, int b)
{ if(a<=b)
{ f(a+1,b-2); cout<<'*';}
else cout<<b;}
Ce se afişează în urma apelului următor? f(5,17);

3.Subprogramul f este definit mai jos. (1 punct)


void f(int n)
{ if (n!=0)
{ if (n%2==0)
cout<<n<<' ';
f(n-1);
cout<<n<<' '; } }
Ce se afişează în urma apelului următor? f(2);

4.Subprogramul f este definit alăturat. Indicați apelul în urma căruia simbolul * se afișează de trei ori. (1 punct)
void f(int x) {
cout<<"*";
if(x>5)
f((x+1)/2); }

5.Subprogramul f este definit alăturat. Scrieți ce valori au f(0), respectiv f(23575209). (2 puncte)
int f (int n)
{ if (n!=0)
return n%2+f(n/100);
return 0; }

6.Se consideră subprogramul f, definit mai jos. (1 punct)


void f (int n)
{ if (n!=0)
{ f (n-1);
cout<<n; } }
Indicaţi ce se afişează în urma apelului de mai jos. f(3);
Oficiu 2 puncte

S-ar putea să vă placă și