You are on page 1of 6

Metodyka i technika programowania dr in.

Sylwester Gawor Wykad Zakres przedmiotu:


Dane i ich komputerowe reprezentacje. Algorytmy i sposoby ich przedstawiania. Podstawowe konstrukcje jzykw algorytmicznych. Rekurencja i typy programw rekurencyjnych. Analiza sprawnoci algorytmw. Programowanie strukturalne i obiektowe. Algorytmy sortowania i przeszukiwania danych. Dynamiczne struktury danych listy, tablicowe implementacje list, stos, kolejki, sterty i kolejki priorytetowe, drzewa i ich reprezentacje. Zastosowanie techniki programowania typu dziel-i-rzd. Programowanie

interakcji z uytkownikiem. Literatura 1. Bogdan Buczek Algorytmy, Wyd. Helion 2009 2. L. Buczek, K. Diks, W. Rytter, Algorytmy i struktury danych, Wydawnictwa Naukowo Techniczne 2006. 3. P. Wrblewski - Algorytmy, struktury danych i techniki programowania. Wydanie III, Wyd. Helion, Gliwice 2003. 4. Harris S. - Algorytmy. Od podstaw, Wyd. Helion 2006. 5. T. Sadowski - Praktyczny kurs Turbo Pascala 2003. 6. www.algorytmy.org

Metodyka to ustandaryzowane dla wybranego obszaru podejcie do rozwizywania problemw. Metodyka abstrahuje od merytorycznego kontekstu danego obszaru, a skupia si na metodach realizacji zada. W odrnieniu od metodologii, ktra si skupia na odpowiedzi na pytanie: Co naley robi?, metodyka koncentruje si na poszukiwaniu odpowiedzi na pytanie: Jak to naley robi? Generalnie metodyka bardziej ciy ku praktyce wykonawczej, a metodologia ku teorii zazwyczaj sprawnego dziaania. Algorytmika, podstawowy dzia informatyki powicony poszukiwaniom, konstruowaniu i badaniom algorytmw, zwaszcza w kontekcie ich przydatnoci do rozwizywania problemw za pomoc komputerw. Algorytm, dokadny przepis podajcy sposb rozwizania okrelonego zadania w skoczonej liczbie krokw; zbir polece odnoszcych si do pewnych obiektw, ze wskazaniem porzdku, w jakim maj by realizowane. W informatyce opisuje logiczny cig operacji, ktre ma wykona program. Koszt czasowy algorytmu mwi nam, ile operacji musi wykona dany algorytm. Koszt pamiciowy - ile komrek pamici potrzebuje dany algorytm. Moe to by zmienna ilo komrek. Poprawno algorytmu polega na tym, e nie ma w nim bdw skadniowych ani logicznych, a w zwizku z tym jest on skoczony (musi si zatrzyma) oraz daje poprawny wynik. Algorytm zapisany przy pomocy jzyka programowania jest programem. Jzyk programowania, zbir zasad skadni, instrukcji, dziki ktrym powstaje kod rdowy programu. Procesor jest w stanie wykonywa program w kodzie maszynowym . Jednake tworzenie programw w tym jzyku jest praktycznie niemoliwe. Dlatego programista uywa jzyka zrozumiaego dla czowieka, ktry nastpnie jest kompilowany bd interpretowany do postaci maszynowej. Program komputerowy, cig instrukcji do wykonania dla komputera. Mona te powiedzie, e program to algorytm zapisany w jzyku programowania. Program moe wystpowa w dwch postaciach: jako program wykonywalny (czyli zapisany w jzyku maszynowym) albo jako kod rdowy, czyli posta zrozumiaa dla programisty. Translator, programy tumaczce kod rdowy programu na jzyki maszynowe: interpreter - kade polecenie jest na bieco zamieniane na kod maszynowy i

wykonywany, atwa praca interakcyjna. kompilator - cay program przekadany jest na kod maszynowy, dua szybko wykonywania programu. Typy danych w jzyku Turbo Pascal Nazwa typu Byte Word Integer Shortint Longint Real Single Double Extended Comp Char Boolean Typy proste Zajmowana Przykady pami 1B 1, 34 2B 34000 -359, 23900 -12, 56 -23434909 +,-,*,div, mod

Zakres

Moliwe operacje

0..255 0.. 65535 -32768 .. 2B 32767 -128 .. 127 1B 2147483648 ..21 4B 47483647 2.9 * 10-39 .. 1.7 * 1038 6B (11-12cyfr) 1.5 * 10-45 .. 3.4 * 1038 4B (7-8cyfr) 5.0 * 10-324 .. 1.7 * 10308 8B (15-16cyfr) 3.4 * 10-4932 .. 1.1 * 104932 10B (19-20cyfr) -263+1..263-1 8B (19-20cyfr) 1 znak 1B True, False 1B

1, 2.4, 1.3E2=1.3*102=130 0.8E-4=0.8*10-4= =0.00008

+,-,*,/

1, -4 1.3E2=1.3*102=130 '1','A','a','/','?' Ord And,or,not,xor

Typy danych w jzyku Turbo Pascal: Typy proste Typy porzdkowe Typ wyliczeniowy Typy cakowite Typy logiczne Typ znakowy Typy okrojone Typy rzeczywiste Typy acuchowe Typy strukturalne Typy tablicowe Typ rekordowy Typ zbiorowy Typ plikowy

