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

Microsoft

Continue with Microsoft

or continue with

Facebook

Facebook

Apple

Apple

Others

Others

Already have an account?