Search Header Logo

Recursivitate

Authored by Laurentiu Lambrinoc

Computers

11th Grade

Used 1+ times

Recursivitate
AI

AI Actions

Add similar questions

Adjust reading levels

Convert to real-world scenario

Translate activity

More...

    Content View

    Student View

9 questions

Show all answers

1.

MULTIPLE CHOICE QUESTION

5 mins • 1 pt

Subprogramele f1, f2 și f3 sunt definite mai jos.

int f1(int n) { return n*(n+1)/2; }

int f2(int n) { if(n!=0) return n+f2(n-1); return 0; }

int f3(int n) { if(n==0) return 0; if(n%2==1) return n+f3(n-1); return n*n/4+2*f3(n/2); }

Pentru n=24, se obține aceeași valoare la apelul subprogramelor:

f1 și f2

f1 și f3

f2 și f3

a.       f1, f2 și f3

2.

MULTIPLE CHOICE QUESTION

2 mins • 1 pt

 Subprogramul f este definit alăturat. Indicați valoarea f(3,2).

int f(int x, int y) { int z; if (y==0) return 1; z=f(x,y/2); if (y%2!=0) return z*z*x; return z*z; }

1

2

9

18

3.

MULTIPLE CHOICE QUESTION

2 mins • 1 pt

Subprogramul f este definit alăturat. Indicați valoarea lui f(2023).

int f(int n) { if(n==0) return 0; if(n%10==2) return f(n/10)*10+3; return f(n/10)*10+2; }

3232

2303

3332

5355

4.

MULTIPLE CHOICE QUESTION

2 mins • 1 pt

Subprogramul f este definit alăturat. Indicați valoarea f(35,3).

 int f(int n,int k) { if(n==0 || k==0) return 0; return n%k+10*f(n/k,k); }

33

355

102

1022

5.

MULTIPLE CHOICE QUESTION

3 mins • 1 pt

Subprogramul f este definit alăturat. Indicați un apel în urma căruia în șirul afișat există două valori egale cu 23.

void f(int m, int n) { cout<<(m+n)/2><<' '; if(m<=n) f(m+1,n-2); }

f(20,23);

f(20,26);

f(21,25);

f(21,27);

6.

MULTIPLE CHOICE QUESTION

2 mins • 1 pt

Subprogramul f este definit alăturat. Indicați valoarea parametrului x pentru care f(x,3) are valoarea 2022. int f(int n,int p) { if(n==0) return 0; else if(p==0) return n*10+2; else return f(n/10,p-1); }

120234

122023

220223

202345

7.

MULTIPLE CHOICE QUESTION

3 mins • 1 pt

Subprogramul f este definit alăturat.

int f(int st,int dr,int v[]) { if(st==dr) if(v[st]==st)return 1; else return 0; else return f(st,(st+dr)/2,v) + f(1+(st+dr)/2,dr,v); }

Știind că variabila x memorează un tablou unidimensional cu elementele (7,1,2,5,4), în această ordine, numerotate de la 0 la 4, indicați valoarea f(0,4,x).

2

3

4

5

Access all questions and much more by creating a free account

Create resources

Host any resource

Get auto-graded reports

Google

Continue with Google

Email

Continue with Email

Classlink

Continue with Classlink

Clever

Continue with Clever

or continue with

Microsoft

Microsoft

Apple

Apple

Others

Others

Already have an account?