jezyki progr 11

background image

EBieleninik

PWr II

1

Pojęcia podstawowe

Program – sposób zapisu algorytmu w celu jego realizacji przez komputer.

Program składa się ze zbioru instrukcji i struktur danych.

Instrukcja – opis operacji jaka ma być wykonana.

Struktury danych – różne postacie danych, na których są wykonywane operacje.

PROGRAM = ALGORYTM + STRUKTURY DANYCH

EBieleninik

PWr II

2

PROGRAM = ALGORYTM + STRUKTURY DANYCH

Program może być napisany w wybranej notacji.
Notacja taka powinna możliwie najlepiej pasować do problemu. Jeżeli ma on być
wykonany na komputerze, to musi być zapisany w

języku programowania.

Język programowania – język używany do pisania programów realizowanych
przez komputer.

Rozróżnia się języki:

- niskiego poziomu

Zależne od typu komputera, duża pracochłonność

- wysokiego poziomu

Niezależne od typu komputera, wykorzystują wyrażenia języków naturalnych

EBieleninik

PWr II

3

Niezależne od typu komputera, wykorzystują wyrażenia języków naturalnych

Języki niskiego poziomu

• język maszynowy

• język asembler

Języki wysokiego poziomu

• FORTRAN, COBOL, ALGOL, PASCAL, C

• MODULA, ADA

EBieleninik

PWr II

4

• MODULA, ADA

• BASIC, VISUAL BASIC

• SIMULA, SMALLTALK

• C++, C#, JAVA

• PROLOG

background image

Język maszynowy

Jest to język ściśle związany z typem komputera (procesora) i jest różny dla
różnych typów komputerów.

Instrukcje i dane są zapisywane w postaci

ciągów liczb szesnastkowych lub

binarnych.

Posługiwanie się tym językiem jest bardzo trudne i jest on stosowany niezwykle
rzadko

Językiem maszynowym posługiwano się w najwcześniejszym okresie użytko-

EBieleninik

PWr II

5

Językiem maszynowym posługiwano się w najwcześniejszym okresie użytko-
wania komputerów.

1010

0111

0000 0000 0001 1010

kod

rozkazu

nr

rejestru

adres pamięci

Język asembler

Jest to

język symboliczny

, w którym instrukcje mają postać nazwy symbolicznej.

Jednej instrukcji symbolicznej odpowiada jedna instrukcja maszynowa.

Programy asemblerowe są bardziej zrozumiałe dla człowieka niż maszynowe.

Języki asemblerowe także są różne dla różnych typów komputerów, ale mają
pewne cechy wspólne.

EBieleninik

PWr II

6

Język asembler

MOV

Z,0

// przesłanie 0 do Z

MOV

U,X

// przesłanie X do U

k2

ADD

Z,Y

// dodanie Y do Z

DEC

U

// odjęcie 1

JNZ

k2

// skok do k2 gdy U<>0

Przykład

EBieleninik

PWr II

7

1. z := 0

u := x

2. Powtarzaj

z := z+y
u := u-1

Aż u = 0

Języki wysokiego poziomu

Podstawowe cechy:

• niezależność od konkretnych typów komputerów

• pojedyncze instrukcje opisują złożone czynności

• oferują szereg ułatwień w pisaniu programów

EBieleninik

PWr II

8

background image

• języki proceduralne

- FORTRAN
- ALGOL
- BASIC
- PASCAL (starsze wersje)
- C

• języki obiektowe

- C++
- VISUAL BASIC

Podział języków wysokiego poziomu

EBieleninik

PWr II

9

- VISUAL BASIC
- JAVA
- ADA
- PASCAL
- SMALLTALK
- LISP

• języki programowania logicznego

- PROLOG

• języki symulacyjne

- SIMULA
- SIMSCRIPT

• języki skryptowe (do pisania stron www)

- PHP
- JavaScript

Podział języków wysokiego poziomu

EBieleninik

PWr II

10

- JavaScript
- ASP

• języki bazodanowe (zapytań)

- SQL
- MySQL

Translatory

Program

w języku A

TRANSLATOR

Program

w języku B

Translator

