Programowanie. Technologie Informacyjne

Wielkość: px
Rozpocząć pokaz od strony:

Download "Programowanie. Technologie Informacyjne"

Transkrypt

1 Programowanie Technologie Informacyjne

2 Programowanie Proces projektowania, tworzenia, testowania i utrzymywania kodu źródłowego programów komputerowych lub urządzeń mikroprocesorowych Kod źródłowy jest napisany w języku programowania Programowanie wymaga dużej wiedzy i doświadczenia w wielu różnych dziedzinach 2

3 Języki programowania 3

4 Język programowania Zbiór zasad składni, instrukcji, dzięki którym powstaje kod źródłowy programu Procesor wykonuje program w kodzie maszynowym Programista używa języka zrozumiałego dla człowieka, który następnie jest kompilowany bądź interpretowany do postaci maszynowej 4

5 Wybór języka programowania Wybór języka programowania najbardziej dostosowanego do rozwiązywanego zadania i ewentualnej istniejącej infrastruktury paradygmat i rodzaj języka przenośność i wydajność kompilatorów dojrzałość oraz dostępność narzędzi i dokumentacji 5

6 History of Programming Languages 6

7 Języki programowania 1945 Plankalkül Pierwszy język programowania przedstawiony przez Konrada Zuse 1952 Asemblery Do 1959 roku ok. 200 języków programowania! 1957 Fortran John Backus, IBM, Fortran II, Fortran IV (1966), Fortran 77 (1977), Fortran 90 (1991) 1960 LISP J. McCarthy, MIT, InterLisp, MacLisp, PSL, Common LISP (1984), Scheme (dialekt LISPu) 1960 Algol Algol 60, Algol COBOL główne zmiany 1968 i 1974, ostatnia COBOL APL Ken Iverson (Harvard) APL/PC, APL*PLUS 1962 SIMULA Kristen Nygaard & Ole-Johan Dahl, pierwsza implementacja 1964, SIMULA 67, Simulink (Matlab) 1964 BASIC John G. Kemeny & Thomas E. Kurtz, Dartmouth College, wiele dialektów 1964 PL/I George Radin, dialekty: EPL, PL/S, XPL etc 7

8 Języki programowania 1971 Prolog Alain Colmerauer and Phillipe Roussel, Univ. Aix-Marseille, Prolog-2, Prolog++, Prolog-D-Linda 1972 C Dennis Ritchie, Bell Labs, C* do programów współbieżnych, dialekty: Visual C 1975 Pascal N. Wirth, ETH, dialekty: Pascal Plus, TurboPascal, Pascal/R, wiele innych 1979 Modula-2 N. Wirth, ETH, wersja I z 1977 roku, dialekty: Modula-2+, Modula-3, Modula-P, Modula/R 1980 dbase II wersje późniejsze: dbase III, III+, IV, V 1983 Smalltalk Ada Xerox PARC, pod kierownictwem Alana Kay'a, rozwój od 1970 roku, Smalltalk/V na PC. Jean Ichbiah, CII Honeywell, standard Ada 83, rozszerzenia Ada++, Ada 9X nowy standard 1986 C++ Bjarne Stroustrup, AT&T, liczne implementacje 1988 Mathematica Steven Wolfram, oparta na języku SMP, ver Java SunSoft 8

9 Najpopularniejsze Języki Programowania Ratings Nov ,92% 2,40% 3,49% 4,67% 18,37% 5,35% 8,17% 17,32% 10,00% 10,18% TIOBE Programming Community Index for November 2009 Java C PHP C++ (Visual) Basic C# Python Perl JavaScript Ruby 9

10 Najpopularniejsze Języki Programowania Ratings Nov ,19% 2,47% 1,91% 5,47% 18,51% 5,68% 5,71% 16,72% 7,81% 9,50% TIOBE Programming Community Index for November 2010 Java C C++ PHP C# Python (Visual) Basic Objective-C Perl Ruby 10

11 Najpopularniejsze Języki Programowania 11

12 Najpopularniejsze Języki Programowania Position Programming Language Nov 2010 Nov 2005 Nov 1995 Nov 1985 Java C C PHP C# Python (Visual) Basic Objective-C Perl Ruby Lisp Ada

13 Języki programowania Języki niskiego i wysokiego poziomu Języki kompilowane, interpretowane, kompilowanointerpretowany Języki pierwszej, drugiej, trzeciej, czwartej generacji 13

14 Języki pierwszej generacji Języki maszynowe, czyli języki procesorów Instrukcje są w nich zapisywane w postaci liczb binarnych

15 Języki drugiej generacji Języki symboliczne, asemblery. języki niskiego poziomu, pod względem składni tożsame z językiem maszynowym zamiast liczb używa się łatwiejszych do zapamiętania mnemoników (jmp, mov) jmp ffff:0 mov ax, bx add ax, 1 15

16 Języki trzeciej generacji Języki wysokiego poziomu Jedna instrukcja programu jest tłumaczona na kilka instrukcji procesora (5-10) Pierwszym językiem tego typu był ALGOL języki niestrukturalne: FORTH, BASIC języki strukturalne: Pascal, C, FORTRAN języki zorientowane obiektowo: C++, Java if(!x) printf("nie wolno dzielić przez zero\n"); return 1; 16

17 Języki czwartej generacji 4GL Języki bardzo wysokiego poziomu Języki zapytań do baz danych SQL Generatory raportów / stron Mathematica Przetwarzanie danych, analiza i raportowanie Tworzenie GUI Języki zorientowane problemowo, ang. task oriented languages Syntaktyka wielu języków czwartej generacji przypomina składnię języka naturalnego SELECT Nazwa FROM "Faktura.db" WHERE Cena >

18 Języki piątej generacji Języki sztucznej inteligencji Języki systemów ekspertowych Języki najbardziej zbliżone do języka naturalnego Przykładem języka piątej generacji jest PROLOG?- polaczenie(sf, ny, Odlot, Przylot), Odlot > 900. Odlot = 930, Przylot = 2200? ; no 18

19 Paradygmat programowania Programowanie proceduralne Programowanie strukturalne Programowanie funkcyjne Programowanie imperatywne Programowanie obiektowe Programowanie uogólnione Programowanie zdarzeniowe Programowanie logiczne (np. Prolog) Programowanie aspektowe (np. AspectJ) Programowanie deklaratywne 19

20 Paradygmat programowania Category Ratings Nov 2009 Delta Nov 2008 Object-Oriented Languages 54.4% -3.2% Procedural Languages 41.6% +2.8% Functional Languages 2.8% +0.2% Logical Languages 1.3% +0.1% Category Ratings Nov 2010 Delta Nov 2009 Object-Oriented Languages 56.7% +2.4% Procedural Languages 38.0% -3.5% Functional Languages 3.6% +0.7% Logical Languages 1.7% +0.4% 20

21 programowanie imperatywne najbardziej pierwotny sposób programowania, program postrzegany jest jako ciąg poleceń dla komputera Fortran, Algol, Pascal, Ada, C instrukcje podstawienia działają na danych pobranych z pamięci, wynik również umieszczają w pamięci, abstrakcją komórek pamięci są zmienne 21

22 programowanie obiektowe zbiór porozumiewających się ze sobą obiektów, czyli jednostek zawierających pewne dane i umiejących wykonywać na nich pewne operacje powiązanie danych (czyli stanu) z operacjami na nich (czyli poleceniami) w całość, stanowiącą odrębną jednostkę obiekt 22

23 programowanie funkcyjne program to po prostu złożona funkcja (w sensie matematycznym), która otrzymawszy dane wejściowe wylicza pewien wynik brak stanu maszyny, nie ma zmiennych 23

24 Języki programowania Wieloparadygmatowe Ada C++ Common Lisp D Fortran Icon JavaScript Nemerle Perl Python Ruby PHP Snobol Proceduralne i strukturalne AWK C COBOL Forth Modula-2 Oberon Pascal PL/SQL REXX Lib Sh Obiektowe C# Eiffel Java Object Pascal Objective-C SmalltalkVB.NET Funkcyjne Erlang F# Haskell Lisp ML Ocaml Scheme Logiczne Prolog 24

