Sunteți pe pagina 1din 39

MyTestXPro

UNREGISTERED VERSION
http://mytest.klyaksa.net

Test: "Evaluare finala: Utilizarea Tehnicilor Clasice de Programare. Limbajul C#.".

Task #1
Care dintre tipurile enumerate mai jos este rădăcina oricărui tip de date:
Choose one of the 5 answer variants:
1) - int
2) - decimal
3) - byte
4) + object
5) - string

Task #2
Dintre afirmațiile de mai jos selectați afirmațiile ce reprezintă etapele tehnicii de
programare Divide Et Impera:
Choose several from 6 answer variants:
1) + Identificarea modalităţii de împărţire în subprobleme
2) + Rezolvarea subproblemelor
3) + Identificarea dimensiunii subproblemelor
4) - Identifcarea soluțiilor distincte
5) + Combinarea soluţiilor
6) - Divizarea soluțiilor

Task #3
Care dintre proprietățile enumerate mai jos va returna numărul de elemente din
structura dinamică:
Choose one of the 5 answer variants:
1) - Value
2) - Next
3) - Capacity
4) - Length
5) + Count

Task #4
Faceți referire la imaginea alăturată.
Se dorește ca această secvență de cod să realizeze cinci iterații.
Ce modificări sunt necesare pentru realizarea acestei facilități?

Choose one of the 4 answer variants:

1) -
Modificarea codului din linia 05:
++count

2) -
Modificarea codului din linia 02:
while (count >= 5)

3) +
Modificarea codului din linia 01:
int count = 1;
4) -
Modificarea codului din linia 02:
while (count == 5)

Task #5
Selectați metodele specifice pentru gestionarea stivei:
Choose several from 5 answer variants:
1) - Next()
2) + Peek()
3) + Pop()
4) - Count
5) + Push()

Task #6
Faceți referire la imaginea alăturată. Selectați denumirea tehnicii de programare
reprezentată în această schemă.
Choose one of the 5 answer variants:
1) - Tehnica Bactracking
2) - Tehnica Divide Et Impera
3) - Tehnica Greedy
4) - Tehnica programării dinamice
5) + Tehnica Trierii

Task #7
Corectați secvența de cod de mai jos astfel încît codul să se compileze corect.
Fill in the gaps:

int elementeParePozitive = 0;
int element;
while (stivaNumere.[Count]>0)
{
element = stivaNumere.[Peek()];
if ( element %2== 0 & element>0)
elementeParePozitive++ ;
stivaNumere.Pop();
}
Console.WriteLine("\nElemente pare si pozitive
in stiva sint: {0}", elementeParePozitive);
Task #8
Care dintre afirmațiile de mai jos reprezintă o instanțiere corectă a unui masiv
bidimensional regulat cu patru lnii și trei coloane, ce conține elemente întregi?
Choose one of the 4 answer variants:
1) - int masiv[4,3];
2) +
int[,] masiv;
masiv = new int[4,3];
3) - int[4,3] masiv = new int[,];
4) -
int masiv[,];
masiv[,] = new masiv[3,4];

Task #9
Selectați tipul colecției de obiecte care descrie o coadă:
Choose one of the 4 answer variants:
1) + First In First Out
2) - Last In First Out
3) - Last In Last Out
4) - First In Last Out

Task #10
Precizaţi valoarea de adevăr a afirmaţiilor:
Choose false or trueответа:
1) True Tehnica Greedy conduce la timp de calcul polinomial
2) False
Tehnica Greedy se aplică problemelor în care soluţia se construieşte
de la început.
3) True Tehnica Greedy se mai numeşte şi tehnica optimului local.

Task #11
Două noduri i și j pentru care a[i,j]=1 se numesc:
Choose one of the 4 answer variants:
1) - incidente
2) - terminale
3) - izolate
4) + adiacente

Task #12
Corectați secvența de cod de mai jos:
Fill in the gaps:
using (StreamReader fisier= new [StreamReader]("test.in"))
{
string linie;
char[] separator = { ' ' };
linie = fisier.[ReadLine]();
string[] numere;
numere = linie.Split(separator,
StringSplitOptions.RemoveEmptyEntries);
N = int.Parse(numere[0]);
L = int.Parse(numere[1]);
R = int.Parse(numere[2]);
A = new int[N];
for (int i = 0; i < N; i++)
{
linie = fisier.[ReadLine]();
numere = linie.Split(separator,
StringSplitOptions.RemoveEmptyEntries);
A[i] = int.Parse(numere[i]);

}
}

Task #13
Selectați clasa ce va permite citirea datelor din fișierul cu numele specificat:
Choose one of the 5 answer variants:
1) - ReadLine
2) - StreamWriter
3) - StringWriter
4) + StreamReader
5) - StringReader

Task #14
Faceți referire la imaginea alăturată.
Cunoscînd faptul că variabilele caracter x și y au valorile x='*' și y='-', ce se va
afișa în urma executării instrucțiunilor reprezentate în imagine:

Choose one of the 4 answer variants:


1) - 3 12 4
2) - 3 9 4
3) - 13 12 4
4) + 1 9 4

Task #15
Metoda Greedy aplicată problemelor în care se cere aflarea unei soluţii optime:
Choose one of the 4 answer variants:
1) - permite determinarea tuturor soluţiilor optime ale problemei;
2) + este rapidă, dar nu determină întotdeauna soluţia optimă;
3) - este rapidă şi determină totdeauna soluţia optimă;
4) - este lentă dar determină totdeauna soluţia optimă;

Task #16
Faceți referire la imaginea alăturată. Selectați afirmația ce indică ce calculează
programul reprezentat în această imagine:
Choose one of the 4 answer variants:
1) - Programul tot timpul va returna valoarea 1
2) - Suma elementelor de la 1 pînă la n
3) + Factorialul numărului n
4) - Programul conține erori

Task #17
Selectați perechea de valori ce vor fi afișate în urma executării următoarei
secvențe de instrucțiuni:
a=10; b=a+1;
if (a != b) b++;
else a++;
a = b*a;
Console.WriteLine("{0} {1}", a, b);
Choose one of the 5 answer variants:
1) - 10 11
2) - 121 11
3) + 120 12
4) - 120 11
5) - 121 12

Task #18
Care dintre secvențele de mai jos vor inițializa corect un masiv bidimensional de
elemente întregi cu două linii și patru coloane. (Alegeți două)
Choose several from 5 answer variants:
1) - int [ , ] m = {{1,2},{4,2},{5,3},{6,2}};
2) - int [ ] m = new int [ ] {{1,2,3,0},{4,2,5,6}};
3) + int [ , ] m = new int [ , ] {{1,2,3,0},{4,2,5,6}};
4) + int [ , ] m = {{1,2,3,0},{4,2,5,6}};
5) - int [ , ] m = new int [ , ] {{1,2},{4,2},{5,3},{6,2}};

Task #19
Dintre secvențele de cod de mai jos selectați secvențele ce reprezintă instanțierea
unui tablou unidimensional cu patru elemente:
Choose several from 5 answer variants:
1) - int[] tablou;
2) - int t[] = {1,2,3,-5};
3) - int t[] = new t[] {1,2,3,-5};
4) + int[] t = {1,2,3,-5};
5) + int[] t = new int[] {1,2,3,-5};

Task #20
Este dată următoarea secvență de program C#:
01: int count = 0;
02: while (count <=5)
03: {
04: Console.WriteLine("count={0}", count);
05: count++;
06: }
Ce trebuie de modificat în acest cod, astfel ca el să realizeze exact cinci
iterații?
Choose one of the 5 answer variants:
1) - În linia 02: while (count > = 5)
2) - În linia 02: while (count = = 5)
3) - În linia 05: ++count;
4) - Programul este corect, execută exact cinci iterații.
5) + În linia 01: int count =1;

Task #21
Precizaţi deosebirile dintre tehnica Greedy şi tehnica Backtracking.
Choose several from 4 answer variants:

1)
Tehnica Backtracking poate oferi osingură soluţiile a problemei, în
-
timp ce tehnica Greedy oferă toate soluţiile;
2) -
Tehnica Greedy dispune de mecanismul întoarcerii, specific tehnicii
Backtracking
3)
Tehnica Backtracking poate oferi toate soluţiile problemei, în timp ce
+
tehnica Greedy oferă o singură soluţie;
4) +
Tehnica Greedy nu dispune de mecanismul întoarcerii, specific
tehnicii Backtracking

Task #22
Care este declarația corectă a unui masiv cu patru elemente întregi?
Choose several from 6 answer variants:
1) - int ages = new int[4] {20,30,40, 50};
2) + int[] ages = new int[4] {20,30,40, 50};
3) + int[] ages = {20,30,40, 50};
4) - int[] ages = new int[4] {20,30,40};
5) - int[] ages = new ages[] {20,30,40, 50};
6) + int[] ages = new int[] {20,30,40, 50};

Task #23
Selctați modalitatea corectă de implementare a grafurilor:
Choose one of the 4 answer variants:
1) - se pot implemente doar ca structuri de date alocate dinamic
2)
se pot implemente atît ca structuri de date alocate static cât şi alocate
+
dinamic
3) - se pot implemente doar ca structuri de date alocate static.
4) - Nici o variantă prezentată nu este corectă

Task #24
Selectați metodele specifice pentru gestionarea Cozii:
Choose several from 5 answer variants:
1) + Peek()
2) - Push()
3) + Dequeue()
4) + Enqueue()
5) - Count

Task #25
Selectați declarația corectă a unui masiv unidimensional cu 10 elemente:
Choose one of the 4 answer variants:
1) - int [ ] array = 10;
2) - int [10] array
3) + int [ ] array = new int[10];
4) - int array[10];