to program narzędziowy służący do tłumaczenia programów z jednego

języka programowania na inny.

W szczególności program, aby był wykonywalny, musi być przetłumaczony na
język maszynowy.

EBieleninik

PWr II

11

Program

ź

ródłowy

KOMPILATOR

Program

wynikowy

Kompilator

- program tłumaczący z języka wysokiego poziomu (źródłowy) na

Kompilator

EBieleninik

PWr II

12

Kompilator

- program tłumaczący z języka wysokiego poziomu (źródłowy) na

język maszynowy (wynikowy).

Program źródłowy

- program w języku wysokiego poziomu, zrozumiałym przez

człowieka

Program wynikowy

- program w języku maszynowym, wykonywany przez

komputer.

background image

Jeżeli w czasie translacji programu jest on jednocześnie wykonywany, to taki
translator nazywa się

interpreterem.

Program

ź

ródłowy

INTERPRETER

Wykonywanie

kolejnych instrukcji

Interpreter

EBieleninik

PWr II

13

translator nazywa się

interpreterem.

Językiem wejściowym interpretera może być język asembler albo język wysokie-
go poziomu.

Proces uruchamiania programu

Wprowadzenie programu

do komputera

Są błędy ?

Uruchomienie

Poprawa błędów

Kompilacja

T

N

EBieleninik

PWr II

14

Są błędy ?

Uruchomienie

Testowanie

Są błędy ?

Poprawa błędów

Poprawa błędów

T

N

T

N

Proces uruchamiania programu

Program.

pas

Kompilacja

Program.

exe

Po skompilowaniu, program wynikowy staje się samodzielnym „bytem”
i może być przenoszony na inne komputery i wielokrotnie wykonywany dla
różnych danych wejściowych.

EBieleninik

PWr II

15

Język programowania - definicje

Symbol - najmniejszy element języka

Alfabet - zbiór wszystkich symboli danego języka

Słowa kluczowe – zbiór słów języka

Syntaktyka (składnia) – określa reguły tworzenia poprawnych wyrażeń języka

Semantyka – określa znaczenie poprawnych składniowo wyrażeń.

background image

Elementy języków programowania

• Dane różnych typów

• Wyrażenia (arytmetyczne, logiczne, relacyjne)

• Instrukcje

EBieleninik

PWr II

17

Dane w językach programowania

Dane dzielą się na

zmienne i stałe.

Ich znaczenie jest takie samo jak w matematyce.

Muszą posiadać nazwę i można im przypisywać wartości.

Nazwa

jest ciągiem znaków. Przykłady nazw:

x, Y, alfa, wsp_korelacji, wynik23

EBieleninik

PWr II

18

Stałe nie zmieniają wartości, którą nadaje się im w jednym miejscu programu.

Zmienne mogą zmieniać wartość w trakcie wykonywania programu.

Zmienne i stałe mogą być

różnych typów

.

Dane w językach programowania

Typ określa rodzaj i zakres wartości, które mogą przyjmować zmienne i stałe.

Typy zmiennych i stałych muszą być podane w deklaracjach.

Deklaracje muszą poprzedzać użycie zmiennych i stałych w programie.

EBieleninik

PWr II

19

Dane mogą być typu

prostego

lub

złożonego.

Dane w językach programowania

Pascal – typy proste

Nazwa

Liczba bajtów Zakres wartości

Uwagi

ShortInt

1

-128..127

Krótki całkowity

Integer

2

-32 768..32 767

Całkowity

LongInt

-2 147 483 648..

Długi całkowity

Real

6

-2.9E-39..1.7E38

Rzeczywisty

EBieleninik

PWr II

20

Double

8

5.0E-324..1.1E308

Podwójny rzeczywisty

Char

1

Znakowy

Boolean

1

True/False

Logiczny

background image

Dane w językach programowania

Pascal – typy złożone (składają się z typów prostych)

1) Typ łańcuchowy (napisowy)

x: string[15];

1

0

o

w a

l

s

k

K

i

2

15

8

EBieleninik

PWr II

21

Dane w językach programowania

1) Typ tablicowy

tab = array[1..20] of Integer;

x[3]

2

1

3

20