25 Podstawy Programowania Programowanie strukturalne 25

26 Zmienne Zmienne stanowią abstrakcję komórek pamięci Nazwa dozwolone znaki, liczba znaków Adres Wartość zawartość komórki pamięci związanej z daną zmienną Typ zbiór dopuszczalnych wartości, precyzja 26

27 Zmienne typy skalarne Deklaracja Nazwa zmiennej Wartość początkowa typ identyfikator = inicjalizator; Definicja char x = A ; // typ char 1 bajt, // kod ASCII lub liczba całkowita int y = 5; // typ int 4 bajty // liczba całkowita 27

28 Zmienne typy tablicowe char wydzial[8] = WEiA,PG ; //tablica znakowa 8 elementów typu char //zdefiniowano 7 znaków i kod zakończenia ciągu \0 Adres w pamięci wydzial[0] W E i A, P G \ Kod zakończenia int dane[4] = 32, 47, 25, 58; //definicja tablicy liczbowej 4 elementów typu int 28

29 Instrukcja przypisania 29

30 Instrukcja warunkowa 30

31 Instrukcja warunkowa Instrukcja grupująca Czy warunek jest spełniony? Tak Nie //sekwencja na Tak //sekwencja na Nie 31

32 Instrukcja warunkowa #include <iostream.h> int main (void) double x = 0; cout << ocena = ; cin >> x; if (x >= 3.0) cout << zaliczenie << endl; else cout << poprawka << endl; return 0; Instrukcja cout wyprowadza na monitor komunikat ocena=. Instrukcja cin pozwala wprowadzić dane z klawiatury pod zmienną x. Jeśli x>=3 to instrukcja cout wyprowadzi na monitor (konsolę) komunikat o zaliczeniu. Jeśli x<3 to instrukcja cout wyprowadzi na monitor (konsolę) komunikat o poprawce. Do wyprowadzania informacji tekstowej na monitor stosuje się operator <<. Do wprowadzania informacji z klawiatury stosuje się operator >>. 32

33 param = wartosc case Tak param=c1? true Nie false Inicjalizacja parametru //gałąź pierwsza c1 break Instrukcja przerwania nakazuje zakończenie instrukcji decyzyjnej. case param=c2? Tak true //gałąź druga c2 break Nie false case param=c3? Tak true //gałąź trzecia c3 break Nie false default //instrukcja domyslna 33

34 param = wartosc Inicjalizacja parametru case param=c1? Nie false case param=c2? Tak true Tak true //gałąź pierwsza c1 //gałąź druga c2 break break Gałąź pierwsza realizowana, gdy warunek porównania jest na true. Przy braku instrukcji przerwania badany jest warunek w gałęzi 2. Nie false case param=c3? Tak true //gałąź trzecia c3 break Nie false default //instrukcja domyslna 34

35 param = wartosc Inicjalizacja parametru case param=c1? Nie false Tak true //gałąź pierwsza c1 break case param=c2? Nie false Tak true //gałąź druga c2 break Warunek true w gałęzi drugiej powoduje jej realizację. Gdy jest instrukcja przerwania, to następuje zakończenie. Jeśli nie, to badany jest warunek w gałęzi trzeciej. case param=c3? Tak true //gałąź trzecia c3 break Nie false default //instrukcja domyslna 35

36 param = wartosc Inicjalizacja parametru case param=c1? Nie false Tak true //gałąź pierwsza c1 break case param=c2? Tak true //gałąź druga c2 break Nie false case param=c3? Nie false Tak true //gałąź trzecia c3 break Jeśli warunek w gałęzi trzeciej jest na true, to jest ona realizowana. Podobny scenariusz dotyczy następnych gałęzi jeśli występują. default //instrukcja domyslna 36

37 param = wartosc Inicjalizacja parametru case param=c1? Nie false Tak true //gałąź pierwsza c1 break case param=c2? Tak true //gałąź druga c2 break Nie false case Tak //gałąź trzecia c3 param=c3? true Nie false default //instrukcja domyslna break Gdy żaden warunek nie jest spełniony, to realizowana jest sekwencja instrukcji w sekcji default. 37

38 Instrukcja warunkowa #include <iostream.h> int main() char symbol = 'N'; cout << "Wybierz element <R,L,C>: "; cin >> symbol; switch (symbol) case 'R':cout Wyprowadzenie << "Rezystor" komunikatu << endl; na break; monitor i case 'L':cout oczekiwanie << "Cewka" na << wprowadzenie endl; break; danej z klawiatury case 'C':cout << "Kondensator" << endl; break; default:cout << "Inny element" << endl; return 0; 38

39 Instrukcja warunkowa Instrukcja switch zawiera 4 gałęzie. Trzy w sekcji case i jedną w sekcji default. Gałęzie w sekcji case zawierają instrukcje przerwania break, co oznacza, że #include <iostream.h> przyporządkowanie symbolu do nazwy elementu jest int main() jednoznaczne. char symbol = 'N'; cout << "Wybierz element <R,L,C>: "; cin >> symbol; switch (symbol) case 'R':cout << "Rezystor" << endl; break; case 'L':cout << "Cewka" << endl; break; case 'C':cout << "Kondensator" << endl; break; default:cout << "Inny element" << endl; return 0; 39

40 Instrukcja pętli 40

41 Instrukcja pętli #include <iostream.h> int main() double oceny[5] = 3,4,5,2,3.5; double suma = 0; for(int i=0; i<5; i++) suma = suma + oceny[i]; double srednia = suma/5; cout << "srednia = " << srednia << endl; return 0; Definicja tablicy oceny typu double o rozmiarze 5. Definicja zmiennej suma o wartości 0. 41

42 Instrukcja pętli #include <iostream.h> int main() double oceny[5] = 3,4,5,2,3.5; double suma = 0; for(int i=0; i<5; i++) suma = suma + oceny[i]; double srednia = suma/5; cout << "srednia = " << srednia << endl; return 0; Instrukcja for wykonuje 5 cykli. Zmienna sterująca i rozpoczyna proces od wartości 0 i pod koniec cyklu jest zwiększana o 1 (i++). W każdej iteracji kolejny element tablicy jest dodawany do zmiennej suma. 42

43 Instrukcja pętli #include <iostream.h> int main() double oceny[5] = 3,4,5,2,3.5; double suma = 0; for(int i=0; i<5; i++) suma = suma + oceny[i]; double srednia = suma/5; cout << "srednia = " << srednia << endl; return 0; Definicja zmiennej srednia inicjowanej do wartości średniej z sumy ocen. Wyprowadzenie informacji o średniej na monitor 43

44 Podstawy Programowania Programowanie obiektowe 44

45 Programowanie obiektowe Języki programowania obiektowego Simula 67 Smalltalku 80 C++ Java 45

46 Podejście strukturalne int main() //kod funkcji glownej //wymiary 1 wieloscianu double a1 = 1; double b1 = 2; double c1 = 3; //... //wymiary 2 wieloscianu double a2 = 4; double b2 = 5; double c2 = 6; //... return 0; Program wykonuje obliczenia na wielobokach o wymiarach: szerokość a, długość b, wysokość c Niewygodny i nieczytelny kod programu, w którym zmienne są deklarowane dla n wieloboków 46

47 Podejście strukturalne cd. //struktura o nazwie Box struct Box double a; double b; double c; int main() //definicja zmiennej box1 Box box1 = 1,2,3; //definicja zmiennej box2 Box box2 = 4,5,6; //... return 0; Uporządkowanie kody wykorzystując strukturę o nazwie Box Możliwość prostego tworzenia n wieloboków wykorzystując tablice zmiennych strukturowych Box 47

48 Podejście strukturalne cd. Następnym zadaniem programistycznym jest obliczenie objętości każdego zdefiniowanego prostopadłościanu. Należy stworzyć metodę (funkcję) wykonującą ten proces 48

