C .pdf

File information


Original filename: C.pdf
Title: Microsoft Word - C-zbiory-new
Author: user

This PDF 1.7 document has been generated by / Microsoft: Print To PDF, and has been sent on pdf-archive.com on 21/11/2016 at 16:31, from IP address 89.68.x.x. The current document download page has been viewed 334 times.
File size: 333 KB (3 pages).
Privacy: public file


Download original PDF file


C.pdf (PDF, 333 KB)


Share on social networks



Link to this file download page



Document preview


Zadanie C - Zbiory
Punktów do uzyskania: 8
Język programowania: C++
autor zadania: Marek Śmieja

Zadaniem jest zaimplementowanie wybranych funkcjonalności biblioteki dla zbiorów.

Zakładamy, że uniwersum, czyli przestrzeń elementów, składa się liczb naturalnych od 1 do
4095. Zbiór n-elementowy będzie realizowany za pomocą tablicy, w której na pierwszych n
pozycjach będą umieszczone jego elementy (wybrane elementy z uniwersum), a na pozycji
(n+1) będzie znajdował się znak kończący, czyli -1. Z definicji, zbiór nie zawiera duplikatów,
a elementy w tablicy nie muszą być posortowane.
Do zaimplementowania są następujące podprogramy:

1. utworz przyjmująca odniesienia do dwóch tablic o elementach typu int i nazwach a, b
oraz liczbę n będącą długością tablicy a, niezwracająca wartości, która utworzy zbiór
składający się elementów wchodzących w skład tablicy a i zapisze go do tablicy b.
Tablica a może zawierać jakiekolwiek liczby całkowite (nie reprezentuje zbioru), a
wynikowa tablica musi spełniać warunki zbioru z zadania.
2. suma przyjmująca adresy trzech tablic o elementach typu int i nazwach a, b, c
opisujących zbiory, niezwracającą wartości, która wypełni tablicę c sumą zbiorów a i
b.
3. iloczyn przyjmująca odniesienia do trzech tablic o elementach typu int i nazwach a, b,
c opisujących zbiory, niezwracającą wartości, która wypełni tablicę c przecięciem
zbiorów a i b.
4. roznica przyjmująca odniesienia do trzech tablic o elementach typu int i nazwach a,
b, c opisujących zbiory, niezwracającą wartości, która wypełni tablicę c różnicą
zbiorów a i b.
5. roznica_sym przyjmująca odniesienia do trzech tablic o elementach typu int i
nazwach a, b opisujących zbiory, c, niezwracającą wartości, która wypełni tablicę c
różnicą symetryczną zbiorów a i b.
6. dopełnienie przyjmująca odniesienia do dwóch tablic o elementach typu int i
nazwach a, b opisujących zbiory, niezwracającą wartości, która wypełni tablicę b
dopełnieniem zbioru a.
7. dodanie przyjmującą odniesienia do tablicy o elementach typu int i nazwie a
opisującej zbiór oraz argument b typu int, niezwracająca wartości, która doda element
b do zbioru a.
8. czy_podzbior przyjmująca odniesienia do dwóch tablic o elementach typu int i
nazwach a, b opisujących zbiory, która zwróci wartość true jeśli a jest podzbiorem b.
9. czy_rowne przyjmująca odniesienia do dwóch tablic o elementach typu int i nazwach
a, b opisujących zbiory, która zwróci wartość true jeśli a jest równe b.
10. czy_pusty przyjmująca odniesienie do tablicy o elementach typu int i nazwie a
opisującej zbiór, która zwróci wartość true jeśli a jest zbiorem pustym

11. czy_niepusty przyjmująca odniesienie do tablicy o elementach typu int i nazwie a
opisującej zbiór, która zwróci wartość true jeśli a jest zbiorem niepustym
12. czy_nalezy przyjmująca odniesienie do tablicy o elementach typu int i nazwie a
opisującej zbiór oraz element b typu int, która zwróci wartość true jeśli b jest
elementem a
13. srednia_arytmetyczna przyjmująca odniesienie do tablicy o elementach typu int i
nazwie a opisującej niepusty zbiór, a zwracająca wartość double będącą średnią
arytmetyczną elementów wchodzących w skład zbioru a
14. srednia_harmoniczna przyjmująca odniesienie do tablicy o elementach typu int i
nazwie a opisującej niepusty zbiór, a zwracająca wartość double będącą średnią
harmoniczną elementów wchodzących w skład zbioru a
15. min_max przyjmująca odniesienie do tablicy o elementach typu int i nazwie a
opisującej niepusty zbiór oraz referencje do dwóch liczb całkowitych b i c, do których
zostanie zapisana wartość elementu najmniejszego i największego zbioru a,
odpowiednio.
16. statystyki przyjmująca odniesienie do tablicy o elementach typu int i nazwie a
opisującej zbiór, tablicę znakową o nazwie b, przechowującą kody operacji, tablicę
typu double o nazwie c, w której zapiszemy wynik oraz liczbę całkowitą n, będącą
długością tablicy b, niezwracająca wartości. Kody operacji to ‘a’ – średnia
arytmetyczna, ‘h’ – średnia harmoniczna, ‘e’ – minimum i maksimum. W wyniku
wywołania podprogramu kolejne elementy tablicy c powinny zostać wypełnione
wartościami będącymi wynikami wywołania kolejnych operacji zdefiniowanych w
tablicy b.

Powyższe operacje nie mogą modyfikować danych ponad te, które są ściśle wyspecyfikowane
w opisie podprogramów. Dla przykładu, jeśli suma zbiorów daje zbiór n elementowy, to
można zmodyfikować tylko (n+1) pierwszych wyrazów tablicy wynikowej.
Całość implementacji ma znaleźć się w pliku kod.cpp. Archiwum zip zawierające wyłącznie
ten plik ma zostać wysłana do systemu Baca. W szczególności, w pliku kod.cpp nie ma być
funkcji main.
Dla przykładowego maina:

//tworzenie
int a[] = {4,1,3,1,5000};
int b[10];
utworz(a,b,5);
//suma
int c[] = {2,1,-1};
int d[10];
suma(b,c,d);
for(int i = 0; i < 5; ++i){
cout << d[i] << " ";
}

cout << endl;
//min_max
int x,y;
min_max(b,x,y);
cout << x << " " << y << endl;
//operacje logiczne
cout << czy_pusty(b) << " " << czy_niepusty(b) << " " << czy_nalezy(b,5) << endl;
poprawnym wynikiem jest:
4 1 3 2 -1
14
010


Document preview C.pdf - page 1/3

Document preview C.pdf - page 2/3
Document preview C.pdf - page 3/3

Related documents


c
asd2017 ps0102 zlozonosc
wyklad cz 2
wst p do logiki i teorii mnogo ci
specyfikacjakompilatora
projekt kompilatora

Link to this page


Permanent link

Use the permanent link to the download page to share your document on Facebook, Twitter, LinkedIn, or directly with a contact by e-Mail, Messenger, Whatsapp, Line..

Short link

Use the short link to share your document on Twitter or by text message (SMS)

HTML Code

Copy the following HTML code to share your document on a Website or Blog

QR Code

QR Code link to PDF file C.pdf