x: tab

7

T = array[1..8,1..10] of real;

EBieleninik

PWr II

22

2

1

7

10

y: T

y[3,6]

1

1

2

3

3

8

Dane w językach programowania

1) Typ rekordowy

adres = record

kod:

string[6];

miejscowosc: string[25];
ulica:

string[30];

numer:

Byte;

mieszkanie:

Byte

end;

EBieleninik

PWr II

23

end;

20

W r o c ł a w

K a r k o n o s k a

3

55-555

mój_adres: adres

Wyrażenia arytmetyczne

Elementy składowe wyrażeń arytmetycznych:

• stałe, zmienne (typu całkowitego lub rzeczywistego)

• operatory arytmetyczne

* - mnożenie
/ - dzielenie

+ - dodawanie

EBieleninik

PWr II

24

+ - dodawanie

-

- odejmowanie (i znak ujemny)

div - dzielenie całkowitoliczbowe

mod – reszta z dzielenia całkowitoliczbowego

a+b*c-d

(a+b)*(c-d) 13 DIV 4

13 MOD 4

background image

Elementy składowe wyrażeń logicznych:

• stałe, zmienne (typu Boolean)

• operatory logiczne

Wyrażenia logiczne

NOT - negacja

AND - iloczyn logiczny

OR - suma logiczna

EBieleninik

PWr II

25

OR - suma logiczna

Przykłady:

a := true;

b := false;

c := a OR b AND c;

Wyrażenia relacyjne

Operatory relacji:

= - równe

<> - różne

< - mniejsze

> - większe

<= - mniejsze lub równe

EBieleninik

PWr II

26

<= - mniejsze lub równe

>= - większe lub równe

(a < b) OR (a>d)

delta >= 0

a<>0

Języki programowania

Instrukcje - Pascal

1.

Instrukcja przypisania

zmienna

:=

wyrażenie;

a := 10;
b := 5;
c := a + b;

:=

operator przypisania

EBieleninik

PWr II

27

c := a + b;

Języki programowania

2. Podejmowanie decyzji w programie

if <warunek> then

instrukcja1

else

instrukcja2;

if <warunek> then

instrukcja1;

EBieleninik

PWr II

28

if delta>=0 then

Begin

x1 := (-b – SQRT(delta))/(2*a);
x2 := (-b + SQRT(delta))/(2*a);
Writeln(x1, x2);

End

else

Writeln(„Delta ujemna”);

background image

Języki programowania

3. Organizacja obliczeń cyklicznych

while <warunek> do

Instrukcja;

3.1 Instrukcja Dopóki

3.2 Instrukcja Powtarzaj

k :=1;
x := 0;
while k < 6 do

begin

x := x + k;
k := k + 1;

end;

EBieleninik

PWr II

29

3.2 Instrukcja Powtarzaj

repeat

Instrukcja1;
Instrukcja2;
..................

until <warunek>;

k :=1;
x := 1;
repeat

x := x * k;
k := k + 1;

until k >= 6;

Języki programowania

3.3 Instrukcja Dla

for zm := wp to wk do

Instrukcja;

for zm := wp to wk do

begin

Instrukcja1;

suma := 0;
n := 10;

EBieleninik

PWr II

30

Instrukcja1;
Instrukcja2;
..................

end;

n := 10;
for i := 1 to 10 do

suma := suma + i;

Języki programowania

4. Instrukcje wejścia/wyjścia

4.1 Czytanie danych

read (lista_argumentów);

read (a,b);
writeln (‘a = ‘, a);
writeln (‘b = ‘, b);

readln (lista_argumentów);

EBieleninik

PWr II

31

4.2 Wyprowadzanie wyników

write (lista_argumentów);

writeln (‘b = ‘, b);

writeln (lista_argumentów);

Języki programowania - podprogramy

Podprogramy

Podprogram

to wyróżniona część programu komunikująca się z pozostałą w

ś

ciśle określony sposób.

Do komunikacji są wykorzystywane parametry, w definicji programu nazywane

parametrami formalnymi

, a w wywołaniu

parametrami aktualnymi.

Podprogram może być wielokrotnie wywoływany z części głównej programu
lub z innego podprogramu.