49 struct Box double a; double b; double c; //struktura o nazwie Box //definicja funkcji Volume double Volume (double u, double v, double w) return u*v*w; int main() 49 //funkcja glowna main //definicja zmiennej box1 Box box1 = 1,2,3; double V1 = Volume(box1.a, box1.b, box1.c); //definicja zmiennej box2 Box box2 = 4,5,6; double V2 = Volume(box2.a, box2.b, box2.c); //... return 0; Dodanie funkcji Volume liczącej objętość figury

50 Programowanie obiektowe class CBox //klasa o nazwie Cbox public: Zamiast struktury Box double m_a; double m_b; wprowadzono klasę CBox double m_c; int main() //funkcja glowna main //definicja obiektu box1 CBox box1; box1.m_a = 1; //inicjalizacja pola m_a box1.m_b = 2; //inicjalizacja pola m_b box1.m_c = 3; //inicjalizacja pola m_c //definicja obiektu box2 CBox box2; //... return 0; 50

51 Programowanie obiektowe class CBox //klasa o nazwie Cbox public: double m_a; double m_b; double m_c; int main() //funkcja glowna main Zmienna typu klasy //definicja obiektu box1 CBox box1; nazywa się obiektem box1.m_a = 1; //inicjalizacja pola m_a box1.m_b = 2; //inicjalizacja pola m_b box1.m_c = 3; //inicjalizacja pola m_c //definicja obiektu box2 CBox box2; //... return 0; 51

52 Programowanie obiektowe class CBox //klasa o nazwie Cbox public: W tym przykładzie wymagany jest double m_a; double m_b; operator bezpośredniego dostępu do double m_c; własności: int main() //funkcja glowna main nazwa_obiektu.własność_obiektu //definicja obiektu box1 CBox box1; operator bezpośredniego dostępu - box1.m_a = 1; //inicjalizacja pola m_a kropka box1.m_b = 2; //inicjalizacja pola m_b box1.m_c = 3; //inicjalizacja pola m_c //definicja obiektu box2 CBox box2; //... return 0; 52

53 class Cbox //klasa o nazwie Cbox public: double m_a; Definicja konstruktora klasy double m_b; double m_c; CBox(double a, double b, double c) m_a=a; m_b=b; m_c=c; int main() //funkcja glowna main //definicja obiektu box1 CBox box1 = CBox(1,2,3); Definicja obiektu klasy z //definicja obiektu box2 CBox box2 = CBox(4,5,6); inicjacją zmiennych obiektu return 0; wykorzystując konstruktor 53

54 class CBox //klasa o nazwie CBox public: double m_a; double m_b; double m_c; CBox(double a, double b, double c) m_a=a; Dodanie funkcji liczącej objętość m_b=b; m_c=c; do sekcji publicznej klasy CBox double Volume() return m_a*m_b*m_c; int main() //funkcja glowna main //definicja obiektu box1 CBox box1 = CBox(1,2,3); //operacja obliczenia objetosci i przypisania do V1 double V1 = box1.volume(); //... return 0; 54 Wywołanie przez obiekt box1 swojej metody Volume() i przypisanie wartości zwróconej dr inż. Michał przez Michnatę metodę zmiennej V1

55 class CBox //klasa o nazwie Cbox public: //sekcja publiczna CBox(double a, double b, double c) m_a=a; m_b=b; m_c=c; double Volume() return m_a*m_b*m_c; protected://sekcja chroniona private: //sekcja prywatna Zasoby sekcji prywatnej nie mogą być double m_a; double m_b; dziedziczone, sekcji chronionej tak double m_c; //... box1.m_a; //bledna operacja zasob prywatny //... 55

56 struct Box double a; double b; double c; double Volume (double u, double v, double w) return u*v*w; int main() Box box1 = 1,2,3; Box box2 = 4,5,6; double V1 = Volume(box1.a, box1.b, box1.c); double V2 = Volume(box2.a, box2.b, box2.c); return 0; 56 class CBox public: CBox(double a, double b, double c) m_a=a; m_b=b; m_c=c; double Volume() return m_a*m_b*m_c; protected: private: double m_a; double m_b; double m_c; int main() CBox box1 = CBox(1,2,3); CBox box2 = CBox(3,4,5); double V1 = box1.volume(); double V2 = box2.volume(); return 0;

57 Dziedziczenie chronione class Klasa_B : protected Klasa_A Klasa A Public Protected Private Klasa B Public Protected Private 57

58 Dziedziczenie prywatne class Klasa_B : private Klasa_A Klasa A Public Protected Private Klasa B Public Protected Private 58

59 Obiektowy PHP class nazwaklasy var $zmienna1; function construct($param) echo Konstruktor wywołany z parametrem $param <br /> ; public $zmienna2 protected function operacja1() echo Wykonano opracje1 59

60 Narzędzia programistyczne 60

61 Proces programowania Sformułowanie problemu (specyfikacja) Analiza problemu i znalezienie metody jego rozwiązania (opracowanie algorytmu) Zakodowanie algorytmu (napisanie programu) Uruchomienie i przetestowanie programu Konserwacja oprogramowania 61

62 CASE, UML Upper-CASE wspomaganie fazy określania wymagań i analizy (modelowania), nie wspomagając procesu implementacji nie są związane z żadnym środowiskiem programistycznym Lower-CASE stosowane do etapów projektowania i implementacji, w związku z czym na ogół są jednoznacznie związane z środowiskiem lub językiem programowania 62

63 CASE, UML 63

64 CASE, UML 64

65 CASE, UML 65

66 Narzędzia programistyczne Edytory Debugery Kompilatory Generatory dokumentacji IDE RAD (Rapid Application Development) 66

67 Narzędzia programistyczne 67

68 Narzędzia programistyczne 68

69 Narzędzia programistyczne 69

70 Narzędzia programistyczne 70

71 Zastosowania praktyczne Elektrotechnika 71

72 Procesory sygnałowe (DSP) Assembler C 72

73 Sterowniki programowalne (PLC) lista instrukcji (IL), język strukturalny (ST) Schemat drabinkowy (LD) Schemat blokowy (FBD) Graf sekwencji (SFC) 73

74 Programy CAD AutoCAD VisualLISP ObjectARX Visual Basic for Application 74

75 Programowanie zastosowania Układy pomiarowe i akwizycji danych LabView 75

76 Modelowanie matematyczne MATLAB/Simulink 76

77 Modelowanie matematyczne Wolfram/Mathematica 77

78 Modelowanie matematyczne Wolfram/Mathematica 78

79 Programowanie zastosowania Obwody elektryczne SPICE, MAST Urządzenia elektryczne VHDL 79

80 Literatura 81

Programowanie. programowania. Klasa 3 Lekcja 9 PASCAL & C++

Programowanie. programowania. Klasa 3 Lekcja 9 PASCAL & C++ Programowanie Wstęp p do programowania Klasa 3 Lekcja 9 PASCAL & C++ Język programowania Do przedstawiania algorytmów w postaci programów służą języki programowania. Tylko algorytm zapisany w postaci programu

Bardziej szczegółowo

Krótka historia języków programowania

Krótka historia języków programowania Krótka historia języków programowania Rok Język Twórca, wersje, dialekty, uwagi 1952 asemblery 1957 Fortran 1960 LISP 1960 Algol Algol 60, Algol 68 1960 COBOL 1962 APL 1962 SIMULA 1964 BASIC Do 1959 roku

Bardziej szczegółowo

Język ludzki kod maszynowy

Język ludzki kod maszynowy Język ludzki kod maszynowy poziom wysoki Język ludzki (mowa) Język programowania wysokiego poziomu Jeśli liczba punktów jest większa niż 50, test zostaje zaliczony; w przeciwnym razie testu nie zalicza

Bardziej szczegółowo

Programowanie. Pascal - język programowania wysokiego poziomu. Klasa 2 Lekcja 9 PASCAL

Programowanie. Pascal - język programowania wysokiego poziomu. Klasa 2 Lekcja 9 PASCAL Programowanie Pascal - język programowania wysokiego poziomu Klasa 2 Lekcja 9 PASCAL Język programowania Do przedstawiania algorytmów w postaci programów służą języki programowania. Tylko algorytm zapisany

Bardziej szczegółowo

