poniedziałek, 15 marca 2010

Pętelki.

Repeat until

repeat
{blok instrukcji}
until
{warunek}

Program będzie powtarzał blok instrukcji dopóki nie zajdzie warunek. Blok instrukcji zostanie wykonany przynajmniej raz.

Przykład:



Wynik:



While do

while
{warunek}
do
 begin
 {blok instrukcji}
 end;

Gdy będzie zachodził warunek, program wykona blok instrukcji znajdujący się w pętli. Blok instrukcji może nie zostać wykonany ani razu.

Przykład:



Wynik:



For

a)
for i:={wartość} to {wartość} do
 begin
 {blok instrukcji}
 end;

b)
for i:={wartość} downto {wartość} do
 begin
 {blok instrukcji}
 end;

Program bedzie wykonywal blok instrukcji w konkretnej liczbie krokow.
W pierwszym przypadku i bedzie roslo o 1, a w drugim malalo o 1.

Przykład a):



Wynik:



Przykład b):



Wynik:

Typy.

W programie musimy określić jakiego typu jest każda występująca w nim zmienna. Zmienne deklarujemy po słowie kluczowym var - najpierw piszemy jej nazwę, potem dwukropek (czyli "typu") i typ.
np. var Imie:String; Wiek:Integer;

Najważniejsze typy dostępne w Pascalu:

Nazwa


Znaczenie

Zakres
wartości
Przykład
integer

liczba
całkowita ze znakiem
-32768..+32767
-14574
real
liczba
rzeczywista
2.9*10-39..1.7*1038
1.23245e17
char
znak
znaki
o kodach 0..255
'a'
string
napis
(łańcuch, ciąg znaków)
ciąg
do 255 znaków
'Napis'
boolean
wartość
logiczna
prawda
(true) lub fałsz (false)
false
word
słowo
0..65535
56412
byte
bajt
0..255
127
shortint
krótka
liczba całkowita ze znakiem
-128..+127
-13
longint
długa
liczba całkowita ze znakiem
-2147483648..+2147483647
-1986734234
single
krótka
liczba rzeczywista
1.5*10-45..3.4*1037
3.14e01
double
długa
liczba rzeczywista
5.0*10-324..1.7*10308
-1.8e+234
extended
bardzo
długa liczba rzeczywista
3.4*10-4932..1.1*104932
4.5e2345
comp
bardzo
długa liczba całkowita
-9.2*1018..9.2*1018
6e12
pointer
wskaźnik
0000h:0000h..FFFFh:FFFFh
$1234:ABCD

Przykładowy program z użyciem zmiennej:


Wynik:


Writeln&Readln

Writeln - Wypisuje tekst na ekran i przenosi kursor do nowej linijki.
Write - Wipisuje tekst na ekran, kursor zostaje w tej samej linijce.
Readln - zczytuje wprowadzony tekst do zmiennej.

wtorek, 9 marca 2010

Struktura programu

Zanim zaczniemy mała dygresja natury organizacyjnej - po pierwsze język nazywa się Pascal, nie Turbo Pascal, jak wiele osób myśli. Turbo Pascal to kompilator - program, który tłumaczy wpisany przez nas kod, na język maszynowy (dzięki temu procesor może zrozumieć czego my od niego chcemy). Ja osobiście używam i polecam inny kompilator - Free Pascal IDE v. 2.2.4. Można go ściągnąć stąd. Jest on moim zdaniem lepszy do nauki, ponieważ lepiej niż Turbo Pascal koloruje składnię.

Ok, możemy zaczynać.

Każdy program musi się zaczynać od słowa kluczowego program, po którym wpisujemy nazwę programu. Uwaga! Nazwa programu nie może wystąpić w dalszej części kodu, bo program się wykrzaczy. Więc pamiętajcie, by nie nazywać programu tak, jak później chcemy nazwać zmienną, funkcję, tablicę czy cokolwiek innego.
Co do nazewnictwa: w pascalu nie są rozróżniane duże i małe litery, więc Papuga = papuga, WriteLn = writeln etc. W nazwie nie może wystąpić spacja, polskie litery i inne dziwne znaki. Możemy używać małych i dużych liter, cyfr oraz znaków "_" i "-".
Jak niemal każde polecenie, kończymy deklarację nazwy programu średnikiem.
np. program Moj_pierwszy_program;
Następnie używając słowa kluczowego uses możemy dołączyć biblioteki.
np. uses crt;
Dalej mamy blok deklaracji zmiennych, stałych, procedur, funkcji, tablic.
Następnie mamy część właściwą programu - bloki instrukcji umieszczone pomiędzy nawiasami syntaktycznymi begin i end. (słowo kluczowe end kończące program zawsze piszemy z kropką na końcu; jeśli używamy go w środku dokumentu, piszemy po nim średnik).

Przykładowy program:

program hejho; {program wyświetli powitanie}
uses crt; {dołączam bibliotekę crt}

begin
ClrScr; {polecenie czyszczenia ekranu}
WriteLn('Czesc czolem kluski z rosołem!'); {wypisze powitanie na ekran}
readln;
end.


Napisy umieszczone w { } to komentarze.

poniedziałek, 8 marca 2010

Pascal - po prostu programuj.

Pascal jest językiem programowania wysokiego poziomu. Został opracowany przez szwajcarskiego informatyka Niklausa Writha w 1970 roku. Dzięki swojej prostocie jest jednym z najpopularniejszych języków używanych do nauki programowania strukturalnego.

W rzeczy samej - moim zdaniem pascal jest prosty i przystępny. Rozumiem, że może być mało atrakcyjny - jak to skomentował mój kolega, gdy na studium przeszliśmy do nauki javy "No wreszcie widzę, że coś robię, a nie że mi program mówi 'Jakub to mężczyzna'.". Ale według mnie pascal jest fajny, trzeba tylko siąść, popisać sobie trochę programów i się to załapie.

Jak nauczyć się programować? Trzeba stosować się do tych trzech zasad:

1. Po pierwsze - programowanie jest fajne. To nie kara. Nie myśl "o nie, znów kazali mi programować", tylko "co ciekawego mógłbym napisać?". Dostajesz do rąk narzędzia: język i kompilator i możesz dzięki nim coś stworzyć, czy to nie fajne?

2. Nie pisz niechlujnie. Dzięki temu unikniesz wielu błędów. A jak jakiś powstanie, to szybko odnajdziesz go w kodzie. Kto inny także. Pisanie programu to nie dripping - tu ma panować określony, ładny porządek.

3. Pisz programy. Im więcej, tym lepiej. Szukaj w internecie zadań, pisz własne programy. Jak to się mówi "Trening czyni mistrza".

Słowem wstępu

1) O mnie.

Co tu dużo o mnie - na imię mi Elka i (aktualnie) jestem studentką pierwszego roku Informatyki na Uniwersytecie Pedagogicznym w Krakowie.


2) Dlaczego postanowiłam założyć tego bloga.

Tu troszeczkę więcej. Wczoraj mieliśmy niezapowiedzianą kartkówkę z programowania. Zaliczyły tylko trzy osoby (ze mną na czele). Reszta grupy ma problem i to poważny - nie są w stanie ogarnąć Pascala, a już niedługo kolejne kartkówki, kolokwia. I tu zaświtał w mej głowie pomysł - może bym jakoś im pomogła? Jakoś wytłumaczyła tego Pascala? Postanowiłam więc założyć tego bloga, aby opisać na nim, w miarę (mam nadzieję) zrozumiale, podstawy Pascala. Jak mi to wyjdzie - zobaczymy. Może im się przyda. Może komuś jeszcze.