Documente Academic
Documente Profesional
Documente Cultură
Seminar 2
Temă de laborator
Să se implementeze ı̂n un limbaj de programare la alegere (preferabil C++) pro-
gramele următoare:
1. estePermutare(int n, int* p) care ia ca argumente de intrare un ı̂ntreg
pozitiv n şi un (pointer la un) tablou de n numere ı̂ntregi şi afişează
mesajul
Se presupune implicit că hp[0], p[1], . . . , p[n − 1]i este o permutare a nu-
merelor 1,2,. . . ,n.
5. permutareUrmatoare(int n, int* p) care ia ca argumente de intrare
un ı̂ntreg pozitiv n şi un (pointer la) un tablou de n numere ı̂ntregi, şi
afişează permutarea următoare a permutării
Se presupune implicit că hp[0], p[1], . . . , p[n − 1]i este o permutare a nu-
merelor 1,2,. . . ,n.
6. permutareCuRang(int n,int k) care afişează permutarea lui {1, 2, . . . , n}
cu rangul k.
7. (Opţional) permutarePrecedenta(int n, int* p) care ia ca argumente
de intrare un ı̂ntreg pozitiv n şi un (pointer la) un tablou de n numere
ı̂ntregi, şi afişează permutarea următoare a permutării
Se presupune implicit că hp[0], p[1], . . . , p[n − 1]i este o permutare a nu-
merelor 1,2,. . . ,n.
Pentru implementarea acestor teme, puteti edita fisierul Permute.cpp care poate
fi descărcat de pe site-ul cursului, ı̂n care trebuiesc completate stub-urile funcţiilor
care lipsesc.
Temă de casă
(1) Într-un sertar sunt 50 de perechi de ciorapi. Fiecare pereche sunt albi sau
negri, lungi sau scurţi, găuriţi sau nu. 22 perechi sunt albi, 4 din ele sunt
găuriţi, iar una din cele 4 sunt lungi. Zece perechi albe sunt lungi, 10
perechi negre sunt lungi, iar 5 perechi lungi sunt găuriţi. Exact 3 perechi
de ciorapi scurţi sunt găuriţi.
• Folosiţi principiul incluziunii şi excluziunii pentru a determina numărul
de perechi de ciorapi negri, scurţi şi negăuriţi.
• Desenaţi o diagramă Venn care să indice numărul de perechi de cio-
rapi cu fiecare combinaţie de caracteristici.
(2) Câte numere ı̂ntregi ı̂ntre 50 şi 150 inclusiv
(a) se divid cu 3?
(b) se divid cu 7?
(c) se divid cu 7 dar nu se divid cu 3?
(d) se divid cu 7 sau cu 3?
(e) nu se divid nici cu 7 nici cu 3?
(3) Câte numere ı̂ntregi de la 1 la 999 inclusiv
(a) se divid cu 7?
(b) se divid cu 7 şi nu se divid cu 11?
(c) se divid cu 7 şi 11?
(d) se divid cu 7 sau cu 11?
(e) Se divid cu doar unul din cifrele 7 sau 11?
(f) Au cifre distincte?
(g) Sunt pare şi au cifre distincte?
(4) Câte numere prime mai mici decât 168 există?