tp_wyklad-czerwonka_1.doc

(2619 KB) Pobierz

 

 

 

Struktura programu

 

PROGRAM nazwa;

{część deklaracyjna}

BEGIN

{część wykonawcza}

END.

 

Część deklaracyjna – tu definiujemy stałe i deklarujemy zmienne

Część wykonawcza – część główna programu. Tu wstawiamy instrukcje.

Oto wyjściowy kod programu, który będzie używany przy rozpoczynaniu każdego

programu:

 



Opis:

Program baza; - nazwa programu (tu nazwą jest baza). Jeżeli nazwa będzie zawierać kilka

wyrazów należy je połączyć np. kreską dolną (np. program_dodawanie_liczb).

 

Uses CRT – nie będziemy się zagłębiać w słowo uses. Najprościej mówiąc jest to odwołanie

do biblioteki o nazwie CTR, która zawiera komendę clrscr; (widoczną na zrzucie), która czyści

ekran (uruchamiając program w TP zaobserwować można informacje o programie – aby

pozbyć się tych informacji używamy właśnie tej komendy).

Begin – początek części zasadniczej programu.

Clrscr; - czyszczenie ekranu.

Readkey; - powoduje zatrzymanie programu do czasu naciśnięcia dowolnego klawisza.

Gdyby zabrakło tej linii nie zaobserwowalibyśmy wyniku programu. Program wyszedłby

automatycznie do źródła.

End. – koniec programu. Bardzo ważna jest kropka. Na kolejnych lekcjach zaobserwujesz, że

end będzie używane nie tylko przy zakończeniu programu. Jednak tylko end dla końca

programu będzie zawierał kropkę.

 

 

 

INSTRUKCE WEJŚCIA / WYJŚCIA

 

Do podstawowych instrukcji w programowaniu ( nie tylko w TP) należą:

- komunikacja programu z użytkownikiem

- komunikacja użytkownika z programem

Chodzi tu w szczególności o wyświetlanie komunikatów na ekranie i możliwość wprowadzania danych

z klawiatury.

1) Instrukcja WRITE i WRITELN

Aby wyświetlić informację na ekranie używamy następującej składni:

Write(‘Jakiś napis’);

Z kolei:

Writeln(‘Jakiś napis’);

Wyświetli napis, a kursor przejdzie do następnej linii

Co zrobić, kiedy chcemy na ekranie wyświetlić nie napis, lecz wartość jakiejś zmiennej? To żaden

problem. Załóżmy, że zastosowaliśmy instrukcję przypisania dla zmiennej o nazwie liczba:

Liczba:=10;

Jak widzicie do zmiennej liczba przypisałem wartość 10. Aby wyświetlić na ekranie tą wartość

wystarczy napisać:

Write(liczba);

I to wszystko. Czyli postępujemy tak jak w przypadku napisu, z tą różnicą, że nie dajemy w nawiasie

apostrofów, a jedynie nazwę zmiennej.

Możemy także łączyć wyświetlanie tekstu i wartości zmiennej:

Write(‘Wartość zmiennej o nazwie liczba wynosi ’,liczba);

Jak widać, kolejne przejścia z napisu na zmienne poprzedzone są przecinkiem.

 

Przykładowy program:

Program write_i_writeln;

Uses CRT;

Var

Liczba :integer;

Begin

Clrscr;

Liczba:=10;

Write(‘Wartość zmiennej o nazwie liczba wynosi ‘,liczba); //*

Readkey;

End.

 

Linijkę z gwiazdką moglibyśmy zastąpić w ten sposób:

Write(‘Wartość zmiennej o nazwie liczba wynosi ’ );

Write(liczba);

 

2) Instrukcje READ i READLN

Jeśli chcemy do dowolnej zmiennej przypisać wartość nie poprzez instrukcję przypisania lecz z

klawiatury, postępujemy tak:

Read(nazwa_zmiennej);

Z kolei:

Readln(nazwa_zmiennej);

Powoduje przypisanie z klawiatury wartości do zmiennej i przejście do następnej linii.

 

Przykładowy program:

Program read_i_readln;

Uses CRT;

Var

Liczba :integer;

Begin

Clrscr;

Write(‘Podaj wartość ’); // wyświetlenie napisu

Readln(liczba); // program czeka, aż wpiszesz wartość z klawiatury

Write(‘Wartość zmiennej o nazwie liczba wynosi ’,liczba); //wyświetlenie napisu i wartości

Readkey;

End.

 

Komentarze:

