[ Pobierz całość w formacie PDF ]

S Java script ñ jest rozszerzeniem HTML-u; jest to jÍzyk skryptowy, program jest
interpretowany przez przeglÀdarkÍ;
S Magic ñ program do tworzenia aplikacji korzystajÀcych z baz danych.
9.14. Co to jest programowanie strukturalne?
Programowanie strukturalne (ang. structured programming) zostae"o po raz pierw-
szy zaproponowane przez holenderskiego matematyka DijkstrÍ jako programowanie
hierarchiczne, metoda zstÍpujÀcÀ (ang. top-down) z gÛry na dÛe".
152 Komputer - czÍsto zadawane pytania
NajkrÛcej rzecz ujmujÀc, jest to sposÛb programowania wymuszajÀcy podziae"
problemu na kolejne, coraz bardziej szczegÛe"owe przybliøenia algorytmu. Systema-
tyczny podziae" problemu na kolejne, coraz prostsze czÍúci ske"adowe, ktÛrych powiÀ-
zania wzajemne sÀ dobrze okreúlone, ue"atwia pracÍ, umoøliwia podziae" pracy miÍdzy
zespoe"y oraz ue"atwia kontrolÍ i wykrywanie be"ÍdÛw. WspÛe"praca pomiÍdzy czÍúciami
odbywa siÍ na zasadzie przekazywania parametrÛw. Ten sposÛb podejúcia jest zaleca-
ny zarÛwno do formue"owania algorytmu, jak i do zapisu go w postaci programu.
WadÀ programowania strukturalnego jest ke"opotliwa zmiana struktury danych
(w przypadku, gdy operuje na niej wiele segmentÛw wymaga to zmiany we wszyst-
kich tych segmentach).
9.15. JakÀ postaÊ w jÍzyku Pascal miae"by przyke"adowy
program znajdowania maksymalnego elementu z ciÀgu
danych n liczb a1, a2, ..., an?
Program szukania maksymalnego elementu z ciÀgu danych n liczb moøe mieÊ
w Pascalu nastÍpujÀcÀ postaÊ:
program FindMax (input, output);
const n = 100;
var licznik: 1..n;
A, M: real;
begin
licznik := 1;
readln(A);
M := A;
repeat
licznik := licznik + 1;
readln(A);
if A >= M then M := A
until licznik = n;
writeln(M)
end.
Algorytm powyøszego programu zostae" juø przedstawiony w pyt. 9.4.
Oprogramowanie systemów komputerowych 153
W programie tym, o nazwie FindMax, parametry input oraz output informujÀ, øe
dane liczbowe bÍdÀ wczytane ze standardowego dla danego komputera urzÀdzenia
wejúciowego, a wyniki bÍdÀ wyúwietlone na standardowym urzÀdzeniu wyjúciowym.
Po tym tzw. nage"Ûwku programu pojawia siÍ definicja stae"ej, ustalajÀca przyke"adowo
wartoúÊ n rÛwnÀ 100 oraz deklaracje typÛw. Zmienna licznik moøe przyjmowaÊ war-
toúci cae"kowite od l do n we"Àcznie (tzw. typ okrojony), natomiast zmienne A i M mogÀ
byÊ rzeczywiste. Definicja i deklaracje opisujÀ obiekty, na ktÛrych ten program dziae"a.
CzÍúÊ operacyjna programu jest ujÍta w nawiasy begin i end. Rozpoczyna siÍ nada-
niem wartoúci poczÀtkowych zmiennym licznik oraz M (po wczytaniu A instrukcjÀ
read). NastÍpnie mamy instrukcjÍ, ktÛra powoduje (n-l)-krotne wykonanie instrukcji
zawartych miÍdzy symbolami repeat oraz until dla zmiennej licznik przyjmujÀcej
wartoúci od 2 do n. Instrukcja standardowa write powoduje drukowanie (wyúwietlanie)
wartoúci zmiennej M.
9.16. Co to jest programowanie obiektowe?
Programowanie obiektowe okreúlane jest teø mianem programowania zorientowa-
nego obiektowo. W wykorzystujÀcych programowanie obiektowe programach pod-
stawowym pojÍciem jest obiekt. Reprezentuje on procedury, jak i same dane. Dziae"a-
nie programu polega na wzajemnym komunikowaniu obiektÛw i modyfikacji ich cech.
Nowe obiekty tworzone sÀ na podstawie juø istniejÀcych. Moøliwe jest dodawanie
nowych obiektÛw i dziedziczenie wczeúniejszych cech. Programowanie obiektowe
wprowadza kilka terminÛw, ktÛre nie pojawiae"y siÍ we wczeúniejszych jÍzykach pro-
gramowania. Klasa jest pewnym wzorcem rzeczy lub dziae"ania ñ zjawiska, ktÛrego
dotyczy nasz program. Zawiera ona metody, czyli funkcje i procedury, ktÛre mogÀ
byÊ stosowane do danej klasy. Konkretne elementy danej klasy to obiekty, ktÛre za-
wierajÀ w sobie zarÛwno metody (programy) jak i klasy [14].
9.17. JakÀ postaÊ w jÍzyku C++ miae"by przyke"adowy program
znajdowania maksymalnego elementu ze stu losowych
liczb?
Program szukania maksymalnego elementu ze stu liczb moøe mieÊ w C++ nastÍ-
pujÀcÀ postaÊ:
#include
int main(void)
{
int i=1;
154 Komputer - czÍsto zadawane pytania
int a=0;
int max;
while (100>=i)
{
a=random();
if (max
max=a;
i++;
printf("%d \n",a);
}
printf("\n");
printf("Max: %d",max);
printf("\n");
return 0;
}
Algortym powyøszego programu bye" juø prezentowany w pyt. 9.4 (tutaj dla od-
miany liczby nie sÀ czytane, a losowane).
Na poczÀtku programu znajduje siÍ polecenie include doe"ÀczajÀce bibliotekÍ
stdio.h do programu. Kolejna linia rozpoczyna czÍúÊ ge"ÛwnÀ programu main. Program
jest umieszczony w nawiasach klamrowych {}. Instrukcje: int i=0, int a=0 oraz int
max deklarujÀ zmienne cae"kowite, na ktÛrych bÍdzie dziae"ae" program. Instrukcja while
rozpoczyna pÍtlÍ, ktÛra bÍdzie wykonana sto razy. WewnÀtrz pÍtli nastÍpuje przypisa-
nie zmiennej a wartoúci losowej, porÛwnanie jej wartoúci z wartoúciÀ maksymalnÀ,
zwiÍkszenie wartoúci licznika i o jeden oraz wydrukowanie wartoúci a. Jeúli porÛw-
nywana wartoúÊ zmiennej a jest wiÍksza od dotychczasowej wartoúci maksymalnej,
wÛwczas nastÍpuje przepisanie wartoúci zmiennej a do zmiennej max. Po osiÀgniÍciu
przez licznik i wartoúci 100 nastÍpuje zaprzestanie wykonywania pÍtli, wyúwietlenie
maksymalnej wartoúci spoúrÛd porÛwnywanych liczb i zakoÒczenie programu.
Komentarza moøe wymagaÊ ske"adnia instrukcji printf. Pierwszy argument okreúla
format wyúwietlania liczby, drugi jest argumentem przekazujÀcym do funkcji wartoúÊ
liczby.
Oprogramowanie systemów komputerowych 155
9.18. Jakie sÀ kryteria oceny jÍzykÛw programowania?
Naleøy podkreúliÊ, øe brak jest formalnych i precyzyjnych metod oceny jÍzyka
programowania i czÍsto trzeba siÍ niestety odwoe"ywaÊ do intuicji. Przy takiej we"aúnie
intuicyjnej ocenie jÍzyka zwraca siÍ uwagÍ na:
S prostotÍ
S e"atwoúÊ nauczenia siÍ i uøytkowania
S czytelnoúÊ i zwartoúÊ struktur programowych
S uniwersalnoúÊ
S elastycznoúÊ
S modularnoúÊ
S niezaleønoúÊ od komputera, lecz zarazem e"atwoúÊ przystosowywania do rÛønych
konfiguracji sprzÍtowych i programowych
S efektywnoúÊ procesu te"umaczenia programu na ciÀg rozkazÛw.
NiektÛre z tych wymagaÒ sÀ wzajemnie sprzeczne, np. im jÍzyk bardziej uniwer-
salny, tym trudniejszy do nauczenia.
9.19. Jakie sÀ zasadnicze rÛønice miÍdzy jÍzykami naturalnymi
a jÍzykami programowania?
W jÍzykach programowania okreúla siÍ formalnie zbiÛr regue", za pomocÀ ktÛrych
moøna otrzymaÊ wszystkie poprawne napisy w tym jÍzyku. Ske"adnia (syntaktyka)
tych jÍzykÛw jest wiÍc sformalizowana.
W jÍzykach naturalnych nie mamy zbioru takich regue", ktÛre pozwolie"yby uzyskaÊ
wszystkie moøliwe zdania tego jÍzyka. Naleøy przy tym podkreúliÊ, øe same tylko
regue"y syntaktyczne nie zapewniajÀ jeszcze sensownoúci zdaÒ poprawnych syntak-
tycznie. Semantyka (regue"y znaczeniowe) bowiem najtrudniej poddaje siÍ formalizacji.
9.20. Co to sÄ… metody numeryczne?
Metody numeryczne sÀ duøym dziae"em matematyki, ktÛry dostarcza metod roz-
wiÀzywania ze"oøonych zagadnieÒ obliczeniowych, np. obliczanie cae"ek oznaczonych,
rozwiÀzywanie uke"adÛw rÛwnaÒ, szukanie pierwiastkÛw rÛwnaÒ przestÍpnych itp., za [ Pobierz caÅ‚ość w formacie PDF ]

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • szkla.opx.pl
  •