Sunteți pe pagina 1din 3

1. Pentru definiia de mai jos a subprogramului f, ce se afieaz ca urmare a apelului f (121, 1);?

void f(long n, int i)


{if (n==0) cout<<i;
if(n%3>0) f(n/3,i+1);}
2. Pentru definiia alturat a subprogramului f, ce se afieaz ca urmare a apelului f (125);?
void f(int n)
{cout<<n%10;
if(n!=0)
{ cout<<n%10;
f(n/100);}}
3. Pentru subprogramul f definit alturat, ce se afieaz ca urmare a apelului f (15, 2);?
void f (int n, int x)
{ if(x>n) cout<<*;
else
{ f(n,x+4);cout<<x%10; }
}
4. Pentru definiia de mai jos a subprogramului f, ce se afieaz ca urmare a apelului f (10);?
void f (int b)
{ if(3<=b)
{ f(b-2); cout<<*;}
else cout<<b;
}
5. Se consider subprogramul cu definiia alturat. Ce valoare se va afia n urma executrii instruciunii de
mai jos? cout<<f(12);
int f (int n){
int c;
if (n!=0)
{if (n%2==1)
c=1+f(n/2);
else c=f(n/2);
cout<<n%2; return c; }
else return 0;
}
a. 11002
b. 20011
c. 10102
d. 00112
6. Se consider subprogramul cu definiia alturat. Ce se va afia n urma apelului f(12345);?
void f(long n){
if (n!=0){
if (n%2==0) cout<<n%10;
f(n/10);
if (n%2!=0) cout<<n%10; }
else cout<<endl;
}
a. 531
24

b. 24
135

c. 531
42

d. 42
135

7. Funcia f are definiia mai jos. a) Ce valoare are f(16)?


b) Scriei o valoare de dou cifre pe care o poate avea n astfel nct f(n) s fie egal cu 2.
int f(int n)
{ if (n<=0) return -1;
if (n % 2==0) return 0;
if (n % 3==0) return 0;
return 1+f(n-10);
}
8. Se consider subprogramul f cu definiia alturat. Ce se va afia n urma apelului f(12345);?
void f(long n){
if (n!=0){
if (n%2!=0)
cout<<n%10; f(n/10);
if (n%2==0) cout<<n%10;}
else cout<<endl;
}
a. 135
b. 135
c. 531
d. 531
24
42
24
42
9. Se consider subprogramul cu definiia alturat. Ce valoare are f(3,1)?
int f(int n,int y)
{ if(n!=0)
{ y=y+1;
return y+f(n-1,y); }
else return 0; }
a. 8
b. 9
c. 7
d. 6
10. Pentru funcia f, definit alturat, care este valoarea f (1711)? Dar f (23169)?
int f(int n){
if (n==0) return 0;
else
if (n%2==0)
return n%10+f(n/10);
else return f(n/10); }
11. Funcia f are definiia alturat. a) Ce valoare are f (17)? b) Ce valoare are f (22)?
int f(int n)
{if (n<=9) return 0;
if (n%4==0) return 0;
return 1+f(n-3);}
12. Care este valoarea lui f(34) pentru funcia f definit alturat? Dar valoarea f(f(4))?
long f(long x) {
if (x==4) return x;
else
{if (x%10==4 || x%10==0) return x + f(x/10);
else return x+f(x*2); }
}
13. Funcia F are definiia alturat. Ce valoare are F (3)?
int F(int n)
{if(n==0 || n==1) return 1;
else
return 2*F(n-1)+2*F(n-2);}
a. 1
b. 12
c. 6
d. 10

14. Subprogramul f are definiia alturat. Ce se va afia n urma apelului f(12345);?


void f(long n)
{if (n>9)
{cout<<n/100;
f(n/10); }
}
a. 1231210
b. 123121
c. 1234123121
d. 123
15. Funcia f are definiia alturat. Ce se va afia n urma apelului f(12345,0);?
void f(long n, int i)
{if (i<n%10)
{cout<<n%10;
f(n/10,i+1); }
}
a. 54321
b. 543
c. 54
d. 5432
16. Funcia F are definiia alturat. Ce valoare are F(18)?
int F(int x){
if (x<=1) return x;
else return x+F(x-2);
}
a. 90
b. 171
c. 91
d. 18
17. Funcia F are definiia alturat. Ce valoare are F (5)?
int F(int x)
{if(x!=0) return x+F(x-1);
else return x;}
a. 5
b. 10
c. 15
d. 6
18. Se consider subprogramul, f, definit alturat. a) Ce valoare are f (20)?
b) Scriei o valoare pe care o poate avea x astfel nct f(x) = 1.
int f(int n)
{if (n==0) return 0;
return n%2+f(n/2);
}
19. Considerm subprogramul recursiv definit alturat. Ce se va afia n urma apelului de mai jos? F (B);
void f(char c)
{if (c>A) f(c-1);
cout<<c;
if (c>A) f(c-1);
}
20. Pentru subprogramul suma definit alturat scriei valoarea expresiei suma(3,2).
int suma (int a,int b)
{ if ((a==0) && (b==0)) return 0;
if (a==0) return 1+suma(a,b-1);
return 1+suma(a-1,b);
}

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