Te dwa ukośniki ( // ) oznaczają początek tak zwanego komentarza. Tekst, który znajduje się za

ukośnikami jest ignorowany przez program i służy tylko, jako informacja. Dobrze jest stosować w

programie komentarze, w szczególności w rozbudowanych programach opisując sobie, np. zmienne.

Sprawa wygląda troszeczkę inaczej, jeżeli chcemy wyświetlić wartość zmiennej typu REAL. Poniższa

instrukcja:

Write(liczba);

W przypadku, gdy:

var

Liczba : Real;

Spowoduje wyświetlenie się wartości mniej więcej w ten sposób:

 



 

 

 

 

 

 



Co w takim wypadku??

Zamiast linijki:

Write(liczba);

Wpisujemy:

Write(liczba:10:3);

10 – oznacza, że wynik zostanie wyświetlony w systemie dziesiętnym

3 – oznacza trzy miejsca po przecinku

 





PODSUMOWANIE:

W przypadku typów zmiennych char i string postępujemy dokładnie tak samo jak w powyższych

przykładach. Jedynie dodatkowe wartości przy wyświetlaniu zmiennych (np. write(liczba:10:2) )

stosujemy tylko w przypadku zmiennych typu REAL.

 

Typy danych

W Pascalu wyróżniamy następujące standardowe typy danych:

- REAL (określa liczby rzeczywiste)

- INTEGER (określa liczby całkowite)

- CHAR (znakowy typ danych – jeden znak)

- BOOLEAN (określa typ mogący przybierać dwie wartości: true-prawda i false-fałsz)

- STRING (ciąg znaków)

Typy całkowite

 



 

Typy rzeczywiste

 



 

Co oznacza zakres???

Używając w programie liczb stałych i zmiennych musimy określić ich typ, z góry musimy

wiedzieć, co to będą za liczby. Jeżeli program będzie dodawał dwie liczby musimy określić na

początku programu czy będą to liczby całkowite czy po przecinku (rzeczywiste). Następnie

określamy przedział, w jakim będą zawierać się te liczby. Jeżeli chodzi o liczby rzeczywiste, to

w większości przypadków wystarczy zastosować REAL.

Co oznacza liczba bajtów???

Jeżeli np. wartość zmiennej będzie wahać się w zakresie od 1 do 100 to najlepszym typem

będzie BYTE. Jeżeli jednak użyjemy INTEGER to nie będzie to błąd, jednak niepotrzebnie

zajmiemy miejsce w pamięci. Przy programie z dużą ilością zmiennych może mieć to wpływ

na szybkość działania programu.

Definicje stałych:

Definicje stałych poprzedzamy słowem CONST.

Definicja każdej stałej ma postać:

Nazwa_stałej = Wartość_stałej;

Np.:

X=10;

UWAGA!!!

Definiując stałe nie podajemy typu danych, kompilator sam rozpozna typ.

UWAGA!!!

Definiując stałą musimy mieć świadomość, że jej wartość w programie nie może ulec

zmianie.

Deklaracje zmiennych:

Deklaracje zmiennych poprzedzamy słowem VAR.

Deklaracja zmiennych ma postać:

 

Nazwa_zmiennej : Typ_zmiennej;

Np.:

X : integer; // zmienna o nazwie x typu całkowitego

Y : char; // zmienna o nazwie y typu znakowego

Tak zadeklarowane zmienne nie posiadają żadnych wartości. Wartości te mogą być

wprowadzone np. z klawiatury (o tym na dalszych lekcjach), bądź można je ustalić odgórnie

w dowolnej części programu. Do tego służy instrukcja przypisania.

Przykład

Przypisuję wartość 10 do zmiennej o nazwie x:

X:=10;

Instrukcja przypisania składa się z :=

UWAGA!!!

Przypisując w dowolnym miejscu wartość do zmiennej musimy mieć świadomość tego, że

wartość ta może ulec zmianie.

Przykład:



Zauważ, że instrukcja przypisania występuje już w części zasadniczej programu (między Begin

i end). Przypisując wartości do zmiennych typu char i string, wartości umieszczamy
w apostrofach.

 

Instrukcja warunkowa

 

Instrukcja warunkowa to element w języku programowania, wykonujący określone

czynności tylko wtedy, kiedy zostanie spełniony określony warunek.

Wyróżniamy dwie postaci instrukcji warunkowej:

· instrukcja warunkowa niepełna

· instrukcja warunkowa pełna

1. Instrukcja warunkowa niepełna

Instrukcja warunkowa niepełna wykonuje odpowiednie czynności tylko pod

odpowiednimi warunkami:

Postać instrukcji warunkowej niepełnej:

IF ( warunek ) THEN

Begin

<instrukcje>

End;

Instrukcje zostaną wykonane, kiedy warunek zostanie spełniony.

 

Przykład instrukcji warunkowej niespełnionej :

 



 

 

 

 

Po uruchomieniu:

1 -wersja

 



2 -wersja

 



 

 

              W pierwszej wersji warunek został spełniony, więc wyświetlił się napis. W drugiej

wersji warunek nie został spełniony, a napis się nie wyświetlił. W drugim przypadku, kiedy

warunek nie zostaje spełniony, ten fragment programu, którego dotyczy instrukcja

warunkowa zostaje pominięta.

 

2.    Instrukcja warunkowa pełna:

Instrukcja warunkowa pełna wykonuje odpowiednie czynności tylko pod odpowiednimi

warunkami, lecz jeżeli nie zostaną one spełnione, wykonują się inne instrukcje.

Postać instrukcji warunkowej pełnej:

IF ( warunek ) THEN

Begin

<instrukcja1>

End

else

Begin

<instrukcja2>

End;

 

 

Jeżeli warunek zostanie spełniony wykona się tylko instrukcja1. Jeżeli warunek nie zostanie

spełniony, wykona się tylko instrukcja2.

UWAGA!!!

W instrukcji warunkowej pełnej, pierwsze słowo end, znajdujące się pod instrukcja1 nie

zawiera średnika. Jest to wyjątek i należy o nim pamiętać.

 

 

Przykład instrukcji warunkowej pełnej :

 



Po uruchomieniu:

1 –wersja



2 –wersja

 



 

 

 

Instrukcja powtórzeniowa FOR służy do wykonania tych samych czynności wiele

razy.

Struktura:

FOR wartosc1 TO wartosc2 DO

Begin

<Instrukcje>

End;

Wartość1 to wartość początkowa pętli, natomiast wartość2 to wartość końcowa

tli.

Przykład:

FOR x:=1 TO 10 DO

Begin

<instrukcje>

End;

Powyższa pętla wykona instrukcje znajdujące się pomiędzy Begin a end dziesięć

razy. Na początku wartość zmiennej x wynosi 1. Po każdym kolejnym powtórzeniu

wartość x zwiększa się o jeden. Pętla wykona tyle powtórzeń, aż wartość x dojdzie

do 10.

 

Przykładowy kod:

...

Zgłoś jeśli naruszono regulamin