Język JAVA podstawy. Wykład 3, część 3. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

Język JAVA podstawy. Wykład 3, część 3. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna Język JAVA podstawy Wykład 3, część 3 1 Język JAVA podstawy Plan wykładu: 1. Konstrukcja kodu programów w Javie 2. Identyfikatory, zmienne 3. Typy danych 4. Operatory, instrukcje sterujące instrukcja warunkowe,

Bardziej szczegółowo

METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02

METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02 METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE Wykład 02 NAJPROSTSZY PROGRAM /* (Prawie) najprostszy przykład programu w C */ /*==================*/ /* Między tymi znaczkami można pisać, co się

Bardziej szczegółowo

Wykład V. Rzut okiem na języki programowania. Studia Podyplomowe INFORMATYKA Podstawy Informatyki

Wykład V. Rzut okiem na języki programowania. Studia Podyplomowe INFORMATYKA Podstawy Informatyki Studia Podyplomowe INFORMATYKA Podstawy Informatyki Wykład V Rzut okiem na języki programowania 1 Kompilacja vs. interpretacja KOMPILACJA Proces, który przetwarza program zapisany w języku programowania,

Bardziej szczegółowo

Podstawy Programowania. Języki programowania

Podstawy Programowania. Języki programowania Podstawy Programowania Wykład XII Języki programowania Robert Muszyński ZPCiR ICT PWr Zagadnienia: generacje języków progamowania, kod maszynowy, asembler, drzewo genealogiczne języków wysokiego poziomu,

Bardziej szczegółowo

1 Podstawy c++ w pigułce.

1 Podstawy c++ w pigułce. 1 Podstawy c++ w pigułce. 1.1 Struktura dokumentu. Kod programu c++ jest zwykłym tekstem napisanym w dowolnym edytorze. Plikowi takiemu nadaje się zwykle rozszerzenie.cpp i kompiluje za pomocą kompilatora,

Bardziej szczegółowo

Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Opracował Jan T. Biernat

Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Opracował Jan T. Biernat Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Program, to lista poleceń zapisana w jednym języku programowania zgodnie z obowiązującymi w nim zasadami. Celem programu jest przetwarzanie

Bardziej szczegółowo

Języki i paradygmaty programowania Wykład 2. Dariusz Wardowski. dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/18

Języki i paradygmaty programowania Wykład 2. Dariusz Wardowski. dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/18 Dariusz Wardowski dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/18 Literatura Języki i paradygmaty programowania Wykład 2 1. C. S. Horstman, G. Cornell, core Java 2 Podstawy, Helion 2003

Bardziej szczegółowo

Programowanie obiektowe, wykład nr 6. Klasy i obiekty

Programowanie obiektowe, wykład nr 6. Klasy i obiekty Dr hab. inż. Lucyna Leniowska, prof. UR, Zakład Mechatroniki, Automatyki i Optoelektroniki, IT Programowanie obiektowe, wykład nr 6 Klasy i obiekty W programowaniu strukturalnym rozwój oprogramowania oparto

Bardziej szczegółowo

INFORMATYKA, TECHNOLOGIA INFORMACYJNA ORAZ INFORMATYKA W LOGISTYCE

INFORMATYKA, TECHNOLOGIA INFORMACYJNA ORAZ INFORMATYKA W LOGISTYCE Studia podyplomowe dla nauczycieli INFORMATYKA, TECHNOLOGIA INFORMACYJNA ORAZ INFORMATYKA W LOGISTYCE Przedmiot JĘZYKI PROGRAMOWANIA DEFINICJE I PODSTAWOWE POJĘCIA Autor mgr Sławomir Ciernicki 1/7 Aby

Bardziej szczegółowo

Podstawy programowania wykład

Podstawy programowania wykład Podstawy programowania wykład WYDZIAŁ ELEKTRONIKI i INFORMATYKI dr inż. Robert Arsoba Politechnika Koszalińska Wydział Elektroniki i Informatyki POLITECHNIKA KOSZALIŃSKA 2009/2010 1 Materiały do wykładu

Bardziej szczegółowo

Wstęp do Informatyki. Program, proces tworzenia programu Środowisko programistyczne Języki programowania

Wstęp do Informatyki. Program, proces tworzenia programu Środowisko programistyczne Języki programowania Wstęp do Informatyki Program, proces tworzenia programu Środowisko programistyczne Języki programowania Program - definicje Program jest przekładem problemu użytkownika na język maszyny Niklaus Wirth:

Bardziej szczegółowo

Programowanie. Projektowanie funkcje programu tworzenie algorytmu i struktur danych. Programowanie implementacja algorytmu kompilacja programu

Programowanie. Projektowanie funkcje programu tworzenie algorytmu i struktur danych. Programowanie implementacja algorytmu kompilacja programu Programowanie V Dariusz Skibicki Wydział Inżynierii Mechanicznej Uniwersytet Technologiczno-Przyrodniczy im. Jana i Jędrzeja Śniadeckich w Bydgoszczy dariusz.skibicki(at)utp.edu.pl Programowanie Projektowanie

Bardziej szczegółowo

1 Podstawy c++ w pigułce.

1 Podstawy c++ w pigułce. 1 Podstawy c++ w pigułce. 1.1 Struktura dokumentu. Kod programu c++ jest zwykłym tekstem napisanym w dowolnym edytorze. Plikowi takiemu nadaje się zwykle rozszerzenie.cpp i kompiluje za pomocą kompilatora,

Bardziej szczegółowo

dr inż. Paweł Myszkowski Wykład nr 5 (16.03.2016)

dr inż. Paweł Myszkowski Wykład nr 5 (16.03.2016) dr inż. Paweł Myszkowski Politechnika Białostocka Wydział Elektryczny Elektronika i Telekomunikacja, semestr II, studia stacjonarne I stopnia Rok akademicki 2015/2016 Wykład nr 5 (16.03.2016) Plan prezentacji:

Bardziej szczegółowo

Strona główna. Strona tytułowa. Programowanie. Spis treści. Sobera Jolanta 16.09.2006. Strona 1 z 26. Powrót. Full Screen. Zamknij.

Strona główna. Strona tytułowa. Programowanie. Spis treści. Sobera Jolanta 16.09.2006. Strona 1 z 26. Powrót. Full Screen. Zamknij. Programowanie Sobera Jolanta 16.09.2006 Strona 1 z 26 1 Wprowadzenie do programowania 4 2 Pierwsza aplikacja 5 3 Typy danych 6 4 Operatory 9 Strona 2 z 26 5 Instrukcje sterujące 12 6 Podprogramy 15 7 Tablice

Bardziej szczegółowo

Języki i paradygmaty programowania

Języki i paradygmaty programowania Języki i paradygmaty programowania WYDZIAŁ ELEKTRONIKI i INFORMATYKI dr inż. Robert Arsoba Politechnika Koszalińska Wydział Elektroniki i Informatyki POLITECHNIKA KOSZALIŃSKA 2009/2010 Materiały do wykładu

Bardziej szczegółowo

Programowanie obiektowe W1 Wprowadzenie. Dr hab. inż. Lucyna Leniowska, prof. UR Zakład Mechatroniki, Automatyki i Optoelektroniki

Programowanie obiektowe W1 Wprowadzenie. Dr hab. inż. Lucyna Leniowska, prof. UR Zakład Mechatroniki, Automatyki i Optoelektroniki Programowanie obiektowe W1 Wprowadzenie Dr hab. inż. Lucyna Leniowska, prof. UR Zakład Mechatroniki, Automatyki i Optoelektroniki Ogólna charakterystyka języka C++ C++ jest obiektowym językiem programowania,

Bardziej szczegółowo

Język programowania PASCAL

Język programowania PASCAL Język programowania PASCAL (wersja podstawowa - standard) Literatura: dowolny podręcznik do języka PASCAL (na laboratoriach Borland) Iglewski, Madey, Matwin PASCAL STANDARD, PASCAL 360 Marciniak TURBO

Bardziej szczegółowo

Programowanie obiektowe Wykład 1. Dariusz Wardowski. dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/20

Programowanie obiektowe Wykład 1. Dariusz Wardowski. dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/20 Dariusz Wardowski dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/20 O mnie prowadzący wykład: Dariusz Wardowski pokój: A334 dyżur: środa, godz. 10.00 12.00 e-mail: wardd@math.uni.lodz.pl

Bardziej szczegółowo

Paradygmaty programowania

Paradygmaty programowania Paradygmaty programowania Jacek Michałowski, Piotr Latanowicz 15 kwietnia 2014 Jacek Michałowski, Piotr Latanowicz () Paradygmaty programowania 15 kwietnia 2014 1 / 12 Zadanie 1 Zadanie 1 Rachunek predykatów

Bardziej szczegółowo

Java. język programowania obiektowego. Programowanie w językach wysokiego poziomu. mgr inż. Anna Wawszczak

Java. język programowania obiektowego. Programowanie w językach wysokiego poziomu. mgr inż. Anna Wawszczak Java język programowania obiektowego Programowanie w językach wysokiego poziomu mgr inż. Anna Wawszczak 1 Język Java Język Java powstał w roku 1995 w firmie SUN Microsystems Java jest językiem: wysokiego

Bardziej szczegółowo

Języki skryptowe w programie Plans

Języki skryptowe w programie Plans Języki skryptowe w programie Plans Warsztaty uŝytkowników programu PLANS Kościelisko 2010 Zalety skryptów Automatyzacja powtarzających się czynności Rozszerzenie moŝliwości programu Budowa własnych algorytmów

Bardziej szczegółowo

Wykład 4. Algorytmy i programy. Algorytmy + struktury danych = programy. Niklaus Wirth. Algorytm = logika + sterowanie.

Wykład 4. Algorytmy i programy. Algorytmy + struktury danych = programy. Niklaus Wirth. Algorytm = logika + sterowanie. Wykład 4 Algorytmy + struktury danych = programy Niklaus Wirth Algorytm = logika + sterowanie Robert Kowalski J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 80 / 277 algorytm program język

Bardziej szczegółowo

Paradygmaty programowania

Paradygmaty programowania Wg. J. Bylina, B. Bylina Przegląd języków i paradygmatów programowania, UMCS, Lublin 2011 Paradygmaty programowania Paradygmat (gr. Paradeigma) - wzorzec lub przykład Def. słownikowa: przyjęty sposób widzenia

Bardziej szczegółowo

Języki programowania

Języki programowania Języki programowania historia Programowanie w języku maszynowym komputera (1-sza generacja) Wprowadzenie nazw mnemonicznych kody operacji, identyfikatory argumenty; ręczne tłumaczenie Asembler program

Bardziej szczegółowo

Podstawy informatyki (3)

Podstawy informatyki (3) Podstawy informatyki (3) wykład : 15 godz. ćwiczenia : 15 godz. Prowadzący: dr inż. Jacek Piątkowski 1 Języki programowania Języki programowania - dają możliwość zapisu algorytmów w postaci zarówno wygodnej

Bardziej szczegółowo

Jerzy Nawrocki, Wprowadzenie do informatyki

Jerzy Nawrocki, Wprowadzenie do informatyki Jerzy Nawrocki, Jerzy Nawrocki Wydział Informatyki Politechnika Poznańska jerzy.nawrocki@put.poznan.pl Cel wykładu Programowanie imperatywne i język C Zaprezentować paradygmat programowania imperatywnego

Bardziej szczegółowo

Wstęp do programowania

Wstęp do programowania Wstęp do programowania Literatura David Harel. Rzecz o istocie informatyki. Algorytmika. Wydawnictwa Naukowo-Techniczne. Wydanie trzecie. Seria: Klasyka informatyki. Warszawa 2000. Niklaus Wirth. Algorytmy

Bardziej szczegółowo

Wykład 4: Klasy i Metody

Wykład 4: Klasy i Metody Wykład 4: Klasy i Metody Klasa Podstawa języka. Każde pojęcie które chcemy opisać w języku musi być zawarte w definicji klasy. Klasa definiuje nowy typ danych, których wartościami są obiekty: klasa to

Bardziej szczegółowo

Szablony funkcji i szablony klas

Szablony funkcji i szablony klas Bogdan Kreczmer bogdan.kreczmer@pwr.wroc.pl Zakład Podstaw Cybernetyki i Robotyki Instytut Informatyki, Automatyki i Robotyki Politechnika Wrocławska Kurs: Copyright c 2011 Bogdan Kreczmer Niniejszy dokument

Bardziej szczegółowo

Podstawy języka C++ Maciej Trzebiński. Praktyki studenckie na LHC IFJ PAN. Instytut Fizyki Jądrowej Polskiej Akademii Nauk. M. Trzebiński C++ 1/16

Podstawy języka C++ Maciej Trzebiński. Praktyki studenckie na LHC IFJ PAN. Instytut Fizyki Jądrowej Polskiej Akademii Nauk. M. Trzebiński C++ 1/16 M. Trzebiński C++ 1/16 Podstawy języka C++ Maciej Trzebiński Instytut Fizyki Jądrowej Polskiej Akademii Nauk Praktyki studenckie na LHC IFJ PAN 6lipca2015 Uruchomienie maszyny w CC1 M. Trzebiński C++ 2/16

Bardziej szczegółowo

I - Microsoft Visual Studio C++

I - Microsoft Visual Studio C++ I - Microsoft Visual Studio C++ 1. Nowy projekt z Menu wybieramy File -> New -> Projekt -> Win32 Console Application w okienku Name: podajemy nazwę projektu w polu Location: wybieramy miejsce zapisu i

Bardziej szczegółowo

Rozdział 4 KLASY, OBIEKTY, METODY

Rozdział 4 KLASY, OBIEKTY, METODY Rozdział 4 KLASY, OBIEKTY, METODY Java jest językiem w pełni zorientowanym obiektowo. Wszystkie elementy opisujące dane, za wyjątkiem zmiennych prostych są obiektami. Sam program też jest obiektem pewnej

Bardziej szczegółowo

1. Wartość, jaką odczytuje się z obszaru przydzielonego obiektowi to: a) I - wartość b) definicja obiektu c) typ oboektu d) p - wartość

1. Wartość, jaką odczytuje się z obszaru przydzielonego obiektowi to: a) I - wartość b) definicja obiektu c) typ oboektu d) p - wartość 1. Wartość, jaką odczytuje się z obszaru przydzielonego obiektowi to: a) I - wartość b) definicja obiektu c) typ oboektu d) p - wartość 2. Poprawna definicja wskażnika b to: a) float *a, **b = &a; b) float

Bardziej szczegółowo

Programowanie, algorytmy i struktury danych

Programowanie, algorytmy i struktury danych 1/44 Programowanie, algorytmy i struktury danych materiały do wykładu: http://cez.wipb.pl/moodle/ email: m.tabedzki@pb.edu.pl strona: http://aragorn.pb.bialystok.pl/~tabedzki/ Marek Tabędzki Wymagania

Bardziej szczegółowo

Praktyka Programowania

Praktyka Programowania Praktyka Programowania Dariusz Dereniowski Materiały udostępnione przez Adriana Kosowskiego Katedra Algorytmów i Modelowania Systemów Politechnika Gdańska deren@eti.pg.gda.pl Gdańsk, 2010 strona przedmiotu:

Bardziej szczegółowo

Programowanie strukturalne i obiektowe

Programowanie strukturalne i obiektowe Programowanie strukturalne i obiektowe Język C część I Opracował: Grzegorz Flesik Literatura: A. Majczak, Programowanie strukturalne i obiektowe, Helion, Gliwice 2010 P. Domka, M. Łokińska, Programowanie

Bardziej szczegółowo

Programowanie komputerów

Programowanie komputerów Programowanie komputerów Wykład 1-2. Podstawowe pojęcia Plan wykładu Omówienie programu wykładów, laboratoriów oraz egzaminu Etapy rozwiązywania problemów dr Helena Dudycz Katedra Technologii Informacyjnych

Bardziej szczegółowo

Podstawy programowania

Podstawy programowania Podstawy programowania Część pierwsza Od języka symbolicznego do języka wysokiego poziomu Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót

Bardziej szczegółowo

Wstęp do Programowania Obiektowego. Wykład 13 Paradygmaty. Składnia i semantyka.

Wstęp do Programowania Obiektowego. Wykład 13 Paradygmaty. Składnia i semantyka. Wstęp do Programowania Obiektowego Wykład 13 Paradygmaty. Składnia i semantyka. 1 PRZEGLĄD PODSTAWOWYCH PARADYGMATÓW 2 Cztery podstawowe paradygmaty 1. Programowanie imperatywne. 2. Programowanie funkcyjne.

Bardziej szczegółowo

Podstawowe elementy proceduralne w C++ Program i wyjście. Zmienne i arytmetyka. Wskaźniki i tablice. Testy i pętle. Funkcje.

Podstawowe elementy proceduralne w C++ Program i wyjście. Zmienne i arytmetyka. Wskaźniki i tablice. Testy i pętle. Funkcje. Podstawowe elementy proceduralne w C++ Program i wyjście Zmienne i arytmetyka Wskaźniki i tablice Testy i pętle Funkcje Pierwszy program // Niezbędne zaklęcia przygotowawcze ;-) #include using

Bardziej szczegółowo

Wstęp do Informatyki dla bioinformatyków

Wstęp do Informatyki dla bioinformatyków Wstęp do Informatyki dla bioinformatyków Wykład 1. Wstęp do Wstępu Bartek Wilczyński bartek@mimuw.edu.pl Po pierwsze - Formalności 2 kolokwia (po 15 pkt) początek XI i koniec XII Dwa programy zaliczeniowe:

Bardziej szczegółowo

JAVA. Platforma JSE: Środowiska programistyczne dla języka Java. Wstęp do programowania w języku obiektowym. Opracował: Andrzej Nowak

JAVA. Platforma JSE: Środowiska programistyczne dla języka Java. Wstęp do programowania w języku obiektowym. Opracował: Andrzej Nowak JAVA Wstęp do programowania w języku obiektowym Bibliografia: JAVA Szkoła programowania, D. Trajkowska Ćwiczenia praktyczne JAVA. Wydanie III,M. Lis Platforma JSE: Opracował: Andrzej Nowak JSE (Java Standard

Bardziej szczegółowo

Język programowania: Lista instrukcji (IL Instruction List)

Język programowania: Lista instrukcji (IL Instruction List) Język programowania: Lista instrukcji (IL Instruction List) Wykład w ramach przedmiotu: Sterowniki programowalne Opracował dr inż. Jarosław Tarnawski 08.12.2009 Norma IEC 1131 Języki tekstowe Języki graficzne

Bardziej szczegółowo

Elżbieta Kula - wprowadzenie do Turbo Pascala i algorytmiki

Elżbieta Kula - wprowadzenie do Turbo Pascala i algorytmiki Elżbieta Kula - wprowadzenie do Turbo Pascala i algorytmiki Turbo Pascal jest językiem wysokiego poziomu, czyli nie jest rozumiany bezpośrednio dla komputera, ale jednocześnie jest wygodny dla programisty,

Bardziej szczegółowo

Wprowadzenie do programowania

Wprowadzenie do programowania Wprowadzenie do programowania Olsztyn 2007-2012 Wojciech Sobieski Podstawowe pojęcia Język - jest to ogólna nazwa zdefiniowanego zbioru znaków i symboli oraz reguł określających sposoby i kolejność ich

Bardziej szczegółowo

Języki programowania zasady ich tworzenia

Języki programowania zasady ich tworzenia Strona 1 z 18 Języki programowania zasady ich tworzenia Definicja 5 Językami formalnymi nazywamy każdy system, w którym stosując dobrze określone reguły należące do ustalonego zbioru, możemy uzyskać wszystkie

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Programowanie obiektowe Wykład 2 Marcin Młotkowski 4 marca 2015 Plan wykładu 1 2 3 4 5 Marcin Młotkowski Programowanie obiektowe 2 / 47 Krótki opis C Obiektowy, z kontrolą typów; automatyczne odśmiecanie;

Bardziej szczegółowo

Języki programowania Bardzo krótka historia Przykłady

Języki programowania Bardzo krótka historia Przykłady Języki programowania Bardzo krótka historia Przykłady Wojciech Myszka, Jakub Słowiński 3 grudnia 2014 Krótkie podsumowanie Co wiemy dotychczas: 1. 2. 3. 4. Trochę z historii komputerów Co to jest komputer.

Bardziej szczegółowo

Techniki Programowania

Techniki Programowania Techniki Programowania Łukasz Madej Katedra Informatyki Stosowanej i Modelowania Wykłady opracowane we współpracy z Danutą Szeligą, Łukaszem Sztangretem Dr hab. inż. Łukasz Madej, prof. AGH Budynek B5,

Bardziej szczegółowo

Wykład I. Programowanie II - semestr II Kierunek Informatyka. dr inż. Janusz Słupik. Wydział Matematyki Stosowanej Politechniki Śląskiej

Wykład I. Programowanie II - semestr II Kierunek Informatyka. dr inż. Janusz Słupik. Wydział Matematyki Stosowanej Politechniki Śląskiej Wykład I - semestr II Kierunek Informatyka Wydział Matematyki Stosowanej Politechniki Śląskiej Gliwice, 2015 c Copyright 2015 Janusz Słupik Zaliczenie przedmiotu Do zaliczenia przedmiotu niezbędne jest

Bardziej szczegółowo

Komputer nie myśli. On tylko wykonuje nasze polecenia. Nauczmy się więc wydawać mu rozkazy

Komputer nie myśli. On tylko wykonuje nasze polecenia. Nauczmy się więc wydawać mu rozkazy Programowanie w C++ 1.Czym jest programowanie Pisanie programów to wcale nie czarna magia, tylko bardzo logiczna rozmowa z komputerem. Oczywiście w jednym ze specjalnie stworzonych do tego celu języków.

Bardziej szczegółowo

Programowanie niskopoziomowe. dr inż. Paweł Pełczyński ppelczynski@swspiz.pl

Programowanie niskopoziomowe. dr inż. Paweł Pełczyński ppelczynski@swspiz.pl Programowanie niskopoziomowe dr inż. Paweł Pełczyński ppelczynski@swspiz.pl 1 Literatura Randall Hyde: Asembler. Sztuka programowania, Helion, 2004. Eugeniusz Wróbel: Praktyczny kurs asemblera, Helion,

Bardziej szczegółowo

1 Wielokrotne powtarzanie tych samych operacji

1 Wielokrotne powtarzanie tych samych operacji 1 Wielokrotne powtarzanie tych samych operacji Zadanie 1. roszę porównać następujące programy(efekt działania każdego z nich jest takisam). rzykład 1 przedstawia najbardziej typowy zapis, powodujący wykonanie

Bardziej szczegółowo

PARADYGMATY PROGRAMOWANIA Wykład 3

PARADYGMATY PROGRAMOWANIA Wykład 3 PARADYGMATY PROGRAMOWANIA Wykład 3 Definiowanie operatorów i ich przeciążanie Przykłady zastosowania operatorów: a) operator podstawienia ( = ) obiektów o złożonej strukturze, b) operatory działania na

Bardziej szczegółowo

SPIS TREŚCI Funkcje systemu operacyjnego Zapewnia obsługę dialogu między użytkownikiem a komputerem Nadzoruje wymianę informacji między poszczególnymi urządzeniami systemu komputerowego Organizuje zapis

Bardziej szczegółowo

Programowanie obiektowe. Literatura: Autor: dr inŝ. Zofia Kruczkiewicz

Programowanie obiektowe. Literatura: Autor: dr inŝ. Zofia Kruczkiewicz Programowanie obiektowe Literatura: Autor: dr inŝ. Zofia Kruczkiewicz Java P. L. Lemay, Naughton R. Cadenhead Java Podręcznik 2 dla kaŝdego Języka Programowania Java Linki Krzysztof Boone oprogramowania

Bardziej szczegółowo

ALGORYTMY I PROGRAMY

ALGORYTMY I PROGRAMY ALGORYTMY I PROGRAMY Program to ciąg instrukcji, zapisanych w języku zrozumiałym dla komputera. Ten ciąg instrukcji realizuje jakiś algorytm. Algorytm jest opisem krok po kroku jak rozwiązać problem, czy

Bardziej szczegółowo

4 Literatura. c Dr inż. Ignacy Pardyka (Inf.UJK) ASK MP.01 Rok akad. 2011/2012 2 / 24

4 Literatura. c Dr inż. Ignacy Pardyka (Inf.UJK) ASK MP.01 Rok akad. 2011/2012 2 / 24 Wymagania proceduralnych języków wysokiego poziomu ARCHITEKTURA SYSTEMÓW KOMPUTEROWYCH modele programowe procesorów ASK MP.01 c Dr inż. Ignacy Pardyka UNIWERSYTET JANA KOCHANOWSKIEGO w Kielcach Rok akad.

Bardziej szczegółowo

Wstęp do Informatyki i Programowania

Wstęp do Informatyki i Programowania Wstęp do Informatyki i Programowania Jacek Cichoń Przemysław Kobylański Katedra Informatyki W11/K2 Politechnika Wrocławska J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 1 / 356 Plan wykładu

Bardziej szczegółowo

Programowanie RAD Delphi

Programowanie RAD Delphi Programowanie RAD Delphi Dr Sławomir Orłowski Zespół Fizyki Medycznej, Instytut Fizyki, Uniwersytet Mikołaja Kopernika w Toruniu Pokój: 202, tel. 611-32-46, e-mial: bigman@fizyka.umk.pl Delphi zasoby Aplikacje

Bardziej szczegółowo

DECLARE typ [( )] [ NOT NULL ] [ { := DEFAULT } ];

DECLARE <nazwa_zmiennej> typ [(<rozmiar> )] [ NOT NULL ] [ { := DEFAULT } <wartość> ]; Braki w SQL obsługi zdarzeń i sytuacji wyjątkowych funkcji i procedur użytkownika definiowania złożonych ograniczeń integralnościowych Proceduralny SQL Transact- SQL używany przez Microsoft SQL Server

Bardziej szczegółowo

Języki programowania wprowadzenie

Języki programowania wprowadzenie Języki programowania wprowadzenie Prof. dr hab. inż. Mariusz J. Giergiel KRiDM AGH dr hab. inż.. Mariusz Giergiel, prof. n. AGH Pok. 412, VIp, D-1 konsultacje czwartek 10:00 11:00 giergiel@agh.edu.pl Telefon

Bardziej szczegółowo

Programowanie obiektowe. Wprowadzenie

Programowanie obiektowe. Wprowadzenie 1 Programowanie obiektowe Wprowadzenie 2 Programowanie obiektowe Object-oriented programming Najpopularniejszy obecnie styl (paradygmat) programowania Rozwinięcie koncepcji programowania strukturalnego

Bardziej szczegółowo

Modelowanie i Programowanie Obiektowe

Modelowanie i Programowanie Obiektowe Modelowanie i Programowanie Obiektowe Wykład I: Wstęp 20 październik 2012 Programowanie obiektowe Metodyka wytwarzania oprogramowania Metodyka Metodyka ustandaryzowane dla wybranego obszaru podejście do

Bardziej szczegółowo

Programowanie w języku C++

Programowanie w języku C++ INE 2022 JĘZYKI PROGRAMOWANIA 1 INE 0050 WSTĘP DO PROGRAMOWANIA Programowanie w języku C++ ( wykł. dr Marek Piasecki ) Literatura: do wykładu dowolny podręcznik do języka C++ na laboratoriach Borland C++

Bardziej szczegółowo

Microsoft IT Academy kurs programowania

Microsoft IT Academy kurs programowania Microsoft IT Academy kurs programowania Podstawy języka C# Maciej Hawryluk Język C# Język zarządzany (managed language) Kompilacja do języka pośredniego (Intermediate Language) Kompilacja do kodu maszynowego

Bardziej szczegółowo

1 Wskaźniki i zmienne dynamiczne, instrukcja przed zajęciami

1 Wskaźniki i zmienne dynamiczne, instrukcja przed zajęciami 1 Wskaźniki i zmienne dynamiczne, instrukcja przed zajęciami Celem tych zajęć jest zrozumienie i oswojenie z technikami programowania przy pomocy wskaźników w języku C++. Proszę przeczytać rozdział 8.

Bardziej szczegółowo

Informatyka na UG... Witold Bołt (ja@hope.art.pl)

Informatyka na UG... Witold Bołt (ja@hope.art.pl) Informatyka na UG... Witold Bołt (ja@hope.art.pl) >> Agenda Co to jest informatyka? Czym zajmuje się informatyk? Czego można nauczyć się na UG? Jak wyglądają studia informatyczne na UG? Co po studiach?

Bardziej szczegółowo

#include int main( ) { int x = 10; long y = 20; double s; s = x + y; printf ( %s obliczen %d + %ld = %f, Wynik, x, y, s ); }

#include <stdio.h> int main( ) { int x = 10; long y = 20; double s; s = x + y; printf ( %s obliczen %d + %ld = %f, Wynik, x, y, s ); } OPERACJE WEJŚCIA / WYJŚCIA Funkcja: printf() biblioteka: wysyła sformatowane dane do standardowego strumienia wyjściowego (stdout) int printf ( tekst_sterujący, argument_1, argument_2,... ) ;

Bardziej szczegółowo

ZMODYFIKOWANY Szczegółowy opis przedmiotu zamówienia

ZMODYFIKOWANY Szczegółowy opis przedmiotu zamówienia ZP/ITS/11/2012 Załącznik nr 1a do SIWZ ZMODYFIKOWANY Szczegółowy opis przedmiotu zamówienia Przedmiotem zamówienia jest: Przygotowanie zajęć dydaktycznych w postaci kursów e-learningowych przeznaczonych

Bardziej szczegółowo

Laboratorium 1 - Programowanie proceduralne i obiektowe

Laboratorium 1 - Programowanie proceduralne i obiektowe Laboratorium 1 - Programowanie proceduralne i obiektowe mgr inż. Kajetan Kurus 4 marca 2014 1 Podstawy teoretyczne 1. Programowanie proceduralne (powtórzenie z poprzedniego semestru) (a) Czym się charakteryzuje?

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Laboratorium z przedmiotu Programowanie obiektowe - zestaw 02 Cel zajęć. Celem zajęć jest zapoznanie z praktycznymi aspektami projektowania oraz implementacji klas i obiektów z wykorzystaniem dziedziczenia.

Bardziej szczegółowo

15. Funkcje i procedury składowane PL/SQL

15. Funkcje i procedury składowane PL/SQL 15. Funkcje i procedury składowane PLSQL 15.1. SQL i PLSQL (Structured Query Language - SQL) Język zapytań strukturalnych SQL jest zbiorem poleceń, za pomocą których programy i uŝytkownicy uzyskują dostęp

Bardziej szczegółowo

Sterowniki Programowalne (SP)

Sterowniki Programowalne (SP) Sterowniki Programowalne (SP) Wybrane aspekty procesu tworzenia oprogramowania dla sterownika PLC Podstawy języka funkcjonalnych schematów blokowych (FBD) Politechnika Gdańska Wydział Elektrotechniki i

Bardziej szczegółowo

Definicje. Algorytm to:

Definicje. Algorytm to: Algorytmy Definicje Algorytm to: skończony ciąg operacji na obiektach, ze ściśle ustalonym porządkiem wykonania, dający możliwość realizacji zadania określonej klasy pewien ciąg czynności, który prowadzi

Bardziej szczegółowo

Języki programowania Język programowania Język maszynowy Kod maszynowy

Języki programowania Język programowania Język maszynowy Kod maszynowy Języki programowania Język programowania pozwala programiście na precyzyjne przekazanie maszynie, jakie dane mają ulec obróbce i jakie czynności należy podjąć w określonych warunkach. Język maszynowy język

Bardziej szczegółowo

Java - tablice, konstruktory, dziedziczenie i hermetyzacja

Java - tablice, konstruktory, dziedziczenie i hermetyzacja Java - tablice, konstruktory, dziedziczenie i hermetyzacja Programowanie w językach wysokiego poziomu mgr inż. Anna Wawszczak PLAN WYKŁADU zmienne tablicowe konstruktory klas dziedziczenie hermetyzacja

Bardziej szczegółowo

Programowanie I. Kornel Warwas. ATH Katedra Matematyki i Informatyki

Programowanie I. Kornel Warwas. ATH Katedra Matematyki i Informatyki Programowanie I Kornel Warwas ATH Katedra Matematyki i Informatyki 2 Algorytm Algorytm skończony, uporządkowany ciąg zdefiniowanych czynności, koniecznych do wykonania określonego zadania w ograniczonej

Bardziej szczegółowo

Programowanie funkcyjne wprowadzenie Specyfikacje formalne i programy funkcyjne

Programowanie funkcyjne wprowadzenie Specyfikacje formalne i programy funkcyjne Programowanie funkcyjne wprowadzenie Specyfikacje formalne i programy funkcyjne dr inż. Marcin Szlenk Politechnika Warszawska Wydział Elektroniki i Technik Informacyjnych m.szlenk@elka.pw.edu.pl Paradygmaty

Bardziej szczegółowo

JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM. Laboratorium 3. Instrukcje wyboru

JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM. Laboratorium 3. Instrukcje wyboru JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM Laboratorium 3 Instrukcje wyboru 1 INSTRUKCJE WYBORU Instrukcje sterujące to takie instrukcje, które sterują przebiegiem programu w zależności od spełnienia

Bardziej szczegółowo

ALGORYTMY I STRUKTURY DANYCH

ALGORYTMY I STRUKTURY DANYCH Akademia Rolnicza im. Augusta Cieszkowskiego w Poznaniu - Instytut Inżynierii Rolniczej - ALGORYTMY I STRUKTURY DANYCH Prowadzący: dr inż. Radosław J. Kozłowski email: rjk@au.poznan.pl www: http://www.au.poznan.pl/~rjk

Bardziej szczegółowo

Definiowanie własnych klas

Definiowanie własnych klas Programowanie obiektowe Definiowanie własnych klas Paweł Rogaliński Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej pawel.rogalinski @ pwr.wroc.pl Definiowanie własnych klas Autor:

Bardziej szczegółowo

Multimedia JAVA. Historia

Multimedia JAVA. Historia Multimedia JAVA mgr inż. Piotr Odya piotrod@sound.eti.pg.gda.pl Historia 1990 rozpoczęcie prac nad nowym systemem operacyjnym w firmie SUN, do jego tworzenia postanowiono wykorzystać nowy język programowania

Bardziej szczegółowo

Algorytmika i programowanie usystematyzowanie wiadomości

Algorytmika i programowanie usystematyzowanie wiadomości Temat 1. Algorytmika i programowanie usystematyzowanie wiadomości Cele edukacyjne Usystematyzowanie podstawowych pojęć: algorytm, program, specyfikacja zadania, lista kroków, schemat blokowy, algorytm

Bardziej szczegółowo

Wstęp do programowania

Wstęp do programowania Wstęp do programowania Podstawowe konstrukcje programistyczne Paweł Daniluk Wydział Fizyki Jesień 2013 P. Daniluk (Wydział Fizyki) WP w. II Jesień 2013 1 / 34 Przypomnienie Programowanie imperatywne Program

Bardziej szczegółowo

Język programowania zbiór reguł określających, które ciągi symboli tworzą program komputerowy oraz jakie obliczenia opisuje ten program.

Język programowania zbiór reguł określających, które ciągi symboli tworzą program komputerowy oraz jakie obliczenia opisuje ten program. PYTHON Język programowania zbiór reguł określających, które ciągi symboli tworzą program komputerowy oraz jakie obliczenia opisuje ten program. Aby program napisany w danym języku mógł być wykonany, niezbędne

Bardziej szczegółowo

Projektowanie klas c.d. Projektowanie klas przykład

Projektowanie klas c.d. Projektowanie klas przykład Projektowanie klas c.d. ogólne wskazówki dotyczące projektowania klas: o wyodrębnienie klasy odpowiedź na potrzeby życia (obsługa rozwiązania konkretnego problemu) o zwykle nie uda się utworzyć idealnej

Bardziej szczegółowo

Metody Metody, parametry, zwracanie wartości

Metody Metody, parametry, zwracanie wartości Materiał pomocniczy do kursu Podstawy programowania Autor: Grzegorz Góralski ggoralski.com Metody Metody, parametry, zwracanie wartości Metody - co to jest i po co? Metoda to wydzielona część klasy, mająca

Bardziej szczegółowo

Cw.12 JAVAScript w dokumentach HTML

Cw.12 JAVAScript w dokumentach HTML Cw.12 JAVAScript w dokumentach HTML Wstawienie skryptu do dokumentu HTML JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania.skrypty Java- Script mogą być zagnieżdżane

Bardziej szczegółowo

Programowanie I. O czym będziemy mówili. Plan wykładu nieco dokładniej. Plan wykładu z lotu ptaka. Podstawy programowania w językach. Uwaga!

Programowanie I. O czym będziemy mówili. Plan wykładu nieco dokładniej. Plan wykładu z lotu ptaka. Podstawy programowania w językach. Uwaga! Programowanie I O czym będziemy mówili Podstawy programowania w językach proceduralnym ANSI C obiektowym Java Uwaga! podobieństwa w podstawowej strukturze składniowej (zmienne, operatory, instrukcje sterujące...)

Bardziej szczegółowo

Algorytmy i język C++

Algorytmy i język C++ Wykład 6 Wskaźniki Wskaźnik nie przechowuje wartości zmiennej ale, podobnie jak tablica, wskazuje miejsce w pamięci, w którym znajduje się zmienna danego typu. W poniższym przykładzie symbol * pomiędzy

Bardziej szczegółowo

Kurs programowania. Wykład 2. Wojciech Macyna. 17 marca 2016

Kurs programowania. Wykład 2. Wojciech Macyna. 17 marca 2016 Wykład 2 17 marca 2016 Dziedziczenie Klasy bazowe i potomne Dziedziczenie jest łatwym sposobem rozwijania oprogramowania. Majac klasę bazowa możemy ja uszczegółowić (dodać nowe pola i metody) nie przepisujac

Bardziej szczegółowo

Modelowanie diagramów klas w języku UML. Łukasz Gorzel 244631@stud.umk.pl 7 marca 2014

Modelowanie diagramów klas w języku UML. Łukasz Gorzel 244631@stud.umk.pl 7 marca 2014 Modelowanie diagramów klas w języku UML Łukasz Gorzel 244631@stud.umk.pl 7 marca 2014 Czym jest UML - Unified Modeling Language - Rodzina języków modelowania graficznego - Powstanie na przełomie lat 80

Bardziej szczegółowo

* WWW: * E-mail: * Adres: Instytut Informatyki ul. Będzińska 39 41-200 Sosnowiec Pokój 214 * Telefon: 32 3689765

* WWW: * E-mail: * Adres: Instytut Informatyki ul. Będzińska 39 41-200 Sosnowiec Pokój 214 * Telefon: 32 3689765 * Łagodny start * * WWW: * E-mail: * Adres: Instytut Informatyki ul. Będzińska 39 41-200 Sosnowiec Pokój 214 * Telefon: 32 3689765 Zaliczenie zajęć: 3-4 kolokwia + obecność ALBO Projekt zaliczeniowy +

Bardziej szczegółowo

Wykład 9 2014-06-20 09:37 PP2_W9

Wykład 9 2014-06-20 09:37 PP2_W9 Wykład 9 Przykłady programów z wykorzystaniem klas - przykład funkcji operatorowych - obiektowa implementacja listy jednokierunkowej kopiowanie obiektów - klasa "latający napis" Pozycjonowanie w plikach

Bardziej szczegółowo