tp w 2 i 3 instrukcje skoku, Ebooks, Informatyka, Pascal, wykłady
[ Pobierz całość w formacie PDF ] Instrukcje: podstawienia, skoku, pusta, warunkowa, wyboru, wywołania podprogramu. Instrukcje iteracyjne: repeat, while, for. Zastosowanie procedur standardowych Break, Continue. Instrukcje – służą do opisu czynności wykonywanych na danych oraz określają kolejność wykonywania instrukcji. Instrukcje dzielimy nalprostel§ przypisania § skoku § pusta § wywołania procedury § inline lstrukturalne (zbudowane na podstawie pewnego schematu strukturalizacji)l§ złożona § warunkowa i wyboru § iteracyjne § wiążąca Przed każdą instrukcją może wystąpić jedna lub kilka etykiet ( identyfikator lub liczba 0...9999) z wcześniej zadeklarowanych label alfa, beta, 10, 9999; Instrukcja przypisania służy do przypisania zmiennej nowej wartości. odwołanie_do_zmiennej := wyrażenie; lub nazwa_funkcji := wyrażenie; (w części operacyjnej funkcji) Wartość wyrażenia musi być zgodna w sensie przypisania z typem zmiennej. a:=1; i:=i+1; tekst:=’Turbo Pascal’; y:=sin(x); warunek:=a=b; tab[i]:=0; Instrukcja skoku goto etykieta powoduje przekazanie sterowania do instrukcji poprzedzonej etykietą (obie instrukcje muszą być w tym samym bloku, nie zaleca się skoków do wnętrza instrukcji strukturalnych). Przykład: program skoki; label et; ... begin .... goto et; ... et: x:=x+1; ... end. Instrukcja pusta nie wymaga użycia żadnego symbolu. Stosowana jest w tych kontekstach gdzie wymagana jest instrukcja, a nie chcemy wykonywać żadnych czynności. Instrukcja wywołania procedury nazwa_procedury(lista parametrów aktualnych); Instrukcja inline służy do dołączenia podprogramów napisanych w kodzie maszynowym lub asemblerze. Instrukcja złożona jest ciągiem instrukcji poprzedzonych słowem kluczowym begin i zakończonym słowem kluczowym end. Stosowana jest w miejscach gdzie składnia języka wymaga pojedynczej instrukcji. Instrukcje składowe wykonywane są sekwencyjnie. begin instr_1; instr_2; ..... instr_n; end Instrukcja warunkowa uzależnia wykonanie innych instrukcji od spełnienia pewnych określonego warunku. if W then instrukcja1 else instrukcja2; lub if W then instrukcja; Instrukcje if mogą być zagnieżdżone tzn. po słowach then lub else występuje znowu instrukcja if. Zasada: każda jednostka else przyporządkowana jest najbliższej poprzedzającej ją jednostce then dla której nie wystąpiła jeszcze jednostka else. Instrukcja wyboru case wyrażenie of sekwencja instrukcji wyboru; [else instrukcja] end; Obliczana jest wartość wyrażenia typu porządkowego, po czym w sekwencji instrukcji wyboru jest wyszukiwana pierwsza instrukcja o stałej wyboru równej wartości selektora. Przykład: var miesiac:1..12; dni:1..31; case miesiac of 1, 3, 5, 7, 8, 10, 12: dni:=31; 2: dni:=28; 4, 6, 9, 11: dni:= 30; else dni:=0; end; Stała wyboru może być zakresem np. 1..6. Przykład: Pole figury wybieranej z menu. Instrukcja wyboru CASE podobnie jak instrukcja warunkowa pozwala na warunkowe wykonanie części programu. Składnia: CASE wyrażenie OF wartość1 : instrukcja1; wartość2 : instrukcja2; wartość3 : instrukcja3; .... ELSE .... END; W instrukcja CASE w zależności od wartości wyrażenia „wyrażenie” zostaje wykonana: instrukcja1 jeśli wartość wynosi wartość1 instrukcja2 jeśli wartość wynosi wartość2 itd. Jeżeli wyrażenie nie jest równe żadnej z wyliczonych wartości wykonywane są instrukcje zawarte pomiędzy ELSE ...END. Element ELSE...END może być pominięty (z wyjątkiem słowa END); Wyrażenie musi dawać wartość typu porządkowego. Wartości nie mogą być zmiennymi. Można je zdefiniować w postaci jednej liczby (wartości), ciągu wartości oddzielonego przecinkami lub zakresu w postaci Wartość_Poczatkowa..Wartość_Końcowa. Dopuszczalne jest stosowanie połączenia w wyliczaniu pojedynczych wartości i zakresów. Przykład: VAR b : BOOLEAN; BEGIN ... CASE b OF TRUE: Write(‘Tak’); FALSE: Write(‘Nie’) END; ... VAR z : CHAR; BEGIN ... CASE z OF ’a’..’z’: Write(‘Mała litera’); ’A’..’Z’: Write(‘Duża litera’); ’0’..’9’: Write(‘Cyfra’); ’,’ , ’?’ , ’.’ , ’!’ : Write(‘Znak przestankowy’) ELSE Write(‘Inny znak’); END; ... Instrukcja CASE często znajduje zastosowanie razem z typem wyliczeniowym - np. do wypisywania na ekran wartości tego typu. Instrukcje iteracyjnewhile wyrażenie do instrukcja; - czytanie z pliku - NWD metodą prostą i Euklidesa repeat instrukcja until warunek; - wczytywanie poprawnych danych - wczytywanie danych do znacznika końca - obliczanie szeregów potęgowych - pierwiastek metodą Herona for zmienna:=wyrażenie_1 to wyrażenie_2 do instrukcja; lub for zmienna:=wyrażenie_1downto wyrażenie_2 do instrukcja; - obliczanie potęg dwójki - wartość maksymalna z N liczb - kwadrat i sześcian N kolejnych liczb - wyprowadzanie znaków i ich kodów z wykorzystaniem zmiennej licznikowej typu char i int - tablicowanie funkcji Instrukcja continue i break Przykłady wykorzystania instrukcji strukturalnych, obliczenia numeryczne. { Program oblicza największy wspólny podzielnik dwóch liczb całkowitych } program NWD; {algorytm Euklidesa} var X,Y:integer; begin Write('Pierwsza liczba:'); Readln(X); Write('Druga liczba :'); Readln(Y); while X<>Y do if X>Y then X:=X-Y else Y:=Y-X; Writeln('NWD=',X) end. { Program rozkłada liczbę całkowitą na czynniki pierwsze np. 12 = 1*2*2*3 } program czynniki_pierwsze; var i,n:longint; begin write('podaj liczbe calkowita : '); readln(i); write(i, ' =1'); n:=2; repeat if i mod n=0 then begin write('*',n); i:=i div n; end else n:=n+1; until n>i; readln; end. { Program podaje wszystkie podzielniki zadanej liczby całkowitej } program wszystkie_podzielniki; uses crt; var a,b:integer; begin clrscr; ...
[ Pobierz całość w formacie PDF ] zanotowane.pldoc.pisz.plpdf.pisz.plmement.xlx.pl
|