Typy wskanikowe Typy proceduralne Typ obiektowy Typy proste s podstawowymi typami jzyka Turbo Pascal i za ich pomoc okrela si bardziej zoone struktury danych. Kady z typw prostych skada si z uporzdkowanego zbioru wartoci. Dziki temu na wartociach tych typw moemy m.in. wykonywa operacje porwna. Typy proste dzielimy na typy porzdkowe i typy rzeczywiste. Typami porzdkowymi nazywamy wszystkie typy proste z wyjtkiem typw rzeczywistych. Wyrnienie to jest spowodowane faktem, e typy rzeczywiste czsto nie mog wystpowa w kontekcie dozwolonym dla innych typw prostych. Dla wartoci kadego typu porzdkowego s okrelone wartoci poprzednie i nastpne (z wyjtkiem wartoci kracowych). Do typw porzdkowych zaliczamy: typ wyliczeniowy, typy cakowite, logiczne, typ znakowy i typy okrojone. Typ wyliczeniowy stosuje si zwykle dla zbiorw o niewielkiej liczbie elementw, na ktrych nie wykonuje si operacji arytmetycznych. Przykadowa definicja typu wyliczeniowego wyglda nastpujco: TYPE PoraRokuT = (wiosna, lato, jesien, zima); {wiosna ma nr 0, lato 1 itd.} var pr: porarokut; {deklaracja zmiennej pr typu PoraRokuT} Typy cakowite s podzbiorami zbioru liczb cakowitych. Wrd typw cakowitych wyrniamy: ShortInt, przedzia od -128 do 127 Byte, przedzia od 0 do 255 Integer, przedzia od -32768 do 32767 Word, przedzia od 0 do 65535 LongInt, przedzia od -2147483648 do 2147483647 Przykad: var i:integer; Standardowymi typami logicznymi s typy Boolean, ByteBool, WordBool i LongBool. Wartoci typw logicznych s oznaczone za pomoc dwu predefiniowanych literaw (staych): True i False, oznaczajcych odpowiednio wartoci logiczne fasz i prawda, przy czym w sensie uporzdkowania staa False poprzedza sta True. Przykad: var test:boolean; Do oznaczenia typu znakowego suy predefiniowany identyfikator Char. Elementami typu znakowego s znaki ASCII, z ktrych kady jest pamitany w jednym bajcie pamici. Przykad: var znak:char; Typy okrojone su do ograniczania zakresw wartoci dowolnego z dotychczas

opisanych typw porzdkowych. Przykad: TYPE miesiact=1..12; var mies:miesiact; Do typw prostych nale take standardowe typy rzeczywiste, ktre jednak nie s typami porzdkowymi. Kady z dostpnych typw rzeczywistych jest dyskretnym i skoczonym podzbiorem zbioru liczb rzeczywistych. Dostpnych jest pi standardowych typw rzeczywistych o nastpujcych predefiniowanych identyfikatorach: Real, elementy zajmuj po 6 bajtw pamici Single, typ o pojedynczej dugoci (4 bajty pamici) Double, typ o podwjnej dugoci (8 bajtw pamici) Extended, typ o rozszerzonej dugoci (10 bajtw pamici) Comp, elementy to liczby cakowite z przedziau od -263+1 do 263-1 Typy acuchowe su do reprezentowania cigu znakw, w tym niewidocznego znaku spacji. Elementami typu acuchowego s acuchy o dugoci od 0 do dugoci podanej w definicji typu acuchowego (max 255). Przykad: var imie:string[25];

Typy stukturalne stosuje si do opisu obiektw zoonych. Kady z typw strukturalnych definiowany jest przez podanie typw skadowych i metody strukturalizacji, ktra zarazem okrela sposb dostpu do elementw skadowych. Typ tablicowy, a konkretnie tablica skada si z ustalonej liczby elementw tego samego typu, zwanego typem skadowym, ktry moe by zarwno typem prostym lub acuchowym, jak i typem strukturalnym. Za pomoc tablic s reprezentowane regularne ukady danych, np. wektory i macierze. Dostp do poszczeglnych elementw tablic uzyskuje si za pomoc indeksowania. Dopuszczalny zakres indeksw jest podany w definicji typu tablicowego. Przykad: var Macierz : array[1..20,1..30] of Real; Typem rekordowym, (rekordem) nazywamy zoon struktur danych, ktrej skadowe, zwane polami mog by rnego typu. Poszczeglne pola mog by same strukturami zoonymi, przy czym liczba pl rekordu jest ustalona. Definicja typu rekordowego okrela typ i identyfikator dla kadego pola. Definicja ta rozpoczyna si sowem kluczowym record, po ktrym podaje si deklaracj kadego pola, a koczy sowem kluczowym end. Przykad:

Type daneosobowe=record imie,nazwisko:string[25]; wiek:byte end; var dane:daneosobowe;

Typ zbiorowy jest zbiorem elementw danego typu porzdkowego. Liczba elementw typu zbiorowego nie moe przekracza 256 (przedzia od 0 do 255). Przykad: TYPE Klasy = set of (LO_1d, LO_2d, LO_3d,LO_4d); Typy plikowe s cile powizane z plikami zapisanymi na dysku. Plik jest cigiem elementw tego samego typu. Przykad: var Dane : file of Integer; Wyniki : Text;

Typy wskanikowe. Zmienne typu wskanikowego suy do okrelenia adresu w pamici komputera pod jakim zapisana jest wskazywana zmienna typu bazowego. Przykad: TYPE zapis = record Tekst: String[80]; Liczba: Integer; end; wskaznik = ^zapis;

Typ obiektowy. Obiektem w Pascalu nazywa si zoon struktur danych o ustalonej liczbie elementw skadowych, z ktrych kady moe by polem lub metod (m.in. procedur lub funkcj), tj. elementem opisujcym operacj wykonywan na danym obiekcie. W definicji typu obiektowego, podobnie jak w definicji typu rekordowego, dla kadego pola specyfikuje si jego typ i identyfikator.

You might also like