Se consideră subprogramul C/C++ f
, definit mai jos.
void f(int x) { cout<<x; if(x>0) { if(x%2==0) cout<<'*'; f(x/2); } }
Ce se afișează în urma apelului de mai jos.
f(9);
Se consideră subprogramul C/C++ f
, definit mai jos.
int f(int x, int y) { if(x*2>y) return x; return f(x*2,y); }
Scrieți valoarea lui f(2,20)
.
Se consideră subprogramule C/C++ recursive C1
și C2
, definite mai jos.
int C1 (int a, int b) { if(a==b) return a; else if(a>b) return C1(a-b,b); else return C1(a,b-a); } int C2 (int a, int b) { if(b==0) return a; else return C2(b,a%b); }
La apel, returnează valoarea celui mai mare divizor comun al celor două numere naturale nenule primite ca parametri:
Varianta 1 |
numai |
Varianta 2 |
numai |
Varianta 3 |
atât |
Varianta 4 |
nici |
Se consideră subprogramul C/C++ f
, definit mai jos.
void f (int x) { cout<<"*"; if(x>0) { cout<<x; f(x/100); cout<<"*"; } }
Ce se afișează în urma apelului:
f(12345);
Se consideră subprogramul C/C++ p
, definit mai jos.
int p(int m, int n) { if(n==0) return 1; return 1+p(n, m%n); }
Valoarea lui p(210, 49)
este:
Varianta 1 |
1 |
Varianta 2 |
2 |
Varianta 3 |
3 |
Varianta 4 |
4 |
Se consideră subprogramul C/C++ f
, definit mai jos.
int f(int a, int b) { if(a>=b) return (a-b)+f(a/b,b); return 1; }
Scrieți un număr natural din intervalul deschis (20,30)
, care poate fi memorat în variabila întreagă x, astfel încât valoarea lui f(x,3)
să fie 29
.
Subprogramul f
este definit mai jos.
void f(long n, int i) { if(n!=0) if(n%3>0) { cout<<i; f(n/3,i+1); } }
Ce se afişează în urma apelului de mai jos?
f(121,1);
Subprogramul f
este definit mai jos.
void f(long n) { cout<<n%10; if(n!=0) { f(n/100); cout<<n%10;} }
Ce se afişează în urma apelului următor?
f(12345);
Subprogramul f
este definit mai jos.
void f (int x) { if(x>0) if(x%4==0) { cout<<'x'; f(x-1); } else { f(x/3); cout<<'y'; } }
Ce se afişează în urma apelului următor?
f(26);
Subprogramul f
este definit mai jos.
void f (int n, int x) { if(x>n) cout<<0; else if(x%4<=1) f(n,x+1); else { f(n,x+3); cout<<1; } }
Ce se afişează în urma apelului următor?
f(15,2);