varianta2_2013.doc
TRANSCRIPT
EXAMEN DE CERTIFICARE A CALIFICĂRII PROFESIONALE A ABSOLVENŢILOR ÎNVĂŢĂMÂNTULUI POSTLICEAL 2013
PROBA SCRISĂVarianta II
Domeniul: InformaticăCalificarea profesională: Analist programatorSesiunea: ianuarie - februarie 2013
Toate subiectele sunt obligatorii. Se acordă 10 puncte din oficiu. Timpul efectiv de lucru este de 3 ore.
Subiectul I. Scrieţi litera corespunzătoare răspunsului corect.
1. Variabila intreagă n memorează un numar natural impar .Care dintre următoarele expresii C/C++ are valoarea 1 ? (4p.) a. !(n2) b. n2 0
c. n2! 0d. !((n+1)2 0)
2. Care este instrucţiunea prin care variabilei x i se atribuie valoarea sumei cifrelor numărului natural format din exact trei cifre memorat de variabila y? (4p.) a. x = y/100 + y/1010 + y10 c. x = y10 + y10/10 + y/100 b. x = y + y/10 + y/100 d. x = y10 + y100 + y1000
3. În expresia C/C++ alăturată variabila x este de tip întreg . Aceasta expresie: (4p.)
x2+(x+1)2
a. are valoarea 1 pentru orice număr natural x b. are valoarea 1 dacă şi numai dacă x este un număr parc. are valoarea 1 dacă şi numai dacă x este un număr impard. are o valoare strict mai mare decât 1 pentru orice număr natural x
4. Variabilele x şi y sunt de tip întreg, x memorând valoarea 4 iar y valoarea 2 . Care dintre expresiile C/C++ de mai jos are valoarea 0? (4p.) a. x-y ! 0 c. x-2*y 0 b. x+y x%y +1 d. !(x 2*y)
Subiectul II. Scrieţi pe foaia de examen răspunsul pentru fiecare dintre cerinţele următoare.
Se conșideră algoritmul alăturat descris în pseudocod:S-a notat cu x%y restul împărţirii numărului natural x la numărul natural nenul y şi cu [z] partea întreagă a numărului real z.a) Scrieţi valoarea pe care o va afișa algoritmul dacă se citesc în această ordine, numerele 30 și 25. (4p.)b) Dacă se citeşte pentru variabila y valoarea 26 , scrieţi toate numerele naturale de cel mult două cifre care pot fi citite pentru variabila x , astfel incât la finalul executării algoritmului să se afişeze valoarea 13. (6p.)c) Scrieți programul C/C++ corespunzător algoritmului (10p)d) Scrieţi în pseudocod un algoritm care să fie echivalent cu cel dat în care structura cât timp…execută să fie inlocuită cu o structura repetitivă cu test final. (6p.)
citește x,y (numere naturale)┌cât timp x*y ! = 0 execută│ ┌dacă x>y atunci│ │ x←xy│ │altfel │ │ y←yx│ └■└■scrie x+y
Subiectul III. Scrieţi pe foaia de examen răspunsul pentru fiecare dintre cerinţele următoare.
1. În declararea alăturată, câmpurile x şi y ale înregistrării reprezintă numărătorul , respectiv numitorul unei fracţii de
forma . Scrieţi instrucţiunile prin executarea cărora se memorează în variabila H fracţia obtinută prin adunarea
fracţiilor reţinute în F şi G. (4p.)
struct fractie int x,y ; F,G,H ;
2. Ştiind că variabila i este de tip întreg şi că variabila s reţine şirul de caractere barba, ce se va afişa la executarea secvenţei urmatoare ? (4p.)
for( i=0; i<strlen(s) ; i++)if (si == ‘ b ‘ )
si = ‘ t ‘ ;cout<<s;
3. Scrieţi definiţia completă a subprogramului multiplu care are 3 parametri: a, prin care primeşte un tablou unidimensional cu maximum 100 de numere naturale mai mici decât 1000, n, numarul de elemente ale tabloului şi k un numar natural (k≤9). Subprogramul returnează numărul de elemente din tablou care sunt multiplii ai numărului k şi au ultima cifră egală cu k. (10p.)Exemplu: Dacă n=6, a=( 2, 273, 63, 83, 93, 123 ), iar k=3, subprogramul va returna valoarea 4.
4. Subprogramul f are definiţia alăturată. Ce valoare are f(7) ? (6p.)
int f ( int x ) if (x%6 = = 0) return x; else return f (x-1) ;
5. Utilizând metoda backtracking se generează în ordine lexicografică cuvintele de câte patru litere din mulţimea A={a,b,c,d,e}, cuvinte care nu conţin două vocale alăturate. Primele opt cuvinte generate sunt, înordine: abab, abac, abad, abba, abbb, abbc, abbd, abbe. Care este penultimul cuvânt generat? (4p.)a. edec b. eded c. edde d. edcb
Subiectul IV Scrieţi pe foaia de examen răspunsul pentru fiecare dintre cerinţele următoare.
1. Fişierul NR.TXT conţine pe o singură linie, separate prin cate un singur spaţiu, cel mult 100 de numere întregi, fiecare număr având cel mult 4 cifre. Scrieţi un program în CC++ care citeşte numerele din fişierul NR.TXT şi afişează pe ecran, separate prin câte un spaţiu ,în ordine descrescătoare, toate numerele din fişier care au cel mult 2 cifre . Dacă fişierul nu conţine astfel de numere se va afişa pe ecran mesajul NU EXISTĂ. (10p.)
2. Scrieţi un program Pascal care citeşte de la tastatură două numere naturale n şi m (2≤m≤10, 2≤n≤10) şi care construieşte în memorie şi apoi afişează o matrice A cu n linii (numerotate de la 1 la n) şi m coloane (numerotate de la 1 la m) cu proprietatea că fiecare element Aij memorează cea mai mare dintre valorile indicilor i şi j (1≤i≤n, 1≤j≤m). Matricea se va afişa pe ecran, câte o linie a matricei pe câte o linie a ecranului, elementele fiecărei linii fiind separate prin câte un spaţiu. (10p.)Exemplu: pentru n=4 şi m=5 se va afişa matricea alăturată.1 2 3 4 52 2 3 4 53 3 3 4 54 4 4 4 5