Task #26
În secvența de program de mai jos completați spațiile libere astfel ca programul
să fie corect.
Fill in the gaps:
static void Main(string[] args)
{
Console.Write("Introdu raza cercului:");
double raza = Convert.ToDouble(Console.ReadLine());
[if (raza > 0)]
{
double ariecerc = Math.PI * raza * raza;
double lungimecerc = Math.PI * 2 * raza;
Console.WriteLine("Aria cercului: {0:##.###}; lungimea cercului:
{1:##.###}", ariecerc, lungimecerc);
}
[else]
Console.WriteLine("Valoarea razei: {0} nu este corecta",raza);
Console.ReadLine();
}

Task #27
Corectați afirmația de mai jos astfel încît să fie corectă:
Fill in the gaps:
Suma elementelor din [linia] i reprezintă gradul exterior al nodului i.

Task #28
În secvența de program de mai jos completați spațiile libere astfel ca programul
să fie corect.
Fill in the gaps:
static void Main(string[] args)
{
Console.Write("Introdu raza cercului:");
double raza = Convert.ToDouble(Console.ReadLine());
[if (raza > 0)]
{
double ariecerc = Math.PI * raza * raza;
double lungimecerc = Math.PI * 2 * raza;
Console.WriteLine("Aria cercului: {0:##.###}; lungimea cercului:
{1:##.###}", ariecerc, lungimecerc);
}
[else]
Console.WriteLine("Valoarea razei: {0} nu este corecta",raza);
Console.ReadLine();
}

Task #29
Cared dintre operatorii enumerați mai jos sînt utilizați în expresiile cu variabile
de tip boolean?
Choose several from 6 answer variants:
1) - +
2) - -
3) + ==
4) - %
5) + <=
6) + |

Task #30

Selectați expresia în care este utilizată conversia explicită:


Choose one of the 4 answer variants:
int a, b;
1) - float c;
b=c+a
2) +
int a, b;
float c= (float) a / b;
3) -
int a, b;
float c= a / b;
int a, b;
4) - float c;
c= a;
Task #31
Care dintre următoarele instrucțiuni verifică în mod corect dacă valoarea
variabilei x aparține intervalului (a,b)?
Choose several from 4 answer variants:

1) +
if (x>a && x < b) Console.WriteLine("Apartine"); else
Console.WriteLine("NU Apartine");
2)
if (x>a | | x > b) Console.WriteLine("Apartine"); else
-
Console.WriteLine("NU Apartine");
3) +
if(x<=a | | x>=b) Console.WriteLine("NU Apartine");
else Console.WriteLine("Apartine");
if (x>a)
4) - if (x<b) Console.WriteLine("Apartine"); else
Console.WriteLine("NU Apartine");

Task #32

Selectați declarațiile corecte de constante în limbajul c#:


Choose several from 5 answer variants:
1) + const byte=0;
2) + const int x=5;
3) - byte y=25;
4) - const int valoare;
5) + const double valoare=12.54;

Task #33
Faceți referire la imaginea alăturată.
Completați matricea de adiacență a acestui graf

Fill in the gaps:

[0] [1] [0] [1]

[1] [0] [1] [1]

[0] [1] [0] [1]

[1] [1] [1] [0]

Task #34
Este necesar să realizați în codul aplicației o ramificare complexă, tot odată să vă
asigurați că codul este ușor de citit și înțeles, care dintre instrucțiunile de mai jos
ar trebui să utilizați în acest cod?
Choose one of the 5 answer variants:
1) + switch
2) - while
3) - if-else
4) - break
5) - case

Task #35

Dintre șirurile de caractere de mai jos selectați acele șiruri ce


reprezintă identificatori ale limbajului C#:
Choose several from 5 answer variants:
1) + Arietriunghi
2) - numar1+numar2
3) + coreCT
4) + numar1_numar2
5) - 23numar

Task #36
Care dintre declarările de șiruri de mai jos este o declarare de șir de tip
”verbatim”?
Choose one of the 5 answer variants:
1) - string a = “un sir de caractere”;
2) + string a = @“un sir de caractere”;
3) - string d=”c:\\exemple\\unu.cs”;
4) - string d=#”c:\\exemple\\unu.cs”;
5) - string d=&”c:\\exemple\\unu.cs”;

Task #37
Fie este dat următoarea secvență de cod:

byte x=5;
byte y=10;
........ z=x+y;
Ce tip de date (sau tipuri de date) pot fi utiliza'i pentru variabila z, astfel încît
această secvență să se compileze fără erori?
Choose several from 6 answer variants:
1) - byte
2) + int
3) - short
4) + double
5) + long
6) - boolean

Task #38
Care dintre instrucțiunile de iterație de mai jos oferă cea mai bună soluție la
parcurgerea tablourilor sau listelor, asigurînd la rîndul său citirea și depănarea
mai simplă a codului programului C#?
Choose one of the 5 answer variants:
1) - while
2) - do-while
3) + foreach
4) - for
5) - repeat

