Subiect și barem
Se deschide documentul PDF… Deschide PDF
Model de pregătire · Informatică · 2016
Facultatea de Automatică, Calculatoare și Electronică · UCV
Înapoi la arhivăDespre acest subiect
Modelul 2
Sursa documentelor: Facultatea ACE – Universitatea din Craiova. Verifică răspunsurile cu baremul după ce rezolvi subiectul.
Subiectul și baremul în format text
Text extras automat din documentul original. Pentru formule, tabele, imagini și așezarea răspunsurilor, verifică întotdeauna PDF-ul.
Subiect · 6 pagini
Subiect · pagina 1
Universitatea din Craiova Facultatea de Automatică, Calculatoare şi Electronică Examen de admitere sesiunea iunie 2016 Informatică MODEL 5 Toate subiectele sunt obligatorii. Se acordă 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. SUBIECTUL I (30 puncte) Pentru itemul 1, scrieţi pe foaia de examen litera corespunzătoare răspunsului corect. 1. (4p.) Indicaţi expresiile C/C++ de mai jos, care au valoarea 1 (true) dacă şi numai dacă valoarea variabilei x de tip float, aparține intervalului [a, b], unde a și b sunt tot două variabile de tip float, cu propietatea că a<b: a) x>=a && x<=b b) !(x<a) && !(y>b) c) (x>=a && x<=b) ? 1 : 0 d) (x<a || x<=b) ? 0 : 1 2. (26p.) Se consideră algoritmul alăturat, reprezentat în pseudocod. S-a notat cu a%b restul împărţirii numărului natural a la numărul natural nenul b. citește a, b max 0 pentru i=a,b execută d 0 pentru j=1,i execută dacă i%j=0 atunci d d+1 daca d>max atunci max d pentru i=a,b execută d 0 pentru j=1,i execută dacă i%j=0 atunci d d+1 daca d=max atunci scrie d a) (4p.) Scrieți valoarea afișată, dacă se citesc, în această ordine, numerele 10 și 20.
Subiect · pagina 2
b) (6p.) Scrieți numărul total de perechi de numere distincte (a, b), care pot fi citite, așa încât să se afișeze
valorile 6 8 10.
c) (6p.) Scriți în pseudocod un algoritm echivalent cu cel dat, în care să se înlocuiască structura
pentru...execută când cu o altă structură repetitivă.
d) (10p.) Scriți un program C/C++ corespunzător algoritmului dat.
SUBIECTUL al II-lea (30 puncte)
Pentru fiecare dintre itemii 1 şi 2 scrieţi pe foaia de examen litera corespunzătoare răspunsului corect.
1. (4p.) Care dintre expresiile de mai jos determină corect dacă valoarea unei variabile, x, de fip double, nu
are parte zecimală?
a) floor(x) == x
b) floor(x) == x+1
c) ceil(x) == x
d) ceil(x) == x-1
2. (4p.) Variabilele i, j, și n sunt de tip întreg. Care sunt cele două expresii corecte care pot fi înlocuite în
locul punctelor de suspensie în secvența de cod, astfel ca în urma executării secvenței să se afișeze
următoarele valori:
int i, j, n=5;
for (...) {
for (...)
printf(“%d “, j);
printf(“\n“);
}
1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19 20
21 22 23 24 25
a) i=0; i<n; ++i, respectiv j=i; j<n; ++j
b) i=0; i<n; ++i, respectiv j=i; j<=n; ++j
c) i=1; i<=n; ++i, respectiv j=i; j<=n; ++j
d) i=1; i<n; ++i, respectiv j=i; j<n; ++j
Scrieţi pe foaia de examen răspunsul pentru fiecare dintre cerinţele următoare.
3. (6p.) Variabilele g1, m1, g2, m2 sunt de tip int, ale căror valori ne-negative reprezintă măsurile a două
unghiuri exprimate în grade și minute. Scrieți o secvență de instrucțiuni C/C++ în urma executării căreia se
va afișa pe ecran unghiul sumă a celor două unghiuri, exprimat în grade, minute și secunde.
4. (16p.) Se consideră trei numere întregi pozitive, a și b. Să se afișeze cifrele comune ale numerelor a și b,
fără să se țină seama de numărul de apariții ale unei cifre într-un număr. Exemple: pentru a=143, b=5112, se
va afișa 1, deoarece doar cifra 1 este comună în numerele a și b; pentru a=2345, b=792324, se vor afișa
cifrele 2 3 4.
a) (10p.) Scrieţi, în pseudocod, algoritmul de rezolvare pentru problema enunţată.
b) (6p.) Precizați rolul tuturor variabilelor care au intervenit în algoritmul realizat la punctul a) şi indicaţi
datele de intrare, respectiv datele de ieşire ale problemei enunţate.
SUBIECTUL al III-lea (30 puncte)
Pentru itemul 1, scrieţi pe foaia de examen litera corespunzătoare răspunsului corect.Subiect · pagina 3
1. (4p.) În secvenţa de instrucţiuni de mai jos toate variabilele sunt de tip întreg:
d=1+4*n;
if (...) {
x=(-1+sqrt(d))/2;
printf(“%d %d”, x, x+1);
} else {
printf(“Imposibil”);
}
Indicaţi o expresie care poate înlocui punctele de suspensie astfel încât, în urma executării secvenţei, să se
afișeze descompunerea numărului natural n ca produs de doua numere naturale consecutive; în caul în care
acest lucru nu este posibil, se va afișa mesajul "Imposibil".
a) sqrt(d)==floor(sqrt(d))
b) sqrt(d)==ceil(sqrt(d))
c) sqrt(d)!=floor(sqrt(d))
d) sqrt(d)!=ceil(sqrt(d))
Scrieţi pe foaia de examen răspunsul pentru fiecare dintre cerinţele următoare.
2. (6p.) Se consideră un tablou unidimensional de numere întregi pozitive, (1, 7, 5, 9, 3). Câte
parcurgeri ale tabloului sunt necesare pentru sortarea crescătoare a acestuia prin metoda bulelor? Pentru
fiecare parcurgere, specificați numărul de interschimbări realizate.
3. (10p.) Scrieți un program C/C++, care citește de la terminalul standard de intrare un număr natural n,
n<10 și afișează la terminalul standard de ieșire o “clepsidră” cu numerele de la 1 la n.
Exemple:
Pentru n=5, “clepsidra” care trebuie afișată are forma următoare:
12345
123
1
321
54321
Pentru n=6, “clepsidra” care trebuie afișată are forma următoare:
123456
1234
12
21
4321
654321
4. (10p.) Se numește număr perfect acel număr care este egal cu suma divizorilor săi. Să se scrie un
program C/C++ care efectueză următoarele operații:
- Citește un fișier text, input.txt, de maxim 1 milion de linii, fiecare linie conținând cel mult 1000 de
numere naturale separate prin spații
- Scrie un fișier de ieșire, output.txt, cu același număr de linii ca și fișierul de intrare, liniile din fișierul
de ieșire fiind create pe baza liniilor din fișierul de intrare astfel: în locul numerele perfecte din fișierul de
intrare se scriu răsturnatele acestora (de exemplu, răsturnatul lui 437 este numărul 734), iar celelalte numere
din fișierul de intrare se înlocuiesc cu numărul 0.Subiect · pagina 4
Exemen de admitere sesiunea iunie 2016 Informatică MODEL 6 Toate subiectele sunt obligatorii. Se acordă 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore. I. SUBIECTUL I (30 puncte) 1. (4p.) Se consideră trei variabile întregi x, y şi z. Se cere să se spună care dintre expresiile C următoare are valoarea 1 dacă şi numai dacă cea mai mare dintre valorile celor 3 variabile este un număr strict pozitiv. a) x>0 || y>0 || z>0 b) x>0 && y>0 && z>0 c) x*y*z > 0 d) x+y+z > 0 2. (26p.) Se consideră algoritmul următor, unde x%y reprezintă restul împărţirii numerelor naturale x şi y, iar [x] reprezintă partea întreagă a numărului real x. n 0 i 0 repetă citeşte y x y m 0 repetă d x%10 daca i=0 atunci m m*10+d i 1 altfel i 0 x [x/10] până când m≥x n n*10+d până când y=7 scrie n a) (6p.) Scrieţi valoarea afişată la ieşire, dacă de la intrare se citesc numerele 1221, 345321, 3456, 9, 9999, 77, 7. b) (4p.) Scrieţi un set de date de intrare reprezentat dintr-un şir de numere naturale, astfel încât, în urma executării algoritmului, să se afişeze valoarea 2017. c) (6p.) Rescrieţi algoritmul, folosind în loc de instrucţiunea repetitivă cu test final, o instrucţiune repetitivă cu test iniţial. d) (10p.) Scrieţi programul în limbajul C / C++ corespunzător algoritmului dat. II. SUBIECTUL al II-lea (30 puncte) 1. (6p.) Se consideră variabila întreagă n. Să se spună care dintre expresiile C de mai jos are valoarea 1 dacă şi numai dacă valoarea lui n este un pătrat perfect. a) (int)(pow(n+0.1,1/2.))*(int)(pow(n+0.1,1/2.))==n b) (int)exp((1/2.)*log(n+0.1))*(int)exp((1/2.)*log(n+0.1))==n c) (int)(pow(n+0.1,1/2))*(int)(pow(n+0.1,1/2))==n d) (int)(pow(n+0.1,1/2.)*pow(n+0.1,1/2.))==n
Subiect · pagina 5
2. (10p.) Se consideră reprezentarea numerelor naturale sub forma unui de tablou de caractere ce reprezintă
cifrele zecimale ale numărului. Spre exemplu numărul 1016 se reprezintă prin tabloul de 4 caractere ”1016”.
Se ştie că un număr poate avea cel mult 100 de cifre. Să se declare o variabilă tablou de caractere, n, care
reprezintă un număr natural. Să se declare apoi o a doua variabilă m care poate memora un tablou de
caractere ce reprezintă cifrele unui număr natural de cel mult 98 de cifre. Să se scrie o secvenţă de
instrucţiuni C, în urma executării căreia se citeşte tabloul n, variabila m memorează ca tablou de caractere
cel mai mare număr natural ce se poate obţine eliminând 2 cifre din numărul n, iar apoi se afişează m. De
exemplu, dacă n are valoarea ”14503” atunci m va primi valoarea ”503”, iar această valoare se va afişa.
3. (14p.) Fie n un număr natural dat. Două numere naturale nenule x şi y se numesc „gemene” pentru
numărul n, dacă şi numai dacă x2 – y2 = n. Spre exemplu, dacă n = 15 atunci x = 4 si y = 1 sunt numere
„gemene” pentru n. Se cere afişarea tuturor perechilor de numere „gemene” (x,y) pentru n, unde n este un
număr natural dat.
a) (10p.) Scrieţi algoritmul de rezolvare a problemei în pseudocod.
b) (4p.) Descrieţi rolul tuturor variabilelor din algoritm şi indicaţi datele de intrare şi datele de ieşire.
III. SUBIECTUL al III-lea (30 puncte)
1. (6p.) Se consideră că o mulţime de numere întregi se reprezintă printr-un vector de numere întregi ordonat
crescător. Spre exemplu, mulţimea A = {30, 3, 6, 1, 17, 25, 4, 53, 10} se reprezintă prin vectorul SA = [1, 3,
4, 6, 10, 17, 25, 30, 53]. Să se modifice algoritmul de interclasare a doi vectori X si Y astfel încât să
determine intersecţia M a mulţimilor de numere reprezentate prin cei doi vectori. Se cere:
a) (3p.) Scrieţi algoritmul modificat în pseudocod.
b) (3p.) Descrieţi succesiunea de paşi prin care trece vectorul M dacă X = [2, 6, 12, 20, 34, 43, 55,
67] si Y = [3, 5, 7, 12, 30, 40, 43, 56, 69].
2. (4p.) În secvenţa următoare, toate variabilele sunt întregi.
scanf(“%d”, &n);
...
while (...) {
...
}
if(...) {
printf(“Numarul %d nu contine un numar impar de cifre
patrate perfecte\n“, n);
}
Completaţi secvenţa anterioară, înlocuind punctele de suspensie, astfel încât în urma executării secvenţei, să
se afişeze mesajul respectiv. Spre exemplu, dacă se citeşte numărul n cu valoarea 275913 atunci mesajul va
fi afişat, dar dacă se citeşte numărul n cu valoarea 265913 atunci mesajul nu va fi afişat.
3. (10p.) Dându-se două mulţimi de numere întregi, A = {a1, …, an} şi B = {b1, …, bm}, să se verifice dacă
multimea A este egală cu multimea B, adică dacă A = B. Să se scrie un program C care citeşte de la
terminalul standard de intrare numărul de elemente ale fiecăreia dintre cele două mulţimi, precum şi
elementele acestora, şi afisează ”DA” dacă mulţimea A este egală cu B, altfel afişează ”NU”.
4. (10p.) Din fişierul text doc.txt se citeşte un text care conţine informaţii despre mai multe persoane, sub o
formă nestructurată. Informaţiile sunt dispuse pe linii de maxim 200 de caractere şi pot conţine CNP-uri
valide. Ştiind că CNP-ul valid al unei persoane este un şir de 13 cifre consecutive astfel încât prima cifră
este ’1’ sau ’2’, cifrele a patra şi a cincea reprezintă o lună validă in gama ’01’ – ’12’, iar cifrele a şasea şi
a şaptea reprezintă o zi validă în gama ’01’ – ’31’, să se scrie în fişierul text cnp.txt, pe linii distincte,
toate CNP-urile valide extrase din text. Dacă nu există nici un CNP corect, atunci se va scrie în fişier
valoarea 0. Exemplu:
doc.txt
Popescu Grigore, 14 ani,Subiect · pagina 6
1991212122334; Gigel Banu – 1031102453435, Bujorului 7; Dana Marin: 2690405358687, fara viza, 2450609987654 - Ioana Ion tel: 2444441231234 cnp.txt 1991212122334 1031102453435 2690405358687 2450609987654
Barem · 5 pagini
Barem · pagina 1
Informatică
Barem de evaluare și de notare
Model 5
Se punctează oricare alte modalități de rezolvare corectă a cerințelor.
Nu se acordă punctaje intermediare, altele decât cele precizate explicit prin
barem.
Nu se acordă fracțiuni de punct.
Se acordă 10 puncte din oficiu. Nota finală se calculează prin împărțirea la 10 a
punctajului total acordat pentru lucrare.
SUBIECTUL I (30 puncte)
1. a), b) și c) 4p.
2. a) 12 18 20 4p. Observație. Algoritmul afișează
toate numerele din intervalul [a,b]
care au un număr maxim de
divizori.
b) 12 6p. Observatie valorile posibile pentru
a={1,2,3,4,5,6}; valorile posibile
prntru b={10,11}. Numărul maxim
de divizori este 4.
c) Pentru algoritm pseudocod correct:
-echivalența prelucrării realizate (*)
-corectitudine globală a algoritmului
(1)
6p.
5p.
1p.
(*) Se acordă numai 2p. dacă
algoritmul are o structură repetitivă
principial corectă, dar nu este
echivalent cu cel dat.
Se va puncta orice formă corectă de
structură repetitivă conform
cerinței.
d) Pentru program correct:
-declarare variabile
-citire date
-afisare date
-instrucțiuni repetitive corecte
-instrucțiuni de decizie corecte
-corectitudine globală a programului
(1)
10p.
2p.
1p.
1p.
3p.
2p.
1p.
SUBIECTUL al II-lea (30 puncte)
1. a) și d) 4p.
2. c) 4p.
3. Pentru rezolvare corectă:
-citirea datelor de intrare
-calculul unghiuui sumă, exprimat în
secunde
-determinarea gradelor, minutelor și
secundelor unghiului sumă
-afișarea corectă a rezultatului
6p.
1p.
2p.
2p.
1p.Barem · pagina 2
4. a) Pentru rezolvare corectă: -citirea datelor de intrare -determinarea cifrelor numarului a -verificarea apariției unei cifre din a în numărul b -afișarea cifrelor -scrierea corectă a structurilor de control (*) 10p. 1p. 3p. 3p. 1p. 2p. (*) Se va puncta orice formă corectă de structură repetitivă sau decizională. b) Pentru răspuns correct: -menționarea rolului variabilelor utilizate (*) -date de intrare identificate corect -date de ieșire identificate corect 6p. 4p. 1p. 1p. (*) Se acordă numai 2p. dacă s-au identificat doar o parte dintre variabilele utilizate sau dacă nu pentru toate variabilele este corect menționat rolul acestora SUBIECTUL al III-lea (30 puncte) 1. a) și b) 4p. 2. 4 parcurgeri; pentru fiecare parcurgere se realizează respectiv, 2, 1, 1, 0 interschimbări 6p. 3. Pentru program corect -citire datelor de intrare -tratarea cazului particular n=1 -determinarea parității numarului n -afisarea părții superioare a clepsidrei -afișarea părții inferioare a clepsidrei -declararea tuturor variabilelor, corectitudinea globală a programului (1) 10p. 1p. 1p. 1p. 3p. 3p. 1p. 4. Pentru program corect -citirea fișierului de intrare -testarea numerelor perfecte -generarea rasturnatelor numerelor perfecte -scrierea corectă a fisierului de ieșire -declararea tuturor variabilelor, corectitudinea globală a programului (1) 10p. 1p. 3p. 3p. 2p. 1p. (1) Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.
Barem · pagina 3
Universitatea din Craiova Facultatea de Automatică, Calculatoare și Electronică Departamentul de Calulatoare și Tehnologia Informației Informatică Barem de evaluare și de notare Model 6 Se punctează oricare alte modalități de rezolvare corectă a cerințelor. Nu se acordă punctaje intermediare, altele decât cele precizate explicit prin barem. Nu se acordă fracțiuni de punct. Se acordă 10 puncte din oficiu. Nota finală se calculează prin împărțirea la 10 a punctajului total acordat pentru lucrare. SUBIECTUL I (30 puncte) 1. a) 4p 2. a) 2449977 6p Observație. Algoritmul parcurge numărul citit y de la dreapta la stânga. Numărul m este egal cu valoarea numărului citit invers, reținând numai cifrele de pe poziții impare (prima, a treia, a cincea, …, numărând de la dreapta) până la poziția curentă (inclusiv cifra curentă). x este egal cu restul necitit al numărului y. Se determină ultima cifră parcursă d până când m≥x. Această cifră se adaugă la n. Procesul se repetă până când ultimul număr y procesat a fost 7. b) 2, 0, 1, 7 4p Observatie. Orice alt set de date de intrare se consideră valid, daca generează ieșirea 2017 c) Pentru algoritm pseudocod corect: -echivalența prelucrării realizate (*) -corectitudine globală a algoritmului (1) 6p 5p 1p (*) Se acordă numai 2p dacă algoritmul are o structură repetitivă de tipul indicat, principial corectă, dar nu este echivalent cu cel dat. Se va puncta orice formă corectă de structură repetitivă conform cerinței. d) Pentru program corect: 10p (*) Se acordă numai 2p dacă
Barem · pagina 4
-declarare variabile -citire date -afișare date -instrucțiuni de decizie corecte (*) -instrucțiuni repetitive corectă -corectitudine globală a programului (1) 1p 1p 1p 4p 2p 1p doar una dintre instrucțiuni este corectă. SUBIECTUL II (30 puncte) 1. a) b) d) 6p 2. Pentru rezolvare corectă: -citire date -parcurgere șir de cifre zecimale -realizarea corectă a eliminării celor două cifre -afișare rezultat 10p 2p 2p 4p 2p 3. a) Pentru rezolvare corectă: - condițiile de determinare a unei perechi de numere gemene - bucla de generare a perechilor - corectitudinea generală a algoritmului 10p 4p 4p 2p b) Pentru răspuns corect: -menționarea rolului variabilelor utilizate (*) -date de intrare identificate corect -date de ieșire identificate corect 4p 2p 1p 1p (*) Se acordă numai 1p dacă se omite explicarea unor variabile. SUBIECTUL III (30 puncte) 1. a) (*) citeste nx,X citeste ny,Y ix 1 iy 1 im 0 cat timp ixnx si iyny daca X[ix] < Y[iy] ix ix+1 altfel daca X[ix] > Y[iy] iy iy+1 altfel im im+1 M[im] X[ix] iy iy+1 ix ix+1 3p (*) Se scade 1p pentru omiterea pașilor care nu modifica vectorul b) X = [2, 6, 12, 20, 34, 43, 55, 67] Y = [3, 5, 7, 12, 30, 40, 43, 56, 69]. ix = 1, iy = 1, M = [] ix = 2, iy = 1, M = [] 3p (*) Se scade 1p pentru omiterea pașilor care nu modifica vectorul
Barem · pagina 5
ix = 2, iy = 2, M = [] ix = 2, iy = 3, M = [] ix = 3, iy = 3, M = [] ix = 3, iy = 4, M = [] ix = 4, iy = 5, M = [12] ix = 5, iy = 5, M = [12] ix = 5, iy = 6, M = [12] ix = 6, iy = 6, M = [12] ix = 6, iy = 7, M = [12] ix = 7, iy = 8, M = [12,43] ix = 7, iy = 8, M = [12,43] ix = 8, iy = 8, M = [12,43] ix = 8, iy = 9, M = [12,43] ix = 8, iy = 10, M = [12,43] (*) 2. Pentru răspuns corect: -inițializarea dinaintea buclei while -determinarea cifrelor lui n -realizarea testului buclei while -realizarea testului instrucțiunii if 4p 1p 1p 1p 1p 3. Pentru program corect: -citirea date de intrare -realizarea testului de egalitate -afișare rezultat -declararea tuturor variabilelor 10p 2p 5p 1p 2p 4. Pentru program corect: -citirea datelor de intrare -izolarea fiecărui CNP potențial -verificarea primului caracter din CNP -verificarea caracterelor patru și cinci din CNP - verificarea caracterelor șase și șapte din CNP -afișarea rezultatului 10p 1p 3p 1p 2p 2p 1p
Alte subiecte de la aceeași facultate
Răspunsuri directe
Ce trebuie să știi despre acest subiect?
Ce document de admitere este acesta?
Pagina prezintă model de pregătire din 2016 pentru Informatică, la Facultatea de Automatică, Calculatoare și Electronică. 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.
Există și barem sau răspunsuri pentru acest subiect?
Da. Pagina include baremul sau răspunsurile publice asociate acestui subiect, afișate separat ori în același document atunci când sursa le publică împreună. Verifică fiecare rezolvare după ce ai terminat varianta și urmărește exact criteriile de punctare indicate de instituție.
Cum folosesc acest subiect în pregătirea pentru admitere?
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.