[ Pobierz całość w formacie PDF ]
(kalkulatorzy) oraz tymi, ktÛrzy uøywali liczyde"a (abacyúci). PojÍcie algorytmu, czyli recepty na postÍpowanie rachunkowe na piúmie, zostae"o pÛüniej rozszerzone na sfor- malizowane obliczenia matematyczne. 144 Komputer - czÍsto zadawane pytania 9.3. Jakie sÀ typowe konstrukcje algorytmiczne? WyrÛønia siÍ nastÍpujÀce konstrukcje algorytmiczne: S proste S z rozwidleniem S z pÍtlÀ S ze"oøone. W prostych konstrukcjach algorytmicznych uøywa siÍ jedynie poleceÒ (instrukcji) przetwarzania i pomocniczych, nie moøna uøyÊ instrukcji warunkowych. W takiej konstrukcji kolejnoúÊ realizacji poszczegÛlnych operacji jest úciúle okreúlona, øadna z nich nie moøe byÊ pominiÍta ani powtÛrzona. Algorytm z rozwidleniem zawiera w sobie wybÛr jednej z kilku moøliwych drÛg realizacji danego zadania. W takiej konstrukcji istnieje przynajmniej jedno polecenie warunkowe. CzÍsto w wielu algorytmach zdarza siÍ, øe wystÍpujÀ wielokrotne powtÛrzenia niektÛrych operacji lub ich ciÀgÛw, rÛøniÀcych siÍ jedynie zestawem danych, na ktÛ- rych dziae"ajÀ. PÍtla obejmuje tÍ czÍúÊ instrukcji, ktÛra ma byÊ powtarzana. Organiza- cjÍ pÍtli zapewniajÀ: S polecenia, w ktÛrych okreúla siÍ informacje dotyczÀce liczby obiegÛw pÍtli, okreúlane licznikiem S polecenia modyfikacji licznika, w ktÛrych okreúla siÍ sposÛb zmiany licznika po kaødym obiegu pÍtli S polecenia warunkowe, w ktÛrym nastÍpuje sprawdzenie, czy licznik osiÀgnÀe" wartoúÊ granicznÀ okreúlajÀcÀ zakoÒczenie pracy w pÍtli, i przejúcie do nastÍp- nych blokÛw. 9.4. JakÀ postaÊ bÍdzie miae" przyke"adowy algorytm dla zadania poszukiwania maksymalnego elementu z ciÀgu danych n liczb? Przyke"adowy algorytm poszukiwania maksymalnego elementu z ciÀgu danych n (n 2) liczb mÛge"by wyglÀdaÊ tak: 1. Ustaw zmiennÀ licznik rÛwnÀ jeden. 2. Wczytaj wartoúÊ zmiennej A. 3. WartoúÊ zmiennej A przypisz zmiennej M. Oprogramowanie systemów komputerowych 145 4. ZwiÍksz licznik o 1. 5. Wczytaj wartoúÊ zmiennej A. 6. Jeøeli A jest wiÍksze od M, to wartoúÊ zmiennej A przypisz zmiennej M. Je- úli nie, to przejdü do punktu 7. 7. Jeøeli licznik nie jest rÛwny n, to wrÛÊ do punktu 4. Jeúli tak, to przejdü do punktu 8. 8. Wyúwietl wartoúÊ zmiennej M. Przyke"adami prostych konstrukcji algorytmicznych sÀ z osobna polecenia nr 1, 2, 3, 4, 5, 8. Przyke"adami poleceÒ z rozwidleniem sÀ z osobna polecenia nr 6, 7. Sekwencja zaú poleceÒ nr 4, 5, 6, 7 (gdy licznik n) tworzy konstrukcjÍ algorytmicznÀ zwana pÍtlÀ. 9.5. Co rozumiemy pod pojÍciem jÍzyk programowania, program i programowanie? JÍzykiem programowania nazywamy jÍzyk, za pomocÀ ktÛrego moøna zapisywaÊ algorytmy przetwarzania informacji przeznaczone dla komputera. Programem nazy- wamy algorytm przetwarzania informacji zapisany w jÍzyku programowania. Aby zdefiniowaÊ dowolny jÍzyk programowania, naleøy okreúliÊ: S alfabet, czyli zbiÛr dopuszczalnych symboli, z ktÛrych bÍdÀ tworzone se"owa i zdania w tym jÍzyku S ske"adniÍ (syntaktykÍ), czyli regue"y tworzenia poprawnych se"Ûw i zdaÒ (zwanych tu instrukcjami) tego jÍzyka S regue"y znaczeniowe (semantykÍ) interpretujÀce znaczenie poszczegÛlnych zdaÒ i konstrukcji jÍzyka. W znaczeniu strukturalnym program ma postaÊ ciÀgu instrukcji. Nie jest to zbyt úcise"e okreúlenie, gdyø w programach wystÍpujÀ takøe tzw. opisy (deklaracje), ktÛrych zadaniem jest dostarczenie komputerowi informacji o tym, jakie zmienne (np. liczby, wektory, macierze), jakiego typu (np. rzeczywiste, cae"kowite, logiczne, znakowe) i w ja- kiej licznoúci bÍdÀ w programie wystÍpowaÊ. Na podstawie tych informacji komputer dokonuje rezerwacji odpowiednich obszarÛw pamiÍci przeznaczonych na te obiekty. Znane jest se"awne sformue"owanie Wirtha (a jednoczeúnie tytue" ksiÀøki) ÑSTRUKTURY DANYCH + ALGORTM = PROGRAMî. Alfabet i ske"adniÍ definiuje siÍ zazwyczaj úciúle i formalnie, regue"y znaczeniowe zaú okreúla siÍ opisowo. Program zapisany w jakimú jÍzyku programowania (z wyjÀt- kiem wewnÍtrznego) nazywamy programem ürÛde"owym. Po to, aby mÛge" byÊ wyko- nany przez komputer, trzeba go przete"umaczyÊ na jÍzyk wewnÍtrzny. Te"umaczenia dokonuje translator. 146 Komputer - czÍsto zadawane pytania Programowaniem (w szerokim rozumieniu) nazywa siÍ jednoznaczne formue"owa- nie zadaÒ oraz sposobu ich rozwiÀzywania na komputerze, prowadzÀce do wykonania szeregu czynnoúci, takich jak: a) sformue"owanie problemu b) okreúlenie metody rozwiÀzania c) dyskusja warunkÛw istnienia rozwiÀzania d) zapis algorytmu w wybranym jÍzyku programowania e) uruchomienie testowe programu f) opracowywanie dokumentacji. CzÍsto programowaniem (w wÀskim rozumieniu) nazywa siÍ etap d). 9.6. Jak klasyfikujemy jÍzyki programowania? Jednym z podstawowych kryteriÛw klasyfikacji jest stopieÒ ze"oøonoúci moøliwych konstrukcji, ktÛre moøna utworzyÊ w danym jÍzyku. Ten stopieÒ ze"oøonoúci i wyni- kajÀcÀ z niego wygodÍ programowania okreúla siÍ umownie, definiujÀc kilka pozio- mÛw jÍzykÛw programowania. Zwykle wyrÛønia siÍ jÍzyki: S wewnÍtrzne S asemblerowe (symboliczne) S wysokiego poziomu (proceduralne). Z punktu widzenia programisty jÍzyk wewnÍtrzny jest na najniøszym poziomie. Alfabet tego jÍzyka ske"ada siÍ wye"Àcznie z cyfr dwÛjkowych: 0 i 1. Zdaniami w tym jÍzyku sÀ rozkazy, a jego ske"adniÍ i regue"y znaczeniowe definiuje konstruktor kom- putera. Ske"adnia okreúla precyzyjnie formaty poszczegÛlnych rozkazÛw, a regue"y zna- czeniowe sposÛb dziae"ania rozkazÛw. CzÍsto, dla wygody programisty, w celu uproszczenia i skrÛcenia zapisu rozkazÛw stosuje siÍ, oprÛcz we"aúciwych symboli jÍ- zyka (cyfr 0 i 1), zapis Ûsemkowy lub szesnastkowy. JÍzyk asemblerowy zajmujÀcy nastÍpny, wyøszy poziom rÛøni siÍ istotnie od jÍ- zyka wewnÍtrznego przede wszystkim jeúli chodzi o alfabet i ske"adniÍ. Regue"y zna- czeniowe w odniesieniu do instrukcji, ktÛrym odpowiadajÀ pojedyncze rozkazy kom- putera, sÀ identyczne. Rozszerzenie dotyczy pewnych dodatkowych konstrukcji nazywanych dyrektywami (pseudorozkazami) oraz makroinstrukcjami. Poziomy wyøsze stanowiÀ jÍzyki wysokiego poziomu (proceduralne), ktÛrych
[ Pobierz całość w formacie PDF ] zanotowane.pldoc.pisz.plpdf.pisz.plalternate.pev.pl
|
|
|