Task #39
Care dintre următoarele instrucțiuni ale structurii selective sînt corecte din punct
de vedere sintactic. (Selectați două)
Choose several from 4 answer variants:
1) - if ( 1<x<5 ) {x++; Console.WriteLine("x={0}", x);}
2) - if a=10 Console.WriteLine("a={0}", a);
3) + if (x<10) {Console.WriteLine("x={0}", x);}
4) + if ( x==3 | | y==5) Console.WriteLine("x={0}", x);

Task #40

Care dintre următoarele secvenţe de instrucţiuni atribuie variabilei


reale x cea mai mare dintre valorile variabilelor reale a şi b sau
valoarea lor comună, în cazul în care acestea sunt egale ?
Choose several from 5 answer variants:
1) - if(a<=b) x=a; else x=b;
2) + x=a; if(x<b) x=b;
3) + if(a<=b) x=b; else x=a;
4) - nici una dintre secvenţele anterioare
5) - if(a==b) x=a; else if(b>a) x=b;

Task #41
Cum se numește nodul pentru care d(x)=1:
Choose one of the 4 answer variants:
1) + terminal
2) - izolat
3) - regulat
4) - impar

Task #42
Faceți referire la imaginea alăturată. Indicați numărul de iterații din această
secvență de cod:
Choose one of the 5 answer variants:
1) - 3
2) - 2
3) - 5
4) - 0
5) + 4

Task #43
Faceți referire la imaginea alăturată.
Ce mecanism este descris în pașii respectivi?

Choose one of the 5 answer variants:


1) - Tehnica Trierii
2) + Tehnica Greedy
3) - Tehnica Divide Et Impera
4) - Tehnica Merge-Sort
5) - Tehnica BackTracking

Task #44
Faceți referire la imaginea alăturată.
Completați matricea de adiacență a acestui graf

Fill in the gaps:

[0] [1] [0] [0] [0]

[0] [0] [1] [1] [0]

[0] [0] [0] [0] [1]

[0] [0] [0] [0] [0]

[0] [1] [0] [0] [0]

Task #45
Într-o aplicație se dorește calcularea recursivă a factorialului unui număr întreg.
care dintre secvențele de cod de mai jos va returna rezultatul corect?
Choose one of the 4 answer variants:
public static int Factorial(int n)
1) -
{
return n * Factorial(n - 1);
}
2) - public static int Factorial(int n)
{
if (n == 0)
{
return n;
}
else
{
return Factorial(n - 1);
}
}
public static int Factorial(int n)
{
if (n == 0)
{
return 1;
3) - }
else
{
return (n – 1) * Factorial(n);
}
}
public static int Factorial(int n)
{
if (n == 0)
{
return 1;
4) + }
else
{
return n * Factorial(n - 1);
}
}

Task #46
Corectați secvența de cod de mai jos astfel încît codul să se compileze corect.
Fill in the gaps:
{ Stack<int> stivaNumere = new [Stack]<int>();
int nrElemente;
Console.Write("Introdu numarul de elemente:");
nrElemente = int.Parse(Console.ReadLine());
Random rnd = new Random();
//Adaugarea elementelor in stiva
for (int i=0; i<nrElemente; i++)
{
stivaNumere.[Push](rnd.Next(-100, 100));
}
Console.WriteLine("Stiva Initiala:");
TiparesteStiva([stivaNumere]);
}
Task #47
Stiva poate fi descrisă astfel:
Choose one of the 3 answer variants:
1) - primul element introdus în stivă este primul care poate fi extras
2) - ultimul element introdus în stivă este ultimul care poate fi extras
3) + ultimul element introdus în stivă este primul care poate fi extras

Task #48
Corectați afirmația de mai jos astfel încît să fie corectă:
Fill in the gaps:
Suma elementelor din [coloana] i reprezintă gradul interior al nodului i.

Task #49
Completați afirmația de mai jos astfel încît să fie corectă:
Fill in the gaps:
Numărul de [arce] ale unui graf orientat este egal cu [suma] valorilor de 1 din
matricea de adiacență.

Task #50
Care dintre instrucțiunile repetitive de mai jos o să utilizați pentru realizarea unui
număr cunoscut de iterații?
Choose one of the 5 answer variants:
1) - switch
2) + for
3) - do-while
4) - while
5) - foreach
Task #51
Indicați corespondența corectă dintre parcurgerea arborilor binari și denumirea
acestei parurgeri:
Find a match for each of the 3 statements:
1) 1 Inordine 1) STÎNGA, RĂDĂDĂCINA, DREAPTA
2) 2 Preordine 2) RĂDĂCINA, STÎNGA, DREAPTA
3) 3 Postordine 3) STÎNGA, DREAPTA, RĂDĂCINA

Task #52
În imaginea alăturată este indicat un arbore binar.
Dintre șirurile numerice propuse mai jos selectați șirul care corespunde
parcurgerii în preordine a acestui arbore:

