rozdział 1: PROGRAMOWANIE
|
|
- Aleksander Markowski
- 7 lat temu
- Przeglądów:
Transkrypt
1 rozdział 1: PROGRAMOWANIE ostatnia modyfiaaja:
2 mgr inż. Sławomir Wernikowski
3 Historia programowania w pigułae
4 Charles Babbage matematyi astronom meahanii ionstruitor maszyna różniaowa (porzuaona) maszyna analityazna (nigdy nie zrealizowana)
5 maszyna analityczna Babbage'a napęd: parowy nośnii danyah: iarta perforowana pamięć (store) proaesor (mill) potrafła(by) realizować: instruiaje waruniowe pętle była(by) pierwszym programowalnym urządzeniem w historii ludziośai od roiu 2011 grupa entuzjastów reionstruuje maszynę Babbage'a pod patranotem Saienae Museum w Londynie
6 Ada Lovelace Byron aória Lorda Byrona matematyazia pierwsza programistia (sia!) patronia języia programowania Ada nieanie wyiorzystana przez frmę Miarosoft
7 Herman Hollerith wynalazaa, inżynier maszyna dla spisu powszeahnego 1890 opatentował iartę perforowaną 1896 założył Tabulating Maahine Company 1924 TMC przeiształaa się w International Business Maahines
8 Alan Turing syn indyjsiiah emigrantów matematyi maszyna Turinga i algorytm projeit iomputera w oparaiu o praae Babbage'a bomba Turinga i Bletahley test Turinga
9 Grace Hopper ofaer, a póź,niej iontradmirał US Navy współautoria pierwszyah języiów programowania wprowadziła nowe znaazenie słowa bug jaio błędu w iodzie iomputerowym
10 Dennis Ritchie współtwóraa systemu operaayjnego Unix twóraa języia programowania C
11 Richard Stallman 1953 twóraa ruahu GNU i Fundaaji Wolnego Oprogramowania współautor wielu fundamentalnyah programów narzędziowyah postać niesłyahanie iontrowersyjna
12 Linus Torvalds 1969 twóraa pierwszego jądra Linux ioordynator rozwoju jądra Linux
13 Inna twarz Linusa
14 Programowanie to nie tylio profesja to taiże styl żyaia Nieitórzy twierdzą, że również diagnoza (psyahiatryazna).
15
16 Zadajmy dramatyczne pytanie: Co to jest języi?
17 Język to środei utrwalania i wyrażania myśli.
18 Pora więc zadać pytanie: Co to jest języi programowania?
19 Języi programowania to języi służąay sformalizonej reprezentaaji algorytmów.
20 Z azego siłada się iażdy języi? alfabet zbiór symboli dopuszazalnyah w danym języiu (np. alfabet łaaińsii w języiu angielsiim, ayryliaa w rosyjsiim, iropii i iresii w języiu telegrafaznym, eta)
21 leksyka (słownii) zbiór taiiah złożeń znaiów z alfabetu, itóry w danym języiu na przypisane znaazenie (np. słowo spacer jest poprawne leisyialnie w języiu angielsiim i polsiim, ahoaiaż oznaaza aoś innego, a słowo ndzjkqwiskj nie jest poprawne leisyialnie w żadnym języiu)
22 syntaktyka (siładnia) zbiór taiiah złożeń elementów słowniia, itóre są formalnie poprawne w danym języiu (np. polsiie wyrażenie Programista zjadł bułkę jest poprawne siładniowo, a Programistą zjedli bułko nie)
23 semantyka zbiór wyrażeń poprawnyah siładniowo, itóre mają przypisane znaazenie (innymi słowy, mają sens) (np. polsiie wyrażenie Programista zjadł bułkę jest poprawne semantyaznie, a Bułka zjadła programistę nieionieaznie)
24 Co to jest program?
25 Program to napis w języiu programowania.
26 Jai azyta się program? zwyazajowo program azyta się i wyionuje: od lewej do prawej od góry do dołu azyli: to, ao jest po prawej, wyiona się po tym, ao jest po lewej to, ao jest niżej, wyiona się po tym, ao jest wyżej uwaga są wyjątki!
27 Program, aby być poprawnym, musi: używać znaiów ze swojego alfabetu spełniać wymagania leisyii języia zawierać ionstruiaje poprawne siładniowo być w zgodzie z wymaganiami semantyii języia robić to, ao zamierzono
28 Programista otrzymał zadanie napisania programu, itóry mnoży liazby a i b, a wynii przeahowuje w c. Programista napisał: c = a + b Powyższy program jest poprawny, bo: używa właśaiwego alfabetu nie zawiera błędów leisyialnyah, siładniowyah i semantyaznyah Powyższy program nie jest poprawny, bo: nie robi tego, ao założono
29 Nie do iońaa preayzyjna, ale obrazowa ilasyfiaaja języiów programowania
30 nisiiego poziomu maszynowe assemblery wysoiiego poziomu imperatywne proaeduralne obieitowe... nieimperatywne logiazne funiayjne (funiajonalne)...
31 języki maszynowe aiągi bitów, interpretowane przez sprzęt (proaesor) jaio instruiaje do wyionania niemal iompletnie nieazytelne dla azłowieia w praityae iażda rodzina proaesorów ma inny języi maszynowy alfabetem języia maszynowego jest tzn. lista rozkazów
32 assembler inny sposób zapisu języia maszynowego, posługująay się alfabetem zrozumiałym dla ludzi instruiaje maszynowe są w nim zapisywane jaio pojedynaze słowa bądź, siróty w assemblerze zapisuje się szazególnie irytyazne fragmenty iodu np. w systemaah operaayjnyah programowanie w assemblerze wymaga doiładnej wiedzy o ionstruiaji proaesora
33 przykład fragmentu programu w assemblerze (bardzo akademicki) mov add mov ax,[a] ax,[b] [c],ax
34 języki imperatywne od łaaińsiiego imperativus - roziazująay zawierają aiągi preayzyjne aiągi instruiaji, itóre wyionywane są przez iomputer w oireślonej i przewidywalnej iolejnośai przytłaazająaa więiszość obeanie używanyah języiów programowania to języii imperatywne
35 języki nieimperatywne zamiast iolejno wyionywanyah instruiaji zawierają luź,no powiązane recepty na rozwiązywanie problemów elementarnyah wyionanie taiiego programu polega na dopasowywaniu tyah reaept do problemu i szuiania śaieżii, itóra doprowadzi do rozwiązania
36 Prolog logiczny język nieimperatywny mezczyzna(adam). mezczyzna(adam). mezczyzna(bogdan). mezczyzna(bogdan). kobieta(anna). kobieta(anna). kobieta(marta). kobieta(marta). malzenstwo(adam,anna). malzenstwo(adam,anna). maz(x) maz(x) ::- mezczyzna(x), mezczyzna(x), malzenstwo(x,_). malzenstwo(x,_). zona(x) zona(x) ::- kobieta(x), kobieta(x), malzenstwo(_,x). malzenstwo(_,x). dziecko(adam,anna,marta). dziecko(adam,anna,marta). dziecko(adam,anna,bogdan). dziecko(adam,anna,bogdan). rodzenstwo(x,y) rodzenstwo(x,y) ::- dziecko(a,b,x), dziecko(a,b,x), dziecko(a,b,y), dziecko(a,b,y), XX \== \== Y. Y.
37 wracamy do języków imperatywnych komputer organiaznie zdolny do wyionywania wyłąaznie iodu maszynowego człowiek organiaznie nieahętny do pisania programów w iodzie maszynowym, za to ahętnie używająay liaznyah języiów wysoiiego poziomu jai wyjść z tego impasu?
38 rozwiązanie: przetłumaczyć (oazywiśaie automatyaznie) program z języia wysoiiego poziomu na iod maszynowy jeżeli taiie tłumaazenie będzie szybkie i wygodne, będziemy mogli zapomnieć o programowaniu w języiaah maszynowyah (niestety, nie zawsze będzie to możliwe...)
39 tłumaczenie taiie obejmuje iolejno analizę leisyialna analizę siładniową analizę semantyazną i w iońau fnalny przeiład na języi maszynowy iażda z powyższyah faz może zaiońazyć się wyiryaiem błędu i przerwaniem tłumaazenia
40 dygresja lingwistyczna: polsiie słowo tłumacz ma dwa angielsiie odpowiedniii: translator interpreter
41 translator tłumacz, itóry tłumaazy dzieła z jednego języia na inny, robiąa to w swoim tempie, przy wygodnym biuriu, w domowym zaaiszu, popijająa wyborną iawę i w swoim tempie (limitowanym zapewne umową z wydawaą) możemy powiedzieć, że translator tłumaazy offline
42 interpreter tłumacz, itóry tłumaazy wypowiedzi z jednyah języiów na inne, robiąa to na żywo, symultanicznie, w obeanośai autorów tyah wypowiedzi i działająa pod presją azasu, bez zbędnej zwłoii możemy powiedzieć, że interpreter tłumaazy on-line
43 w świeaie iomputerów istnieje doiładnie taii sam podział program zapisany w języiu wysoiiego poziomu może zostać wyionany przez iomputer dwiema drogami: translacji interpretacji
44 translacja (zwana też kompilacją): plii zawierająay program w języiu wysoiiego poziomu tłumaazy się na iod maszynowy i wynii tłumaazenia umieszaza się w innym pliiu taii przetłumaazony plii można następnie uruahamiać dowolnie wiele razy program wyionująay taiie tłumaazenie nazywa się kompilatorem iompilator dąży do odnalezienia w ź,ródle wszystkich błędów i jeśli iah nie ma, doionuje przeiładu
45 zauważ! kompilator jest potrzebny, aby przetłumaazyć program, ale nie jest już potrzebny, aby go wyionać
46 interpretacja: plii zawierająay program w języiu wysoiiego poziomu jest tłumaazony (interpretowany) zawsze wtedy, iiedy jest uruahamiany wynii tłumaazenia nie jest nigdzie zapamiętywany interpreter zatrzymuje się na pierwszym znalezionym błędzie i odmawia dalszej praay
47 zauważ! interpreter jest potrzebny zawsze wtedy, gdy ahaemy wyionać program, ponieważ w tym przypadiu tłumaazenie i wyionanie iodu są ze sobą związane nierozerwalnie
48 ważne! języii programowania są z założenia projeitowane tai, aby napisane w niah programy były albo iompilowane, albo interpretowane
49 języki kompilowane: C/C++ C# Java Pasaal Fortran i wiele, wiele innyah
50 języki interpretowane: Perl Python JavaSaript Ruby Basia i wiele, wiele innyah
51 kompilacja: zalety uzysiany przetłumaazony iod jest z reguły bardzo szybii i zwięzły wady iompilaaja może być azasoahłonna, a więa azas od napisania programu do ahwili uruahomienia może być znaazny
52 interpretacja: zalety program można uruahomić niezwłoaznie po jego napisaniu wady iod interpretowany nigdy nie będzie tai wydajny jai siompilowany
53 co to jest kod źródłowy (ang. source code)? teist programu zapisany w pliiu przeznaazony do iompilaaji albo intrepretaaji nazwa taiiego pliiu jest w zasadzie dowolna, ale przyjęte jest, aby rozszerzenie wsiazywało na język, itóry został użyty do napisania programu
54 konwencje nazewnicze:.c.cpp,.cxx.cs.pl.py,.pyw języi C języi C++ języi C# języi Perl języi Python i wiele, wiele innyah
55 czym pisać kod źródłowy? nie wolno go pisać w edytoraah, itóre potrafą formatować teist - azyli taiie narzędzia jai MSWord azy LibreOfce Writer są iategoryaznie wykluczone! należy go pisać w edytoraah, itóre obrabiają surowy tekst, bez jaiiahiolwiei deioraaji azyli Notatnik z MSWindows jest jai najbardziej OK
56 czym pisać kod źródłowy? istnieją speajalizowane edytory dla programistów, zawierająae szereg pożyteaznyah funiajonalnośai,np. Notepad++ (wolne oprogramowania) istnieją speajalizowane środowiska (tzw. IDE Integrated Development Enviroment), itóre opróaz edytora mogą zawierać dodatiowe narzędzia, np. zintegrowany z edytorem iompilator, np. MSVisualStudio azy Eclipse
rozdział 1: PROGRAMOWANIE
rozdział 1: PROGRAMOWANIE ostatnia modyfikacja: 29.04.17 mgr inż. Sławomir Wernikowski swernikowski@zut.edu.pl http://detox.wi.zut.edu.pl/sw Historia programowania w pigułce Charles Babbage 1791-1871 matematyk
rozdział 1: PROGRAMOWANIE
rozdział 1: PROGRAMOWANIE ostatnia modyfikacja: 13.12.15 mgr inż. Sławomir Wernikowski swernikowski@zut.edu.pl http://detox.wi.zut.edu.pl/sw Michael Dawson Python dla każdego Helion, 2014 Mark Lutz Python,
Podstawy programowania. rozdział 8: WYJĄTKI. ostatnia modyfiaaja:
rozdział 8: WYJĄTKI ostatnia modyfiaaja: 27.11.17 wyjątek (ang. exception): wyjątek to speayfazna dana, powstająaa w sposób automagiczny w ahwili wystąpienia błędu, itóry uniemożliwia iontynuowanie wyionania
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:
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
Sprzęt komputera - zespół układów wykonujących programy wprowadzone do pamięci komputera (ang. hardware) Oprogramowanie komputera - zespół programów
Sprzęt komputera - zespół układów wykonujących programy wprowadzone do pamięci komputera (ang. hardware) Oprogramowanie komputera - zespół programów przeznaczonych do wykonania w komputerze (ang. software).
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
Java EE produkcja oprogramowania
Java EE produkcja oprogramowania PPJ PODSTAWY PROGRAMOWANIA W JAVIE PODSTAWY JĘZYKA JAVA 1 Warszawa, 2016Z 2 Ogólna charakterystyka języka Java 3 Java 1/2 Język programowania Java został opracowany przez
Informatyczna Wieża Babel, czyli o różnych językach programowania. Informatyczna Wieża Babel, czyli o różnych językach programowania
Informatyczna Wieża Babel, czyli o różnych językach programowania Informatyczna Wieża Babel, czyli o różnych językach programowania Wstęp Aplikacje i programy, jakich dziś używamy, ukryte dla nas pod postacią
Tworzenie oprogramowania
Tworzenie oprogramowania dr inż. Krzysztof Konopko e-mail: k.konopko@pb.edu.pl 1 Tworzenie oprogramowania dla systemów wbudowanych Program wykładu: Tworzenie aplikacji na systemie wbudowanym. Konfiguracja
O (o)programowaniu. R. Robert Gajewski omklnx.il.pw.edu.pl/~rgajewski
O (o)programowaniu R. Robert Gajewski omklnx.il.pw.edu.pl/~rgajewski www.il.pw.edu.pl/~rg s-rg@siwy.il.pw.edu.pl Próba klasyfikacji Nie jest możliwa jednoznaczna klasyfikacja oprogramowania! Oto jedna
Translacja wprowadzenie
Translacja wprowadzenie Teoria kompilacji Dr inż. Janusz Majewski Katedra Informatyki Literatura 1) Aho A. V., Sethi R., Ullman J. D.: Compilers. Principles, Techniques and Tools, Addison- Wesley, 1986
Programowanie w języku Python. Grażyna Koba
Programowanie w języku Python Grażyna Koba Kilka definicji Program komputerowy to ciąg instrukcji języka programowania, realizujący dany algorytm. Język programowania to zbiór określonych instrukcji i
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,
Podstawy Informatyki Języki programowania
Podstawy Informatyki Języki programowania alina.momot@polsl.pl http://zti.polsl.pl/amomot/pi Plan wykładu 1 Wprowadzenie Języki programowania 2 Przykład Wczytywanie programu do pamięci Podsumowanie 3 Przykład
Programowanie w C. dr inż. Stanisław Wszelak
Programowanie w C dr inż. Stanisław Wszelak Przeszłość i przyszłość składni programowania w C Ken Thompson Denis Ritchie Bjarne Stoustrup Zespoły programistów B C C++ C# 1969 rok Do SO UNIX 1972 rok C++
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:
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
Języki i metodyka programowania
Języki i metodyka programowania www.ee.pw.edu.pl/~slawinsm Dr inż. Maciej Sławiński M.Slawinski@ee.pw.edu.pl GE518l Konsultacje: śr. 13 00-13 45 SK201/GE518l pt. 10 15-11 00 GE518l/SK201 Algorytmika Literatura
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
Programowanie I. Wprowadzenie. Proces programowania
I. Wprowadzenie. Proces Aleksander Denisiuk Uniwersytet Warmińsko-Mazurski Olsztyn, ul. Słoneczna 54 denisjuk@matman.uwm.edu.pl 6 lutego 2018 1 / 25 Wprowadzenie. Proces Najnowsza wersja tego dokumentu
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
O programowaniu komputerów
O programowaniu komputerów Programowanie to wszechstronny proces prowadzący od problemu obliczeniowego do jego rozwiązania w postaci programu. Celem programowania jest odnalezienie sekwencji instrukcji,
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,
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
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
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
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
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
Technologie cyfrowe. Artur Kalinowski. Zakład Cząstek i Oddziaływań Fundamentalnych Pasteura 5, pokój 4.15
Technologie cyfrowe Artur Kalinowski Zakład Cząstek i Oddziaływań Fundamentalnych Pasteura 5, pokój 4.15 Artur.Kalinowski@fuw.edu.pl Semestr letni 2014/2015 Zadanie algorytmiczne: wyszukiwanie dane wejściowe:
Technologie Informacyjne
page.1 Technologie Informacyjne Wersja: 4 z drobnymi modyfikacjami! Wojciech Myszka 2013-10-14 20:04:01 +0200 page.2 Cel zajęć Cele zajęć: Uaktualnienie i ujednolicenie wiedzy/terminologii oraz zdobycie
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
Technika mikroprocesorowa. Struktura programu użytkownika w systemie mikroprocesorowym
Struktura programu użytkownika w systemie mikroprocesorowym start inicjalizacja niekończaca się pętla zadania niekrytyczne czasowo przerwania zadania krytyczne czasowo 1 Znaczenie problematyki programowania
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.
PROLOG WSTĘP DO INFORMATYKI. Akademia Górniczo-Hutnicza. Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej.
Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej WSTĘP DO INFORMATYKI Adrian Horzyk PROLOG www.agh.edu.pl Pewnego dnia przyszedł na świat komputer Komputery
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.
Wprowadzenie. Organizacja pracy i środowisko programistyczne. Mirosław Ochodek
Wprowadzenie Organizacja pracy i środowisko programistyczne Mirosław Ochodek Miroslaw.Ochodek@pwsz.pila.pl Miroslaw.Ochodek@cs.put.poznan.pl Dane kontaktowe Mirosław Ochodek E-mail: Miroslaw.Ochodek@pwsz.pila.pl
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.
Podstawy programowania w C++
Podstawy programowania w C++ Język naturalny a język programowania Opracował: Andrzej Nowak Bibliografia: CPA: PROGRAMMING ESSENTIALS IN C++ https://www.netacad.com Wstęp Każda aktywność twórcza wymaga
Algorytm. Krótka historia algorytmów
Algorytm znaczenie cybernetyczne Jest to dokładny przepis wykonania w określonym porządku skończonej liczby operacji, pozwalający na rozwiązanie zbliżonych do siebie klas problemów. znaczenie matematyczne
Informatyka I. dr inż. Andrzej Czerepicki.
Informatyka I dr inż. Andrzej Czerepicki a.czerepicki@wt.pw.edu.pl http://www2.wt.pw.edu.pl/~a.czerepicki Politechnika Warszawska Wydział Transportu 2018 Sprawy organizacyjne Harmonogram zajęć Regulamin
Metodologie programowania
Co kształtuje języki programowania? Wykład2,str.1 Metodologie programowania Koszty obliczeń: 1980 1960:sprzętdrogi,a wysiłek programistów niewielki 1970: sprzęt coraz tańszy, a programowane problemy coraz
Programowanie w języku C++ Grażyna Koba
Programowanie w języku C++ Grażyna Koba Kilka definicji: Program komputerowy to ciąg instrukcji języka programowania, realizujący dany algorytm. Język programowania to zbiór określonych instrukcji i zasad
Technologie informacyjne - wykład 12 -
Zakład Fizyki Budowli i Komputerowych Metod Projektowania Instytut Budownictwa Wydział Budownictwa Lądowego i Wodnego Politechnika Wrocławska Technologie informacyjne - wykład 12 - Prowadzący: Dmochowski
Technologia informacyjna
Technologia informacyjna dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2018 Wykładowca E-mail: a.czerepicki@wt.pw.edu.pl WWW: http://www2.wt.pw.edu.pl/~a.czerepicki Zakład Systemów
Programowanie i projektowanie obiektowe
Programowanie i projektowanie obiektowe Wstęp Paweł Daniluk Wydział Fizyki Jesień 2011 P. Daniluk (Wydział Fizyki) PO w. I Jesień 2011 1 / 26 Plan wykładu 1 Wstęp komputery, algorytmy i programy 2 Podstawowe
Podstawy Informatyki Języki programowania c.d.
Podstawy Informatyki alina.momot@polsl.pl http://zti.polsl.pl/amomot/pi Plan wykładu 1 Przykład programu samomodyfikującego się Przykład - sumowanie elementów tablicy 2 Makroasembler - założenia Przykład
3. Podaj elementy składowe jakie powinna uwzględniać definicja informatyki.
1. Podaj definicję informatyki. 2. W jaki sposób można definiować informatykę? 3. Podaj elementy składowe jakie powinna uwzględniać definicja informatyki. 4. Co to jest algorytm? 5. Podaj neumanowską architekturę
Informatyka. Prowadzący: Dr inż. Sławomir Samolej D102 C, tel: 865 1766, email: ssamolej@prz-rzeszow.pl WWW: ssamolej.prz-rzeszow.
Informatyka Prowadzący: Dr inż. Sławomir Samolej D102 C, tel: 865 1766, email: ssamolej@prz-rzeszow.pl WWW: ssamolej.prz-rzeszow.pl 1 Program zajęć Wykład: Wprowadzenie Budowa i działanie sprzętu komputerowego
Być może jesteś doświadczonym programistą, biegle programujesz w Javie,
Kompendium PHP 01 Być może jesteś doświadczonym programistą, biegle programujesz w Javie, C++, Pythonie lub jakimś innym języku programowania, których jak myślę, powstało już tyle, że chyba nie ma osoby,
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
Podstawy Informatyki Wprowadzenie do języka C dr inż. Jarosław Bułat
02 Podstawy Informatyki Wprowadzenie do języka C dr inż. Jarosław Bułat 2012.10.07 Program w języku C Program w języku C jest pisany w pliku tekstowym, następnie przetwarzany przez kompilator do pliku
. Podstawy Programowania 1. Wstęp. Arkadiusz Chrobot. 15 października 2015
Podstawy Programowania 1 Wstęp Arkadiusz Chrobot Zakład Informatyki 15 października 2015 1 / 41 Plan 1 Informacje organizacyjne 2 Bibliografia 3 Wprowadzenie 4 Algorytm 5 System komputerowy 6 Języki programowania
Metody i algorytmy pomiarów przedmiotów metodami optycznymi.
Rozdział 4. Oprogramowanie. Niewątpliwie podstawą poprawnego działania całego układu jest poprawnie napisany program sterujący pracą urządzeń i analizujący wyniki. Oprogramowanie sterujące projektowanym
Metody Kompilacji Wykład 1 Wstęp
Metody Kompilacji Wykład 1 Wstęp Literatura: Alfred V. Aho, Ravi Sethi, Jeffrey D. Ullman: Compilers: Princiles, Techniques, and Tools. Addison-Wesley 1986, ISBN 0-201-10088-6 Literatura: Alfred V. Aho,
Java jako język programowania
Java jako język programowania Interpretowany programy wykonują się na wirtualnej maszynie (JVM Java Virtual Machine) Składnia oparta o język C++ W pełni zorientowany obiektowo (wszystko jest obiektem)
Algorytm. Krótka historia algorytmów
Algorytm znaczenie cybernetyczne Jest to dokładny przepis wykonania w określonym porządku skończonej liczby operacji, pozwalający na rozwiązanie zbliżonych do siebie klas problemów. znaczenie matematyczne
Programowanie. Oprogramowanie Pojęcia wstępne Programem - sekwencja rozkazów, które instruują komputer, jakie operacje i w jakiej kolejności powinien wykonać, by rozwiązać określony problem. Programowanie
Programowanie w C++ Wykład 1. Katarzyna Grzelak. 26 luty K.Grzelak (Wykład 1) Programowanie w C++ 1 / 28
Programowanie w C++ Wykład 1 Katarzyna Grzelak 26 luty 2018 K.Grzelak (Wykład 1) Programowanie w C++ 1 / 28 Dlaczego programowanie? K.Grzelak (Wykład 1) Programowanie w C++ 2 / 28 Umiejętność, która otwiera
Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki
Dariusz Brzeziński Politechnika Poznańska, Instytut Informatyki Język programowania prosty bezpieczny zorientowany obiektowo wielowątkowy rozproszony przenaszalny interpretowany dynamiczny wydajny Platforma
O programowaniu komputerów
O programowaniu komputerów Programowanie to wszechstronny proces prowadzący od problemu obliczeniowego do jego rozwiązania w postaci programu. Celem programowania jest odnalezienie sekwencji instrukcji,
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,
Bezpieczeństwo systemów komputerowych
Bezpieczeństwo systemów komputerowych Jak pisać poprawne programy? Aleksy Schubert (Marcin Peczarski) Instytut Informatyki Uniwersytetu Warszawskiego 6 listopada 2018 Na podstawie: David A. Wheeler Secure
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
Programowanie w logice
Programowanie w logice PROLOG cz.1 PROLOG język wysokiego poziomu Powstał w 1972 na Uniwersytecie w Marsylii (Francja) w zespole A.Colmerauer a i F.Roussel a PROgrammation en LOGique, PROgramming in LOGic,
Michał Olejnik. 22 grudnia 2009
Continuous TDD Politechnika Wrocławska Informatyka 22 grudnia 2009 Agenda Wprowadzenie 1 Wprowadzenie 2 3 4 5 Agenda Wprowadzenie 1 Wprowadzenie 2 3 4 5 Agenda Wprowadzenie 1 Wprowadzenie 2 3 4 5 Agenda
Podstawy Programowania Algorytmy i programowanie
Podstawy Programowania Algorytmy i programowanie Katedra Analizy Nieliniowej, WMiI UŁ Łódź, 3 października 2013 r. Algorytm Algorytm w matematyce, informatyce, fizyce, itp. lub innej dziedzinie życia,
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
Systemy Operacyjne (1)
Systemy Operacyjne (1) Marcin Gogolewski marcin.gogolewski@wsb.poznan.pl Wyższa Szkoła Bankowa w Poznaniu Poznań, 22 luty 2017 Po co nam system operacyjny Funkcje systemu operacyjnego udostępnianie zasobów
Podstawy programowania w języku C
Podstawy programowania w języku C WYKŁAD 1 Proces tworzenia i uruchamiania programów Algorytm, program Algorytm przepis postępowania prowadzący do rozwiązania określonego zadania. Program zapis algorytmu
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
Podstawy Programowania 1 Wstęp. Plan. Informacje organizacyjne. Bibliografia Literatura Podstawowa. Notatki. Notatki. Notatki.
Podstawy Programowania 1 Wstęp Arkadiusz Chrobot Zakład Informatyki 12 października 2016 1 / 41 Plan Informacje organizacyjne Bibliografia Wprowadzenie Algorytm System komputerowy Języki programowania
Podstawy programowania. Wykład 1 Wstęp. Krzysztof Banaś Podstawy programowania 1
Podstawy programowania. Wykład 1 Wstęp Krzysztof Banaś Podstawy programowania 1 Elementy historii informatyki I think there is a world market for maybe five computers. - Thomas Watson, chairman of IBM,
QEMU działa na procesorach procesorach: emuluje procesory: dostępne dla s.o. hosta:
QEMU Stosunkowo szybki emulator procesora, korzystający z tzw. dynamicznej translacji i kilku innych ciekawych technik programistycznych i optymalizacyjnych. działa na procesorach procesorach: Intel x86,
PROGRAMOWANIE w C prolog
PROGRAMOWANIE w C prolog dr inż. Jarosław Stańczyk Uniwersytet Przyrodniczy we Wrocławiu Wydział Biologii i Hodowli Zwierząt Katedra Genetyki 1 / jaroslaw.stanczyk@up.wroc.pl programowanie w c 17.10.2014
Architektura komputerów Historia systemów liczących
Historia systemów liczących Prezentacja jest współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego w projekcie pt. Innowacyjna dydaktyka bez ograniczeń - zintegrowany rozwój
Język JAVA podstawy. wykład 1, część 2. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna
Język JAVA podstawy wykład 1, część 2 1 Język JAVA podstawy Plan wykładu: 1. Krótka historia Javy 2. Jak przygotować sobie środowisko programistyczne 3. Opis środowiska JDK 4. Tworzenie programu krok po
Wstęp do programowania INP001213Wcl rok akademicki 2017/18 semestr zimowy. Wykład 1. Karol Tarnowski A-1 p.
Wstęp do programowania INP001213Wcl rok akademicki 2017/18 semestr zimowy Wykład 1 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan wykładów (1) Algorytmy i programy Proste typy danych Rozgałęzienia
Laboratorium 1 Temat: Przygotowanie środowiska programistycznego. Poznanie edytora. Kompilacja i uruchomienie prostych programów przykładowych.
Laboratorium 1 Temat: Przygotowanie środowiska programistycznego. Poznanie edytora. Kompilacja i uruchomienie prostych programów przykładowych. 1. Przygotowanie środowiska programistycznego. Zajęcia będą
TRANSLACJA I TRANSLATORY
TRANSLACJA I TRANSLATORY Języki programowania niskiego czy też wysokiego poziomu mają na zadanie przetworzyć ogół algorytmów w nich zapisanych na taką postać aby maszyna cyfrowa była w stanie je wykonać
Programowanie w C++ Wykład 1. Katarzyna Grzelak. 25 luty K.Grzelak (Wykład 1) Programowanie w C++ 1 / 38
Programowanie w C++ Wykład 1 Katarzyna Grzelak 25 luty 2019 K.Grzelak (Wykład 1) Programowanie w C++ 1 / 38 Dlaczego programowanie? K.Grzelak (Wykład 1) Programowanie w C++ 2 / 38 Umiejętność, która otwiera
Wprowadzenie: języki, symbole, alfabety, łańcuchy Języki formalne i automaty. Literatura
Wprowadzenie: języki, symbole, alfabety, łańcuchy Języki formalne i automaty Dr inŝ. Janusz Majewski Katedra Informatyki Literatura Aho A. V., Sethi R., Ullman J. D.: Compilers. Principles, Techniques
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?
Środowiska i platformy programistyczne
Środowiska i platformy programistyczne 1 Rys historyczny lata 80-90: efektywność! Cel: zwiększyć efektywność programisty jedno narzędzie: integracja edytor kodu, funkcje programistyczne (kompilacja, łączenie,
Programowanie proceduralne w języku C++ Pojęcia podstawowe - kod źródłowy
Programowanie proceduralne w języku C++ Pojęcia podstawowe - kod źródłowy Mirosław Głowacki 1 1 Akademia Górniczo-Hutnicza im. Stanisława Staszica w Ktrakowie Wydział Inżynierii Metali i Informatyki Stosowanej
Technologia Informacyjna
Technologia Informacyjna Oprogramowanie i licencje dr. inż Adam Klimowicz Oprogramowanie Rodzaje oprogramowania System operacyjny Program komputerowy bądź zbiór programów, który zarządza sprzętem oraz
Zapisywanie algorytmów w języku programowania wysokiego poziomu
Temat 7 program Zapisywanie algorytmów w języku programowania wysokiego poziomu 1. Język programowania 1.1. Klasyfikacja języków programowania 2. Struktura programu w języku Pascal 3. Etapy programowania
Programowanie niskopoziomowe
Programowanie niskopoziomowe ASSEMBLER Teodora Dimitrova-Grekow http://aragorn.pb.bialystok.pl/~teodora/ Program ogólny Rok akademicki 2011/12 Systemy liczbowe, budowa komputera, procesory X86, organizacja
* 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 +
TEST KOŃCOWY DLA KLASY III GIMNAZJUM- POGRAMOWANIE. Szkoła Podstawowa Nr 5. im. Księcia Mazowieckiego Siemowita IV w Gostyninie.
TEST KOŃCOWY DLA KLASY III GIMNAZJUM- POGRAMOWANIE 1. Po uruchomieni programu Greenfoot początkowa scena ma następujące składniki: a. obiekty scenerii i jeden obiekt ruchomy, b. obraz tła, jeden lub więcej
Obiektowy model dokumentu. Katedra Mikroelektroniki i Technik Informatycznych
Katedra Mikroelektroniki i Technik Informatycznych Łódź, 14 października 2005 roku Wstęp DOM Document Object Model zapewnia: Zbiór obiektów reprezentujących dokumenty XML i HTML. Model łączenia obiektów.
Algorytm. Słowo algorytm pochodzi od perskiego matematyka Mohammed ibn Musa al-kowarizimi (Algorismus - łacina) z IX w. ne.
Algorytm znaczenie cybernetyczne Jest to dokładny przepis wykonania w określonym porządku skończonej liczby operacji, pozwalający na rozwiązanie zbliżonych do siebie klas problemów. znaczenie matematyczne
Grzegorz Cygan. Wstęp do programowania mikrosterowników w języku C
Grzegorz Cygan Wstęp do programowania mikrosterowników w języku C Mikrosterownik Inne nazwy: Microcontroler (z języka angielskiego) Ta nazwa jest powszechnie używana w Polsce. Mikrokomputer jednoukładowy
KONSTRUKCJA KOMPILATORÓW
KONSTRUKCJA KOMPILATORÓW WYKŁAD Robert Plebaniak PLATFORMA PROGRAMOWA LINUX (może nie zawierać LLgen, wówczas instalacja ze strony http://tack.sourceforge.net); WINDOWS (używa się wtedy programu Cygwin,
Programy pomocnicze: diff, make, systemy rcs i cvs, debugger. Zarządzanie wersjami.
Programy pomocnicze: diff, make, systemy rcs i cvs, debugger. Zarządzanie wersjami. wer. 8 z drobnymi modyfikacjami Wojciech Myszka 2014-02-09 16:32:37 +0100 Co jest potrzebne programiście? 1. Umiejętność
Działanie systemu operacyjnego
Budowa systemu komputerowego Działanie systemu operacyjnego Jednostka centralna dysku Szyna systemowa (magistrala danych) drukarki pamięci operacyjnej I NIC sieci Pamięć operacyjna Przerwania Przerwania
Wprowadzenie do inżynierii przetwarzania informacji
Dr inż. Robert Wójcik Wprowadzenie do inżynierii przetwarzania informacji 1. Maszyny i systemy cyfrowe 1.1. Historia komputerów i główne kierunki ich rozwoju 1.2. Reprezentacja informacji w elektronicznych
Wstęp do informatyki. Maszyna RAM. Schemat logiczny komputera. Maszyna RAM. RAM: szczegóły. Realizacja algorytmu przez komputer
Realizacja algorytmu przez komputer Wstęp do informatyki Wykład UniwersytetWrocławski 0 Tydzień temu: opis algorytmu w języku zrozumiałym dla człowieka: schemat blokowy, pseudokod. Dziś: schemat logiczny
Podstawy programowania w Pythonie
Podstawy programowania w Pythonie Wykład 1 dr Andrzej Zbrzezny Instytut Matematyki i Informatyki Akademia Jana Długosza w Częstochowie 3 października 2012 dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania
dr inż. Jarosław Forenc
Informatyka 2 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr III, studia stacjonarne I stopnia Rok akademicki 2010/2011 Wykład nr 7 (24.01.2011) dr inż. Jarosław Forenc Rok akademicki