5032124666

5032124666



23


1.2. ABSTRAKCYJNE TYPY DANYCH

Podsumowanie

Na rysunku 1.4 przedstawiamy schemat procesu tworzenia programu, zgodnie z ujęciem w niniejszej książce. Proces ten rozpoczyna się etapem modelowania, na którym wybrany zostaje odpowiedni model matematyczny dla danego problemu (np. graf). Na tym etapie opis algorytmu ma zazwyczaj postać wybitnie nieformalną.

model

matematyczny

abstrakcyjne typy danych

struktury

danych

algorytm w postaci nieformalnej

program w pseudojęzyku

program w języku Pascal

RYSUNEK 1.4. Proces rozwiązywania problemu za pomocą komputera

Kolejnym krokiem jest zapisanie algorytmu w pseudojęzyku stanowiącym mieszankę instrukcji Pascalowych i nieformalnych opisów wyrażonych w języku naturalnym. Realizacja tego etapu polega na stopniowym precyzowaniu ogólnych, nieformalnych opisów do bardziej szczegółowej postaci. Niektóre fragmenty zapisu algorytmu mogą mieć już wystarczająco szczegółową postać do tego, by można było wyrazić je w kategoriach konkretnych operacji wykonywanych na konkretnych danych, w związku z czym nie muszą być już bardziej precyzowane. Po odpowiednim sprecyzowaniu instrukcji algorytmu, definiujemy abstrakcyjne typy danych dla wszystkich struktur używanych przez algorytm (z wyjątkiem być może struktur skrajnie elementarnych, jak: liczby całkowite, liczby rzeczywiste czy łańcuchy znaków). Z każdym abstrakcyjnym typem danych wiążemy zestaw odpowiednio nazwanych procedur, z których każda wykonuje konkretną operację na danych tego typu. Każda nieformalnie zapisana operacja zostaje następnie zastąpiona wywołaniem odpowiedniej procedury.

W trzecim kroku wybieramy odpowiednią implementację dla każdego typu danych, w szczególności dla związanych z tym typem procedur wykonujących konkretne operacje. Zastępujemy także istniejące jeszcze nieformalne zapisy „prawdziwymi” instrukcjami języka Pascal. W efekcie otrzymujemy program, który można skompilować i uruchomić. Po cyklu testowania i usuwania błędów (mamy nadzieję — krótkiego) otrzymamy poprawny program dostarczający upragnione rozwiązanie.

1.2. Abstrakcyjne typy danych

Większość omawianych dotychczas zagadnień powinna być znana nawet początkującym programistom. Jedynym istotnym novum mogą być abstrakcyjne typy danych, celowe więc będzie uświadomienie sobie ich roli w szeroko rozumianym procesie projektowania programów. W tym celu posłużymy się analogią— dokonamy mianowicie wyszczególnienia wspólnych cech abstrakcyjnych typów danych i procedur pascalowych.

Procedury, jako podstawowe narzędzie każdego języka algorytmicznego, stanowią tak naprawdę uogólnienie operatorów. Uwalniają one od kłopotliwego ograniczenia do podstawowych operacji (w rodzaju dodawania czy mnożenia liczb), pozwalając na dokonywanie operacji bardziej zaawansowanych, jak np. mnożenie macierzy.

Inną użyteczną cechą procedur jest enkapsulacja niektórych fragmentów kodu. Określony fragment programu, związany ściśle z pewnym aspektem funkcjonalnym programu, zamykany jest w ramach ściśle zlokalizowanej sekcji. Jako przykład posłuży procedura dokonująca wczytywania i weryfikacji danych. Jeżeli w pewnym momencie okaże się, że program powinien (powiedzmy)



Wyszukiwarka

Podobne podstrony:
11 Egzamin maturalny z biologii Poziom rozszerzonyZadanie 23. (1 pkt) Na rysunku przedstawiono schem
Image618 Na rysunku 5.3 przedstawiono schemat logiczny próbnika rejestrującego: —    
Image619 Na rysunku 5.5 przedstawiono schemat blokowy nowego typu próbnika, opracowanego również w f
11 Wprowadzenie jów wejść do systemu. Na rysunku 3 przedstawiono schematyczny sposób zarządzania
Egzamin maturalny z biologii Poziom rozszerzony Zadanie 17. (1 pkt) Na rysunku przedstawiono schemat
IMAG0092 (6) 1 .Na rysunku przedstawiono schemat układu elektrycznego, Vrą6 o jakim natężeniu / płyn
IMAG0093 (5) 2.Na rysunku przedstawiono schemat układu elek moc wydzieli się na rezystorze R ?
Na rysunku 7 przedstawiono schemat wyznaczania obszarów dopuszczalnych parametrów pracy ziaren dla t
Przykładowy arkusz maturalny dla poziomu rozszerzonego £ Zadanie 8. (1 pkt) Na rysunku przedstawiono
ciecie blach2 2 Cięcie nożycami równoległymi Na rysunku 2 przedstawiono schematycznie przebieg cięci
Obraz6 Fizjologia roślin 19. 2f*t Na rysunku przedstawiono schematycznie chromosom z zaznaczonymi l
PALNIK BUNSENA Na rysunku 1 przedstawiono schematycznie budowę i zasadę działania palnika Bunsena z
Na rysunku przedstawiono schematycznie rozważany problem zadania transportowo -produkcyjnego (ZPT) d

więcej podobnych podstron