Choose one of the 3 answer variants:


1) + 72, 40, 22, 20, 36, 68, 40, 71, 78
2) - 72, 40, 78, 22, 20, 36, 68, 40, 71
3) - 20, 36, 22, 40, 71, 68, 40, 72, 78

Task #53
Indicați ordinea după prioritate a efectuării operațiilor din cadrul unei expresii, în
care nu sunt paranteze:
Choose the number for each of the 6 statements to make the right sequence.
1) 2 Multiplicativ
2) 6 De atribuire
3) 3 Aditiv
4) 4 Relațional
5) 1 Unar
6) 5 Condițional

Task #54
Selectați exemplele calsice de probleme la care tehnica Greedy va conduce la o
soluție optimă:
Choose several from 5 answer variants:
1) + Problema spectacolelor
2) - Problema discretă a rucsacului
3) + Problema continuă a rucsacului
4)
Problema monedelor(plata unei sume de bani cu un număr minim de
-
monede)
5) + Problema submulțimii de cardinal și suma maximă

Task #55

Ce valoare se va afișa în rezultatul secvenței de instrucțiuni:


int a=32;
int b= 7;
bool c = a != b;
Console.WriteLine("{0}", c);
Choose one of the 5 answer variants:
1) - 0
2) - 2
3) - secvența de isntrucțiuni conține erori
4) - False
5) + True

Task #56
Corectați secvența de cod de mai jos astfel încît codul să se compileze corect.
Fill in the gaps:

Queue<string> coadaCaractere = new


[Queue]<string>();
string cifra = "";
//Adaugarea elementelor in coada
for(int i=1; i<=5; i++)
{
Console.Write("Introdu denumire
cifrei: {0} ", i);
cifra = Console.ReadLine();
coadaCaractere.[Enqueue]([cifra]);
}
Console.WriteLine("Coada intiiala: ");
TiparesteCoada(coadaCaractere);
Task #57

Ce valoare se va afișa în rezultatul secvenței de instrucțiuni:


int a=32;
int b= 7;
bool c = (a != b) & (a>b*5);
Console.WriteLine("{0}", c);
Choose one of the 5 answer variants:
1) - True
2) - 0
3) - secvența de isntrucțiuni conține erori
4) + False
5) - 2

Task #58
Corectați codul de mai pentru afișarea unui tabel unidimensional cu elemente
întregi obținute în mod aleator.
Fill in the gaps:
static void Main(string[] args)
{
int nr;
Console.WriteLine("Introdu numarul de
elemente:");
nr = int.Parse(Console.ReadLine());
int[] tabel = [new] [int][nr];
Random numar = new [Random]();
for(int i=0; i<nr; i++)
{
tabel[[i]] = numar.Next(-10,10);
}

for(int i=0; i<nr; i++)


{
Console.Write("{0} ", [tabel][i]);
}
Console.ReadKey();
}
Task #59
Completați spațiul omis în definiția de mai jos.
Fill in the gaps:
Se numeşte metoda [trierii] o metodă ce indentifică toate soluţiile unei probleme
în dependenţă de mulţimea soluţiilor posibile.

Task #60

Ce valoare se va afișa în rezultatul secvenței de instrucțiuni:


int a=32;
int b= 7;
a %= b;
Console.WriteLine("{0}", a);
Choose one of the 5 answer variants:
1) - 0
2) - 2
3) + 4
4) - secvența de isntrucțiuni conține erori
5) - 6

Task #61
Se consideră secvența de cod:
int x = 10;
int y = ++x;
int z = y++;
Ce valoare se va conține în variabila z după executarea acestor instrucțiuni?
Choose one of the 4 answer variants:
1) - 13
2) - 10
3) - 12
4) + 11

Task #62
Faceți referire la imaginea alăturată.
Ce va afişa programul următor, dacă de la tastatură se introduc în ordine
numerele 5, 7 şi 8?
Enter the answer:
1) Answer: Mediocru

Task #63
Aranjează instrucţiunile de mai jos astfel incât să obţii metoda corectă a tehnicii
Divide Et Impera:
Choose the number for each of the 8 statements to make the right sequence.
1) 8 Sf_subprogram
2) 5 DivImp(V,m+1,q)
3) 3 altfel m=(p+q) div 2
4) 4 DivImp(V,p,m)
5) 2 Daca q-p <= 1 atunci Rezolva(V,p,q)
6) 6 Combina(V,p,m,q)
7) 7 Sf_Daca
8) 1 Subprogram DivImp(v,p,q)

Task #64
Corectați metoda de mai jos astfel încît să returneze gradul interior pentu un nod
x primit ca parametru.
Fill in the gaps:
private static int GradInterior(int x)
{
int nr = 0;
for (int i = 1; i <= n; i++)
{
if (ma[[i],[x]]==[1])
{
[nr]++;
}
}
return [nr];
}

Task #65
Ce valoare se va conține în variabila x după executarea expresiei:

