ALG9
5.B. Zbiory 159
5.8. Zbiory
Implementacja programowa zbiorów matematycznych napotyka na szereg ograniczeń związanych z używanym językiem programowania. Miłośnicy Pascala znają zapewne definicje zbliżone do:
typa Litery *• 'A' .. 'Z';
Zbiór Li ter = set of T.itery; vax Alfabet:ZbiorLi ter;
c: char; begin
Alfabet:^[ 'A'..'Z'1; read (c) :
if c i-n Alfabet then (itd. / end.
Oczywiście, to co dla programisty pascalowego jest zbiorem, wcale nim nie jest dla matematyka, z uwagi na wymóg jednakowego typu zapamiętywanych elementów.
Niemniej, dla podstawowych zastosowań, konwencje istniejące w Pascalu nadają się znakomicie, gdyż możliwe jest np. wykonywanie operacji typu: dodawanie elementu do zbioru, mnożenie (iloczyn) zbiorów, odejmowanie zbiorów', testowanie przynależności do zbiorów...
W tej książce do opisu algorytmów' i prezentacji struktur danych używamy języka C++, który na ogół spełnia swoje zadanie dość dobrze. Niestety, nie posiada on ..wbudowanej” obsługi zbiorów i w związku z tym należy ją dołożyć w sposób jawny, używając przy okazji różnorodnych technik, zależnych od aktualnie realizowanych zadań.
Weźmy dla przykładu implementację zbioru znaków, która nie wymaga użycia struktur listowych i dynamicznego przydzielania pamięci. Załóżmy, że w komputerze występuje ,.tylko’’ 256 znaków (między innymi znaki alfabetu duże i małe, cyfry oraz tzw. znaki kontrolne niedrukowalne). Do „zasymulowania” zbioru wystarczy wówczas najzwyklejsza tablica typu unsigned char, tak jak w przykładzie poniżej:
sct.cpp
class Zfcicr (
unsigned char zbiór[256]; // cała tablica ASCII
public:
Zbiór!) // konstruktor, „zeruje" zbiór {
for(int i—0;i<256;i++) zbiórli J =U;
)
Wyszukiwarka
Podobne podstrony:
2 Zbiory i rodziny zbiorow Zbiór, którego elmentami są, zbiory, nazywamy rodzinę, zbiorów. Rodzina AZbiory liczbowe, rodzaje zbiorów liczbowych, relacje między zbiorami. Własności zbiorówALG1 5.8. Zbiory 161 sl=sł- C ; cout « "Zbiór SI - C = "; sl .pisz () ; cout << &ALG9 3.7. Analiza programów rekurencyjnych 69 W tym paragrafie przedstawiona zostanie metoda mającaEfektywna administracja - pomysł holenderski Compact central government implementation program jakoTemat projektu/pracy dyplomowej inżynierskiej Projekt i implementacja programu umożliwiającegoL3. Projektowanie i implementacja programów z zastosowaniem instrukcji warunkowej IF. L4. ProjektowaD 1 Utwórz zbiory, otaczając pętlami owoce, które rod) na tym vimym drzewie. Nazwij tr drzewa. i 01D 1 Utwórz zbiory, otaczając pętlami owoce, które rod) na tym vimym drzewie. Nazwij tr drzewa. i 01Implementacje programu Program w postaci opracowanej dla AutoCAD Architecture stanowi aktualizacjęZestaw uzupełniający 2a i 3a Najpopularniejsze zbiory zadań: W. Stankiewicz, Zadania z matematyki dlZestaw uzupełniający 2a i 3a Najpopularniejsze zbiory zadań: W. Stankiewicz, Zadania z matematyki dlPrzeliczanieD 1 Utwórz zbiory, otaczając pętlami owoce, które rosły na tym samym drzewie. Nazwij teScan9 Porównywanie projektu zapisanego w sterowniku i programatorze Kurs Podstawowy S7 Aby porównaćDziałania na zbiorach Przeliczanie Utwórz zbiory, otaczając pętlami owoce, które rosły na tym samadm9 UZBROJENIE I TAPISERIE Katalog wystawy ze zbiorów Państwowego ErmitażuANSI C 9 6 STRUKTURY 6 STRUKTURYTablice struktur Napiszmy program zliczający wystąpienia każdego swięcej podobnych podstron