Fişierul intrare/ieşire:lab-10-02.in, lab-10-02.outSursăad-hoc
AutorAdăugată demihneadbMihnea Dobrescu-Balaur mihneadb
Timp execuţie pe test1 secLimită de memorie16384 kbytes

Vezi solutiile trimise

Problema 2

A

Fie tipul struct mulţime ce poate reprezenta mulţimi cu numere în intervalul [0..7] astfel: bitul i din a este 1 dacă numărul face parte din mulţime şi 0 altfel. Considerăm biţii numerotaţi de la dreapta spre stânga.

De exemplu, dacă a = 99 = (01100011) în baza 2, atunci mulţimea va fi {0, 1, 5, 6}.

Să se scrie următoarele funcţii (pt 0 <= x <= 7):

Să se scrie un program ce testează funcţiile definite mai sus.

B

Să se modifice structura şi funcţiile definite anterior pentru a putea reprezenta mulţimi de numere întregi, din intervalul [0, n], n întreg.

Se va folosi un vector de unsigned char, fiecare reprezentând câte 8 numere din mulţime: v0 - [0..7], v1 - [8..15] etc. Va trebui să modificaţi struct multime astfel încât să se poată aloca dinamic memorie pentru vector, de exemplu:

Cerinţă

Se dă o serie de operaţii. Scrieţi un program care acţionează conform acestora.

Variante

  • A nr - adaugă numărul nr în mulţime
  • D nr - elimină numărul nr din mulţime
  • C nr - contains( nr ) - dacă nr se află în mulţime, afişaţi DA, altfel NU
  • P  - afişează elementele mulţimii separate prin spaţiu

Date de intrare

O secvenţă de instrucţiuni ca mai sus, câte una pe linie

Date de ieşire

Outputul cerut de secvenţă

Exemplu

lab-10-01.inlab-10-01.out
A 5
A 8
P
C 5
D 5
C 5
P
5 8
DA
NU
8
Trebuie sa te autentifici pentru a trimite solutii. Click aici

Cum se trimit solutii?