int x = 6+4*4/2-1;
Choose one of the 5 answer variants:
1) - 20
2) - 10
3) - 17
4) + 13
5) - 19

Task #66
Completați spațiile omise în afirmația de mai jos.
Fill in the gaps:

Un nod fără descendenţi se numeşte nod [terminal].


Task #67
În secvența de cod de mai jos selectați expresia logică corectă, astfel încît să fie
afișat mesajul: x are valoarea 100
Fill in the gaps:
if ([x==100])
Console.WriteLine("x are valoarea 100");
else
Console.WriteLine("x nu are valoarea 100");

Task #68
Selectați tipul colecției de obiecte care descrie o stivă:
Choose one of the 4 answer variants:
1) - First In Last Out
2) - Last In Last Out
3) + Last In First Out
4) - First In First Out

Task #69
Elaborați o aplicație pentru linia de comandă. Ce instrucțiune o sa utilizați pentru
afisarea informației în linia de comandă. (Alegeți două)
Choose several from 6 answer variants:
1) + Console.Write
2) - File.Write
3) + Console.WriteLine
4) - Form1.Write
5) - Console.Read
6) - Console.ReadLine

Task #70
Presupunem că variabila întreagă a are valoarea 10 iar variabila întreagă b are
valoarea 5. Ce se va afișa în urma executării următoarei secvențe de instrucțiuni?
aux=1;
if (a<b) aux=a;
a=b; b=aux;
Console.WriteLine("{0} {1}",a,b);
Choose one of the 4 answer variants:
1) - 10 5
2) + 51
3) - 10 10
4) - 5 5

Task #71
Indicați numărul de iterații realizate de secvența de cod:
int p=10;
for(int n=0; n>=p; n++)
{
count++
}
Choose one of the 5 answer variants:
1) - 10
2) - 1
3) - 11
4) - 2
5) + 0

Task #72
Selectați metoda corectă pentru sortarea descrescătoare a elementelor unei liste:
Choose one of the 5 answer variants:
1) + Reverse()
2) - Remove()
3) - Finalize()
4) - AddLast()
5) - Sort()

Task #73
Într-un arbore un nod este frunză dacă:
Choose one of the 4 answer variants:
1) + nu are nici un descendent direct
2) - nu are rădăcină
3) - are un descendent direct
4) - are doi descendenți direcți

Task #74
În secvența de program de mai jos completați spațiile libere astfel ca programul
să fie corect (pentru conversiune folosiți metoda convert al numerelor intregi pe
32 de biți)
Fill in the gaps:
static void Main(string[] args)
{
Console.Write("Introdu primul numar:");
int numar1 = [Convert].ToInt32(Console.ReadLine());
Console.Write("Introdu al doilea numar:");
int numar2 = [Convert].ToInt32(Console.ReadLine());
int suma = numar1 + numar2;
int dif = numar1 - numar2;
int produs = numar1 * numar2;
float cit = (float)numar1 / numar2;
Console.WriteLine("Rezultatele: ");
Console.WriteLine("{0}+{1}={2}",numar1,numar2,suma);
Console.WriteLine("{0}-{1}={2}", numar1, numar2, dif);
Console.WriteLine("{0}*{1}={2}", numar1, numar2, produs);
Console.WriteLine("{0}/{1}={2:#.###}", numar1, numar2,
cit);
Console.ReadLine();
}

Task #75
Corectați metoda de mai jos astfel încît să returneze gradul exterior pentu un nod
x primit ca parametru.
Fill in the gaps:
private static int GradExterior(int x)
{
int nr = 0;
for (int i = 1; i <= n; i++)
{
if (ma[[x],[i]]==[1])
{
[nr]++;
}
}
return [nr];
}

Task #76
În secvența de program de mai jos completați spațiile libere astfel ca programul
să fie corect (cu virgula fixă și cu două cifre după virgulă, folosiți majuscule).
Fill in the gaps:
static void Main(string[] args)
{
Console.Write("Introdu raza cercului:");
double raza = Convert.ToDouble(Console.ReadLine());
if (raza > 0)
{
double ariecerc = Math.PI * raza * raza;
double lungimecerc = Math.PI * 2 * raza;
Console.WriteLine("Aria cercului: {0[:F2]}; lungimea
cercului: {1[:F2]}", ariecerc, lungimecerc);
}
else
Console.WriteLine("Valoarea razei: {0} nu este
corecta",raza);
Console.ReadLine();
}

Task #77
Precizaţi care din afirmaţiile de mai jos este adevărată şi care este falsă:
Choose false or trueответа:
1) True Tehnica Divide et Impera admite o implementare recursivă.
2) False
Tehnica Divide et Impera este o tehnică specială prin care se rezolvă
orice problemă.

Task #78
Se elaborează o aplicație ce utilizează un tabel bidimensional descris de secvenâa
de cod:
int[,] numbers = new int[,]
{
{ 11, 7, 50, 45, 27 },
{ 18, 35, 47, 24, 12 },
{ 89, 67, 84, 34, 24 },
{ 67, 32, 79, 65, 10 }
};

