Despre acest subiect
pregătire · Model oficial 2
Sursa documentelor: FMI UBB – subiecte din anii precedenți. Pentru acest subiect nu este disponibil un barem public.
Se încarcă profesorii disponibili…
Se deschide documentul PDF… Deschide PDF
Acest subiect nu are un barem public asociat.
Facultatea de Matematică și Informatică · UBB
Înapoi la arhivăpregătire · Model oficial 2
Sursa documentelor: FMI UBB – subiecte din anii precedenți. Pentru acest subiect nu este disponibil un barem public.
Text extras automat din documentul original. Pentru formule, tabele, imagini și așezarea răspunsurilor, verifică întotdeauna PDF-ul.
1
UNIVERSITATEA BABEŞ-BOLYAI
FACULTATEA DE MATEMATICĂ ŞI INFORMATICĂ
Concurs Mate-Info - model
Proba scrisă la Informatică
Subiectul A (30 puncte)
1. (5p) Fie următorul subalgoritm:
Subalgoritm f(a):
Dacă a != 0 atunci
returnează a + f(a - 1)
altfel
returnează 0
SfDacă
SfSubalgoritm
Care din afirmatiile de mai jos este falsă?
a. f este un subalgoritm definit recursiv
b. daca a este negativ, subalgoritmul întoarce 0
c. valoarea calculată de f este a * (a + 1) / 4
d. subalgoritmul calculează suma numerelor naturale mai mici sau egale cu a
e. apelul f(-5) intră în ciclu infinit.
2. (5p) Se dă următorul subalgoritm
Subalgoritm f(a, b):
Dacă (a > 1) atunci
returnează b * f(a - 1, b)
altfel
returnează 1
SfDacă
SfSubalgoritm
Precizați de câte ori se apeleaza functia f în următoarea secvență de cod:
x ← 4;
y ← 3;
z ← f(x, y);
a. de 4 ori
b. de 3 ori
c. de o infinitate de ori
d. niciodată
e. o dată
3. (5p) Se consideră toate șirurile de lungime l ϵ {1, 2} formate din litere din mulțimea {a, b, c, d, e}. Câte
dintre aceste șiruri au elementele ordonate strict crescător și un număr par de vocale? (a și e sunt vocale)
a. 7
b. 80
c. 81
d. 78
e. 2
4. (5p) O matrice cu 8 linii, formată doar din elemente 0 și 1, are următoarele trei proprietăți:
a. prima linie conține un singur element cu valoarea 1,
b. linia j conține de două ori mai multe elemente nenule decât linia j − 1, pentru orice j ∈ {2, 3, . . .
, 8},
c. ultima linie conține un singur element cu valoarea 0.
Care este numărul total de elemente cu valoarea 0 din matrice?
a. 777
b. 769
c. 5282
d. nu există o astfel de matrice
e. 1
5. (5p) Se dau 3 șiruri a, b, c cu n, m, respectiv k elemente și următorii subalgoritmi:
Subalgoritm F1(x, l):
s ← 0
Pentru i ← 1, l execută
s ← s + x[i]
SfPentru
returnează s
SfSubalgoritm
Subalgoritm F2(n1, n2):
returnează n1 + n2
SfSubalgoritm
Care dintre următoarele instrucțiuni sunt corecte în cazul existenței a 3 șiruri (a, b, c) cu câte n, m și,
respectiv, k numere naturale:
a. F2(F2(F1(a,n), F1(b,m)), k)
b. val = F1(c,k) + F2(F1(b,m), F1(a,n))
c. val = F1(c,k) + F2(F1(a,m), b,n)
d. F2(F2(F1(a,n), F1(b,m)), F1(c, k))
e. val = F1(k, c) + F2(F1(m, b), F1(n, a))
6. (5p) Se dă următorul subalgoritm:
Subalgoritm fc(a, s):
k = 0
Pentru i ← 1, lungime(s) execută:
k = k + a
SfPentru
returnează k
SfSubalgoritm
Precizați care dintre secvențele de instrucțiuni de mai jos vor produce afișarea numărului 75?
Observație: s-a presupus că indexarea șirurilor începe de la 1.
a. nr = fc("ana", 25)
afișare(nr)
b. nr = fc(25, "ana")
afișare(nr)
c. afișare(fc(25, "ana"))
d. nu există un astfel de apel
e. afișare(fc("ana", 25))
Subiectul B (60 puncte)
1. Rază (25 puncte)
Avem la dispoziție un chenar dreptunghiular format din oglinzi. O rază de
lumină pornește din colțul stânga jos al dreptunghiului sub un unghi de 45o
față de latura de jos a dreptunghiului și lovește latura de sus sau latura din
dreapta. Aici se reflectă (pornește spre o altă latură tot sub un unghi de 45o
față de latura de care s-a lovit). Își continuă drumul până când ajunge într-un
colț al dreptunghiului.
Scrieți un subalgoritm care calculează de câte ori (nrSchimb) raza își schimbă direcția de mers până când se
oprește într-un colț. Punctul de pornire nu se numără. Parametri de intrare ai subalgoritmului sunt lungimea
(1 < a < 10 000) și lățimea (1 < b < 10 000) dreptunghiului, iar nrSchimb va fi parametru de ieșire (a, b,
nrSchimb ϵ N).
Exemplu 1: dacă a = 8 și b = 3, atunci nrSchimb = 9.
Exemplu 2: dacă a = 8 și b = 4, atunci nrSchimb = 1.
6 1 9 4
7 3
0 8 5 23
2. Viruși (15 puncte)
În cadrul unui experiment, o populație de n (3 ≤ n ≤ 1 000) viruși poate evolua astfel:
a. dacă la începutul unei ore populația este formată dintr-un număr par de viruși, atunci la sfârșitul orei
populația va fi mai mică cu 50%;
b. dacă la începutul unei ore populația este formată dintr-un număr impar de viruși, atunci la sfârșitul orei
populația de viruși va crește cu 1 virus;
c. dacă la sfârșitul unei ore populația este formată dintr-un număr de viruși strict mai mic decât un număr
critic de supraviețuire, atunci populația dispare.
Scrieți un subalgoritm care determină numărul de ore, notat nrOre, necesar distrugerii unei populații inițiale de
n viruși, cunoscând numărul critic de supraviețuire k (2 ≤ k < n). Parametrii de intrare sunt n și k, iar nrOre va
fi parametru de ieșire.
Exemplu: dacă n = 11 și k = 3, populația se distruge în nrOre = 5.
3. Sortare (10 puncte)
Se dă următorul subalgoritm:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
Subalgoritm sortare(a, n):
Dacă n > 0 atunci
sortare(a, n - 1)
x ← a[n]
j ← n - 1
CâtTimp (j >= 0 and a[j] > x) execută:
j ← j - 1
SfCâtTimp
a[j + 1] ← x
SfDacă
SfSubalgoritm
Ce instrucțiune/instrucțiuni trebuie adăugate, și unde, astfel încât în urma apelului subalgoritmului
sortare(a, n) șirul a cu n elemente numere naturale să fie sortat?
4. Cifra de control (10 puncte)
Se dă următorul subalgoritm pentru determinarea cifrei de control a unui număr natural cu minim 2
cifre.
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
Subalgoritm cifraDeControl(x):
CâtTimp x > 9 execută:
s ← 0
CâtTimp x > 0 execută:
s ← s + x MOD 10 { x mod 10 calculeazǎ restul ȋmpǎrțirii lui x la 10}
x ← x DIV 10 { x div 10 calculeazǎ câtul ȋmpǎrțirii lui x la 10}
SfCâtTimp
x ← s
SfCâtTimp
returnează x
SfSubalgoritm
Înlocuiți corpul acestui subalgoritm cu maxim 2 instrucțiuni astfel încât subalgoritmul rezultat să aibă
același efect.
Notă:
1. Toate subiectele sunt obligatorii.
2. Rezolvările trebuie scrise detaliat pe foile de examen (ciornele nu se iau în considerare).
3. Se acordă 10 puncte din oficiu.
4. Timpul efectiv de lucru este de 3 ore.4 BAREM OFICIU............................................................................................................................................... 10 puncte SUBIECTUL A .................................................................................................................................. 30 puncte A. 1. Răspunsurile b, c, d....................................................................................................................... 5 puncte A. 2. Răspunsul a ................................................................................................................................... 5 puncte A. 3. Răspunsul a ................................................................................................................................... 5 puncte A. 4. Răspunsul a ................................................................................................................................... 5 puncte A. 5. Răspunsul b................................................................................................................................... 5 puncte A. 6. Răspunsurile b și c ........................................................................................................................ 5 puncte SUBIECTUL B .................................................................................................................................. 60 puncte B. 1. Rază ............................................................................................................................................ 25 puncte V1: determinarea corectă a valorii nrSchimb bazată pe utilizarea cmmdc(a, b) ..................... 25 puncte cmmdc(a, b) (sau cmmmc(a,b))............................................................................................ 10 puncte calculul valorii nrSchimb .................................................................................................... 15 puncte V2: determinarea corectă a valorii nrSchimb cu alt algoritm corect (simulare) ..................... 15 puncte B. 2. Viruși .......................................................................................................................................... 15 puncte Rezolvare iterativă sau recursivă........................................................................................ . 10 puncte Calcul corect (populația moare la sfârșitul unei ore) ............................................................. 5 puncte B. 3. Sortare ....................................................................................................................................... 10 puncte identificare instrucțiune(a[j + 1] ← a[j]) .............................................................................. 5 puncte inserarea instrucțiunii între liniile 6 și 7 ..................................................................................... 5 puncte B. 4. Cifra de control ......................................................................................................................... 10 puncte cifra de control a unui număr poate fi calculată ca nr mod 9 .................................................... 10 puncte
5
REZOLVARE
REZOLVARE – Subiect B.1.: Rază................................................................................................. 25 puncte
//determina cmmdc a 2 numere a si b
int cmmdc(int a, int b){
if ((a == b) && (a == 0))
return 1;
if (a * b == 0)
return a + b;
while (a != b)
if (a > b)
a -= b;
else
b -= a;
return a;
}
// calcularea numărului de schimbări de direcție a razei
int raza(int a, int b){
int d = cmmdc(a, b);
return b / d + a / d - 2;
}
REZOLVARE – Subiect B.2.: Viruși............................................................................................... 15 puncte
//determina nr de ore necesar distrugerii unei populatii cu n virusi,
//pentru un nr critic de supravietuire k
int virusi(int n, int k){
bool distrus = (n < k);
int nrOre = 0;
while (!distrus){
if (n % 2 == 0) //daca avem nr par de virsui, injumatatim populatia
n = n / 2;
else //daca avem nr impar de virsui, marim populatia cu un virus
n = n + 1;
nrOre = nrOre + 1;
distrus = (n < k); //verificam daca populatia dispare
}
return nrOre;
}
REZOLVARE – Subiect B.3.: Sortare ............................................................................................ 10 puncte
Între linia 6 și 7 trebuie inserată instrucțiunea a[j + 1] ← a[j], subalgoritmul devenind
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
Subalgoritm sortare(a, n):
Dacă n > 0 atunci
f(a, n - 1)
x ← a[n]
j ← n - 1
CâtTimp (j >= 0 and a[j] > x) execută:
a[j + 1] ← a[j]
j ← j - 1
SfCâtTimp
a[j + 1] ← x
SfDacă
SfSubalgoritm
REZOLVARE - Subiect B. 4. Cifra de control ............................................................................... 10 puncte
1:
2:
3:
Subalgoritm cifraDeControl(x):
Returnează x mod 9
SfSubalgoritmRăspunsuri directe
Pagina prezintă model de pregătire din 2018 pentru Informatică, la Facultatea de Matematică și Informatică. Documentul este etichetat după instituție, facultate, program și tipul probei folosind inventarul public verificat. Consultă metodologia actuală a instituției pentru condițiile examenului viitor.
Nu există un barem public asociat în inventarul verificat pentru acest document. ProfesorBun nu generează și nu inventează răspunsuri oficiale. Poți folosi subiectul pentru antrenament, dar corectarea trebuie făcută cu metodologia instituției, cu materiale oficiale suplimentare sau împreună cu un profesor.
Rezolvă documentul fără ajutor și respectă timpul prevăzut de metodologia examenului. Corectează cu baremul disponibil, marchează capitolele unde ai pierdut puncte și repetă exerciții similare. Compară apoi cu alte probe din aceeași facultate și confirmă programa curentă pe site-ul oficial al instituției.
Glisează pentru a vedea profesorii
Sunt profesor de Informatica-Matematica si Trainer IT, cu experienta de lucru cu elevi/studenti de aproximativ 15 ani. Am absolvit Facultatea de Cibernetica din cadrul Academiei de Studii Economice, olimpica la Informatica, ofer meditatii orice nivel, pentru C/C++, Adobe Illustrator, Python, PHP, SQL, lucrul in diferite medii (ex. APEX etc) cat si pregatire pentru ECDL. Sedintele de meditatii le tin in format online (prin intermediul unor metode usor de inteles, care simuleaza sedinta de meditatii clasica). Pot oferi ajutor si pentru pregatire de examene nationale, Bacalaureat, admiteri, corectari teme. O ședință poate fi de o oră, o oră și 30 de minute sau 2 ore. Ofer meditații individuale sau în grupe de câte 2-5 elevi.
Sunt profesor de Informatica-Matematica si Trainer IT, cu experienta de lucru cu elevi/studenti de aproximativ 15 ani. Am absolvit Facultatea de Cibernetica din cadrul Academiei de Studii Economice, olimpica la Informatica, ofer meditatii orice nivel, pentru C/C++, Adobe Illustrator, Python, PHP, SQL, lucrul in diferite medii (ex. APEX etc) cat si pregatire pentru ECDL. Sedintele de meditatii le tin in format online (prin intermediul unor metode usor de inteles, care simuleaza sedinta de meditatii clasica). Pot oferi ajutor si pentru pregatire de examene nationale, Bacalaureat, admiteri, corectari teme. O ședință poate fi de o oră, o oră și 30 de minute sau 2 ore. Ofer meditații individuale sau în grupe de câte 2-5 elevi.
Preț
230 lei / 90 min
💻 De ce să colaborăm? Sunt mentor de informatică pentru gimnaziu și liceu, cu o experiență de peste 4 ani și mai mult de 200 de tineri ghidați cu succes în universul programării. Având o formare solidă în matematică și informatică, pun accent pe o predare intuitivă, logică și vizuală. Nu ne limităm la teorie: descompun fiecare concept în pași simpli, astfel încât elevul să înțeleagă exact de ce funcționează un cod și să capete autonomie în fața problemelor. 🧠 Cum lucrez cu elevii? Studiile mele în psihologia copilului mă ajută să mă sincronizez cu ritmul și stilul de învățare al fiecărui cursant. Îmi propun să mențin un climat relaxat și constructiv, eliminând teama de greșeală și transformând scrierea de cod într-o activitate creativă și plăcută. 🎓 Metodologie modernă Participarea constantă la cursuri de specialitate îmi oferă instrumente didactice actualizate, care facilitează predarea eficientă a algoritmilor și a structurilor de date, construind în același timp o relație bazată pe deschidere și încredere. 🏆 Performanțe și rezultate Cea mai mică notă obținută de elevii mei la Bacalaureat (la proba de Informatică): 8,80 Bilanțul pentru 2025: 2 note de 10 curate la Bacalaureat (Informatică) și o rată de promovabilitate excelentă, mulți elevi reușind să își depășească propriile așteptări. 👨🏫 Cine sunt eu? ✍️ Scriu frecvent articole și probleme de specialitate pentru reviste dedicate. Mă descriu ca o persoană calmă, extrem de răbdătoare și empatică. Știu cum să transform noțiuni abstracte – cum ar fi vectorii, matricile sau recursivitatea – în concepte prietenoase, ușor de asimilat. 💡 Cred cu tărie că informatica se înțelege prin exercițiu și înțelegere logică, nu prin memorare mecanică. Ajut fiecare elev să își descopere potențialul și să capete încredere deplină în forțele proprii. 📚 Cum se desfășoară pregătirea? Toate ședințele sunt exclusiv 1 la 1 (individuale). 💻 Întâlnirile au loc online, într-un mediu interactiv optimizat pentru partajarea ecranului și scriere de cod în timp real. Structura unei ședințe tip: Debriefing: Analiza temei anterioare și clarificarea oricăror neclarități. Predare interactivă: Noțiuni noi explicate pas cu pas, însoțite de exemple practice și vizuale direct în mediul de lucru. Sesiune practică: Rezolvarea împreună de probleme, analizarea erorilor de cod (debugging) și exersarea logicii algoritmice. Temă personalizată: Set de aplicații croite exact pe nivelul și ritmul elevului.
„Nu mă învață doar să scriu cod, ci să gândesc ca un programator. Când greșesc, nu îmi dă direct rezolvarea, ci mă ghidează cu răbdare să îmi găsesc singur eroarea. Asta m-a ajutat enorm să devin mult mai sigur pe mine la problemele grele.”Munteanu M.
💻 De ce să colaborăm? Sunt mentor de informatică pentru gimnaziu și liceu, cu o experiență de peste 4 ani și mai mult de 200 de tineri ghidați cu succes în universul programării. Având o formare solidă în matematică și informatică, pun accent pe o predare intuitivă, logică și vizuală. Nu ne limităm la teorie: descompun fiecare concept în pași simpli, astfel încât elevul să înțeleagă exact de ce funcționează un cod și să capete autonomie în fața problemelor. 🧠 Cum lucrez cu elevii? Studiile mele în psihologia copilului mă ajută să mă sincronizez cu ritmul și stilul de învățare al fiecărui cursant. Îmi propun să mențin un climat relaxat și constructiv, eliminând teama de greșeală și transformând scrierea de cod într-o activitate creativă și plăcută. 🎓 Metodologie modernă Participarea constantă la cursuri de specialitate îmi oferă instrumente didactice actualizate, care facilitează predarea eficientă a algoritmilor și a structurilor de date, construind în același timp o relație bazată pe deschidere și încredere. 🏆 Performanțe și rezultate Cea mai mică notă obținută de elevii mei la Bacalaureat (la proba de Informatică): 8,80 Bilanțul pentru 2025: 2 note de 10 curate la Bacalaureat (Informatică) și o rată de promovabilitate excelentă, mulți elevi reușind să își depășească propriile așteptări. 👨🏫 Cine sunt eu? ✍️ Scriu frecvent articole și probleme de specialitate pentru reviste dedicate. Mă descriu ca o persoană calmă, extrem de răbdătoare și empatică. Știu cum să transform noțiuni abstracte – cum ar fi vectorii, matricile sau recursivitatea – în concepte prietenoase, ușor de asimilat. 💡 Cred cu tărie că informatica se înțelege prin exercițiu și înțelegere logică, nu prin memorare mecanică. Ajut fiecare elev să își descopere potențialul și să capete încredere deplină în forțele proprii. 📚 Cum se desfășoară pregătirea? Toate ședințele sunt exclusiv 1 la 1 (individuale). 💻 Întâlnirile au loc online, într-un mediu interactiv optimizat pentru partajarea ecranului și scriere de cod în timp real. Structura unei ședințe tip: Debriefing: Analiza temei anterioare și clarificarea oricăror neclarități. Predare interactivă: Noțiuni noi explicate pas cu pas, însoțite de exemple practice și vizuale direct în mediul de lucru. Sesiune practică: Rezolvarea împreună de probleme, analizarea erorilor de cod (debugging) și exersarea logicii algoritmice. Temă personalizată: Set de aplicații croite exact pe nivelul și ritmul elevului.
„Nu mă învață doar să scriu cod, ci să gândesc ca un programator. Când greșesc, nu îmi dă direct rezolvarea, ci mă ghidează cu răbdare să îmi găsesc singur eroarea. Asta m-a ajutat enorm să devin mult mai sigur pe mine la problemele grele.”
Preț
150 lei / 2 h
Ofer meditații tuturor elevilor și studenților care își doresc să învețe informatică, și să se perfecționeze pentru a obține o notă cât mai mare la Bacalaureat, dar și pentru studenții care întâmpină probleme la susținerea examenelor universitare. Lucrez cu elevi de orice nivel și adaptez stilul în funcție de nevoile fiecăruia. Datorită faptului că diferența de vârstă mică dintre mine și elevii mei, orele de pregătire se desfășoară într-o atmosferă relaxată, lucru care le permite elevilor să fie mai deschiși la a pune întrebări și astfel, asimilează mult mai ușor cunoștințele. Pentru mai multe detalii, vă rog să mă contactați.
„profesorul este bun, intelegator,si te ajuta sa intelegi indiferent de nivelul la care esti, fie ca e lectie noua sau o recapitulare ,stie sa te tina prins in ora, sincer nu cred ca exista profesor sa ma faca sa imi placa sa invat pana am dat de el, ma bucur ca imi este meditator si recomand cu toata increderea!!”Floris Daniel T.
Ofer meditații tuturor elevilor și studenților care își doresc să învețe informatică, și să se perfecționeze pentru a obține o notă cât mai mare la Bacalaureat, dar și pentru studenții care întâmpină probleme la susținerea examenelor universitare. Lucrez cu elevi de orice nivel și adaptez stilul în funcție de nevoile fiecăruia. Datorită faptului că diferența de vârstă mică dintre mine și elevii mei, orele de pregătire se desfășoară într-o atmosferă relaxată, lucru care le permite elevilor să fie mai deschiși la a pune întrebări și astfel, asimilează mult mai ușor cunoștințele. Pentru mai multe detalii, vă rog să mă contactați.
„profesorul este bun, intelegator,si te ajuta sa intelegi indiferent de nivelul la care esti, fie ca e lectie noua sau o recapitulare ,stie sa te tina prins in ora, sincer nu cred ca exista profesor sa ma faca sa imi placa sa invat pana am dat de el, ma bucur ca imi este meditator si recomand cu toata increderea!!”
Preț
100 lei / 2 h