EBieleninik

PWr II

32

lub z innego podprogramu.

Wywoływanie podprogramu polega na podaniu jego nazwy oraz w nawiasach
parametrów.

pd :=

sqrt

(delta);

background image

Języki programowania - podprogramy

Dlaczego stosuje się podprogramy ?

1. Program napisany z podziałem na podprogramy jest bardziej czytelny i zrozumiały

2. Pewne fragmenty programu, które się powtarzają lub realizują ściśle określone

operacje, powinny być wyodrębnione i zapisane w postaci jednego podprogramu.

3. Podczas uruchamiania programu można testować poszczególne podprogramy

oddzielnie, a następnie uruchomić cały program.

EBieleninik

PWr II

33

oddzielnie, a następnie uruchomić cały program.

Języki programowania - biblioteki

Dla poszczególnych języków programowania opracowano bogate biblioteki
podprogramów, zazwyczaj pogrupowanych tematycznie.

Przykładowe biblioteki:

• biblioteki obliczeń numerycznych

• biblioteki podprogramów graficznych

• biblioteki obliczeń statystycznych

EBieleninik

PWr II

34

• biblioteki obliczeń statystycznych

• biblioteki do przetwarzania tekstów

• biblioteki obliczeń ekonomicznych

Przykładowe funkcje standardowe w Pascalu:

• SIN(x), COS(x), SQRT(x), LOG(x), ABS(x), ........

Program Oblicz_silnie;
Var

n, i, silnia: Integer;

Begin

Writeln(‘ Podaj wartosc n ‘);
Readln (n);
silnia :=1;
for i := 2 to n do

Przykłady programów

EBieleninik

PWr II

35

for i := 2 to n do

silnia := silnia*i;

Writeln(‘silnia = ‘, silnia);

End.

Program MaxMin;
Var

max, min : Real;
a : array[1..20] of Real;
i, n: Integer;

Begin

................... czytanie danych
max := a[1]; min := a[1];

Przykłady programów

Program wyznacza liczbę
maksymalną i minimalną
w tablicy n liczb.

EBieleninik

PWr II

36

max := a[1]; min := a[1];
for i :=1 to n do

begin

if a[i] > max then max := a[i];

if a[i] < min then min := a[i];

end;

Writeln (max, min);

End.

background image

Program SumaLiczb;
Var

a, suma: Real;
Begin

suma := 0;
Readln(a);
while (a <> 0) do

Przykłady programów

Program oblicza sumę liczb
czytanych z klawiatury.

EBieleninik

PWr II

37

while (a <> 0) do

Begin

suma := suma + a;
Readln(a);

End;

Writeln(suma);

End.

Program RownanieKwadratowe;
Var

a,b,c,delta,x1,x2,x: Real;

Begin

Writeln(‘Podaj wspolczynniki a, b, c ‘);

Readln (a,b,c);
if (a = 0) then

if (b = 0) then Writeln(‘Zle dane’)

else Begin

x := -c/b;
Writeln(x);

End;

PWr II

38

End;

else Begin

delta := b*b – 4*a*c;

if (delta >= 0) then

Begin

x1 := (-b - SQRT(delta))/(2*a);
x2 := (-b + SQRT(delta))/(2*a);
Writeln(x1,x2);

End
else Writeln(‘Delta ujemna’);

End

End.

EBieleninik

K O N I E C

EBieleninik

PWr II

39


Wyszukiwarka

Podobne podstrony:
jezyki progr 11
Jezyki progr 05
jezyki progr 5
jezyki progr 12
JĘZYKI PROGR praca kontrolna, szkola, programowanie
jezyki progr
jezyki progr 12
Jezyki progr 05
PROGr Zoosanitarne OS lato 10 11
11 Jezyki programowania Histor Nieznany
Rozdz.11 czasowniki -folia, Języki, J. Rosyjski
1 i 11 listopada, Jesteśmy Polakami, Jesteśmy Polakami, mówimy językiem polskim
11 Posługiwanie się językiem obcym
11 Mowa – języki świata – poszukiwania języka uniwersalnego

więcej podobnych podstron