Ce valoare va returna expresia numbers[2, 3]?


Choose one of the 5 answer variants:
1) + 34
2) - 84
3) - 24
4) - 79
5) - 47
Task #79
Indicați corespondența corectă dintre descrierea și denumirea tehnicilor de
programare.
Find a match for each of the 5 statements:

1)
Admite o implementare 1)
Tehnica Greedy
2
recursivă.
Constă în efectuarea unor Tehncia Divide et Impera
încercări repetate, în vederea
2) 3 găsirii soluțiilor, cu 2)
posibilitatea revenirii în caz de
eșec.
Se aplică problemelor de Tehnica Backtracking
optimizare, aceasta metoda
3) 1 constă în faptul că se 3)
construieşte solutia optimă pas
cu pas.
4) 3
Are ca rezultat obţinerea 4)
Tehnica programării dinamice
tuturor soluţiilor problemei.
Se aplică problemelor a căror Tehnica programării statice.
5) 4 soluţie se poate construi 5)
dinamic în timp.

Task #80
Indicați corespondența corectă dintre descriere și tipul conversiei numerice:
Find a match for each of the 2 statements:
Se efectueazã (automat) doar Conversia implicită
1) 1 dacã nu este afectatã valoarea 1)
convertitã.
2)
se realizeazã prin intermediul 2)
Conversia explicită
2
unei expresii cast
3) Conversia directă

Task #81
Ce valoare va avea variabila x după această scevență de program?
int x = 0;
while (x++<10){ }
Console.WriteLine(x);
Enter the number:
1) Answer: 11

Task #82
Completați spațiile omise din metoda de mai jos.
Fill in the gaps:
static public void TiparesteLista(List<int> lista)
{
foreach ([int] el in [lista])
{
Console.Write("{0} ", el);
}
}

Task #83
Completați spațiul omis în instanțierea obiectului listaNumere:
Fill in the gaps:
List<int> listaNumere = new [List<int>()];
Task #84
Completați valorile de return a metodei de mai jos, ce calculează suma
elementelor unui vector prin metoda Divide Et Impera:
Fill in the gaps:
private static int SumaDivide(int[] vector, int li, int ls)
{
int mijloc, left, right;
if (li != ls)
{
mijloc = (li + ls) / 2;
left = SumaDivide(vector, li, mijloc);
right = SumaDivide(vector, mijloc + 1, ls);
return [left + right];
}
else
return [vector[li]];
}

Task #85
Precizaţi care din afirmaţiile de mai jos sunt adevărate şi care sunt false:
Choose false or trueответа:
1) True
Rezolvarea unei probleme cu Tehnica Backtracking garanteză
obţinerea soluţiei.
Problemele care se rezolvă cu Tehnica Backtracking nu impun
2) True generarea tuturor soluţiilor posible, ci doar a acelora care îndeplinesc
condiţiile interne ale problemei.
3) False
Tehnica Backtracking conduce la cei mai eficienţi algoritmi,
indiferent de problemă.
4)
Tehnica Backtracking se poate implementa doar cu ajutorul funcţiilor
False
recursive.

Task #86
Corectați secvența de cod de mai jos astfel încît codul să se compileze corect.
Fill in the gaps:

public static void TiparesteStiva(Stack<string>


stiva)
{
[foreach]([string] el [in] stiva)
{
Console.Write("{0}, ", el);
}
}
Task #87
În secvența de program de mai jos completați spațiile omise, astfel ca programul
să fie corect (la conversiunea numerelor se folosește metoda Parse)
Fill in the gaps:
static void Main(string[] args)
{
Console.Write("Introdu Numarul:");
long numar = long.[Parse](Console.ReadLine());
long n=numar, suma = 0;
[while (numar != 0)]
{
long rest = numar % 10;
suma = suma + rest;
numar = numar / 10;
}
Console.WriteLine("Suma cifrelor din numarul:{0}, este
egala cu {1}", n, suma);
Console.ReadLine();

Task #88
Corectai secvența de cod de mai jos. folosind metoda de scriere fără trecerea la o
linie nouă.
Fill in the gaps:
using (StreamWriter fisier = new [StreamWriter]("test.out"))
{
int s = TOTAL(A, 0);
int min = s;
int indice = 0;
fisier.[Write]("{0} ", s);
for (int i=1; i<N; i++)
{
s = TOTAL(A, i);
fisier.[Write]("{0} ", s);

if (min > s) { min = s; indice = i; }

fisier.[Write]("\n{0}", indice);

Task #89
Indicați corespondența corectă dintre denumirea tipului de date și categoria din
care face parte:
Find a match for each of the 6 statements:
1) 1 char 1) tipuri valoare
2) 1 float 2) tipuri referință
3) 2 interface
4) 1 byte
5) 2 class
6) 2 array

