background image

 

Języki programowania

 

 

Algorytmy i podstawy programowania 

Algorytmy (na podstawie materiałów dr inż. Robert Arsoba) 

Czym jest programowanie? 

Programowanie

 

to formułowanie ciągu operacji 

rozwiązującego dany problem w postaci 
akceptowalnej przez komputer. 
 
Proces tworzenia programu (systemu) 
komputerowego, na który składają się 
opracowywanie założeń, kodowanie i testowanie.  
 
Dobre programowanie łączy elementy inżynierii, 
„rzemiosła” i „sztuki”. 

background image

Algorytmy (na podstawie materiałów dr inż. Robert Arsoba) 

Podstawowe pojęcia 

Algorytm 

Język programowania 

Program 

Kod źródłowy i wynikowy 

Kompilacja 

Programowanie strukturalne i obiektowe 

Środowisko programistyczne 

Algorytmy (na podstawie materiałów dr inż. Robert Arsoba) 

Algorytm 

Algorytm

 to 

dokładny, jednoznacznie sformułowany sposób 

postępowania, umożliwiający rozwiązanie określonego 
zadania w 

skończonej liczbie kroków. 

(zbiór poleceń ze wskazaniem porządku, w jakim mają być 
realizowane). 
 
Słowo 

algorytm

 pochodzi od przydomka matematyka 

arabskiego (IX w.) Al-Chwarizmi (Algorismus, Algorithmus). 

Zapis algorytmu: 

 

w postaci opisu słownego 

 w postaci pseudokodu 

 w postaci schematu blokowego 

background image

Algorytmy (na podstawie materiałów dr inż. Robert Arsoba) 

Schematy blokowe

Podstawowe symbole

poczatek lub koniec algorytmu

operacja wejscia/wyjscia

lacznik

START

STOP

1

1

WE

WY

łącznik 

Algorytmy (na podstawie materiałów dr inż. Robert Arsoba) 

Schematy blokowe

Podstawowe symbole

blok operacyjny 

(wykonanie dzialania)?

blok 

decyzyjny

TAK

NIE

PRAWDA

FALSZ

background image

Algorytmy (na podstawie materiałów dr inż. Robert Arsoba) 

Przyklad schematu blokowego

SIEC DZIALAN

DIAGRAM

PRZEPLYWU

DANYCH

>= 0

Start

Oblicz

Wczytaj a, b, c

Zalozenie:

jest rózne od 0

Brak pierwiastków 

rzeczywistych

ac

b

d

4

2

a

d

b

x

2

2

,

1

x1, x2

Stop

TAK

NIE

Podstawy programowania (na podstawie materiałów dr inż. Robert Arsoba) 

Program komputerowy 

Program

 

to ciąg poleceń (instrukcji) do 

wykonania dla komputera. 
 

Program

 to algorytm zapisany w 

języku 

programowania. 

Program może występować w dwóch postaciach: 

  

kod źródłowy, 

  kod wynikowy. 

background image

Kod źródłowy i wynikowy 

Kod źródłowy

 to zapis programu komputerowego 

pewnym języku programowania. 

Jest to postać programu zrozumiała dla programisty 
(bez konieczności jego uruchamiania). 

Kod maszynowy

 to zapis programu komputerowego 

w języku maszynowym. Kod taki składa się z ciągu 
wartości binarnych (0 i 1), które oznaczają zarówno 
instrukcje jak i 

dane. Postać kodu maszynowego 

zależy od architektury procesora. 

Kod wynikowy

 to rezultat pracy translatora (np. 

kompilatora), nadający się do bezpośredniego 
wykonywania przez procesor. 

10 

Kompilacja 

Kompilator

 

to translator języka wysokiego 

poziomu, którego programy wynikowe mogą 
być wprowadzone do pamięci i wykonane 
dopiero po zakończeniu tłumaczenia 
(w odróżnieniu od interpretatora, w którym 
instrukcje wynikowe są wykonywane na bieżąco). 

Kompilacja

 

to proces przekształcania kodu 

źródłowego na kod wynikowy (maszynowy). 

background image

11 

Kompilacja kodu źródłowego w C 

Kod źródłowy 

*.C, *.H 

Kod wynikowy (pośredni) 

*.OBJ 

Kod wynikowy 

*.EXE 

Biblioteki 

KOMPILATOR 

KONSOLIDATOR 

(LINKER)

  

PREPROCESOR 

12 

Programowanie strukturalne 

Programowanie obiektowe 

Dane i 

wykonywane na nich operacje są 

połączone - tworzą tzw. klasę.           obiekt 

Program podzielony jest na niewielkie 
fragmenty (podprogramy) nazywane 
procedurami lub funkcjami. 

Komponentowe 

Modularne 

background image

13 

Środowisko programistyczne 

IDE (Integrated Development Environment)

  

C++ Builder 

Delphi 

JBuilder 

Visual C++ 

PowerBuilder 

.NET 

RAD (Rapid Application Development)

  

Eclipse 

Szybkie tworzenie aplikacji 

Kylix 

NetBeans 

Etapy tworzenia programu

ANALIZA 

PROBLEMU

POMYSL

(koncepcja)?

PROJEKT

(struktury danych, 

algorytmy)?

strukturalna

obiektowa

KODOWANIE

OPTYMALIZACJA

KODU

(szybkosc, rozmiar)?

KOMPILACJA

DOKUMENTACJA

TESTOWANIE

Wybór jezyka 

programowania

KONSERWACJA

C

Pascal