Task #90
Faceți referire la imaginea alăturată, în care este reprezentată metoda din
rezolvarea problemei “Fiind dată o hartă cu n ţări, se cer toate soluţiile de
colorare a hărţii, utilizând cel mult 4 culori, astfel încât 2 ţări cu frontiera
comună să fie colorate diferit. Este demonstrat matematic faptul că sunt
suficiente numai 4 culori pentru ca orice hartă să poată fi colorată astfel”:
Selectași varianta corectă ce realizează această metodă?

Choose one of the 3 answer variants:


1) + Caută succesorul, o altă culoare
2) - Verifică dacă am ajuns la soluţie
3) - Verifică condiţiile interne ale problemei.

Task #91
Completați metoda de mai jos, astfel ca ea să returneze valoarea maximală dintr-
un vector prin metoda Divide Et Impera:
Fill in the gaps:
private static int MaxDivide(int[] vector, int left, int right)
{
int els, eld, mijloc;
if ([left == right])
{
return vector[left]; //conditia de baza
}
else
mijloc = (left + right) / 2;
els = MaxDivide(vector,left, mijloc);
eld = MaxDivide(vector, mijloc+1, right);
if (els > eld)
{
return els;
}
else
return eld;
}

Task #92
În imaginea alăturată este indicat un arbore binar.
Indicați ordinea corectă pentru parcurgerea în inordine a acestui arbore:

Choose the number for each of the 9 statements to make the right sequence.
1) 4 G
2) 1 B
3) 6 C
4) 3 A
5) 8 F
6) 2 D
7) 9 I
8) 7 H
9) 5 E

Task #93
Faceți referire la imaginea alăturată în care este reprezentată o matrice de
adiacență a unui graf neorientat.
Care dintre următoarele secvențe de noduri reprezintă un lanț în acest graf. știind
că nodurile sînt numerotate de la 1 la 5.
Choose one of the 4 answer variants:
1) - 12345
2) - 34125
3) - 2134
4) + 41245

Task #94
Selectați condiția corectă în ce caz vom avea soluție la generarea permutărilor
unei mulțimi cu n elemente unde k reprezintă nivelul din stivă?
Choose one of the 4 answer variants:
1) - k <= n
2) - k!=n
3) + k==n
4) - k >= n

Task #95
Selectați metodele ce sînt aplicate asupra elementelor tipului de date List<T>:
Choose several from 6 answer variants:
1) + Remove()
2) + Add()
3) - AddFirst()
4) + Sort()
5) - AddAfter()
6) - RemoveFirst()

Task #96
Selectați varianta corectă ce permite verificarea în metoda de validare, dacă într-o
stivă cu k nivele două valori alăturate sunt distincte:
Choose one of the 4 answer variants:
1) - for(i=1; i<=k-1; i++)
if(st[k] = = st[i]) return false;
return true;
if(k>1)
2) + if(st[k] = = st[k-1]) return false;
return true;
for(i=1; i < k-1; i++)
3) - if(st[k] = = st[i]) return false;
return true;
4)
if(st[k] = = st[k+1]) return false;
-
return true;

Task #97
Pentru graful neorientat dat prin X={1,2,3,4,5,6} și U={(1,2), (2,6), (3,2), (3,5),
(6,5), (5,4)}, num[rul nodurilor care au gradul 3 este:
Choose one of the 5 answer variants:
1) - 0
2) + 2
3) - 3
4) - 1
5) - 4

Task #98
La elaborarea unei aplicații de business cu ajutorul limbajului C# a fost declarat
un masi unidimensional:
int [ ] numbers = {1, 2, 3, 4, 5, 6, 7, 8, 9};
Este necesar de apelat la al doilea element al acestui masiv (la numărul
2), ce expresie va fi utilizată pentru acest lucru?
Choose one of the 5 answer variants:
1) - numbers {1}
2) - numbers {2}
3) + numbers [1]
4) - numbers [0]
5) - numbers [2]

Task #99

Selectați valoarea corectă ce va fi afișată la ecran de instrucțiune


de mai jos:
Console.WriteLine("{0:F3}", 76543.97855);
Choose one of the 5 answer variants:

1) - 76543
2) - 76543.9785
3) - 765.439
4) - 76543.000
5) + 76543.978
Task #100
Selectați clasa ce va permite scrierea datelor în fișierul cu numele specificat:
Choose one of the 5 answer variants:
1) - StringWriter
2) - StreamReader
3) - StringReader
4) - WriteLine
5) + StreamWriter

Task #101

Ce valoare se va afișa în rezultatul secvenței de instrucțiuni:


int a=32;
int b= 7;
bool c = (a != b) | (a>b*5);
Console.WriteLine("{0}", c);
Choose one of the 5 answer variants:
1) - False
2) + True
3) - secvența de isntrucțiuni conține erori
4) - 2
5) - 0
MyTestXPro
UNREGISTERED VERSION
http://mytest.klyaksa.net

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