Informatyka jako dziedzina wiedzy (c) Jerzy Nawrocki Wykł. 1 Wprowadzenie do informatyki Wykład 1 Informatyka jako dziedzina wiedzy Jerzy.Nawrocki@put.poznan.pl Copyright, 2007 © Jerzy R. Nawrocki Wprowadzenie do informatyki
Informatyka jako dziedzina wiedzy Co to jest informatyka? Dziedzina wiedzy zajmująca się problemami przetwarzania, przechowywania i przesyłania danych a także budową i pielęgnacją systemów przetwarzających, przechowujących i przesyłających dane. Informatyka jako dziedzina wiedzy
Towarzystwa informatyczne ACM = Association for Computing Machinery http://www.acm.org/ IEEE = Institution of Electrical and Electronics Engineers IEEE CS = IEEE Computer Society http://www.computer.org/ Polskie Towarzystwo Informatyczne http://www.pti.org.pl/ Informatyka jako dziedzina wiedzy
Trzy filary informatyki Matematyka Nauki ścisłe (science) Inżynieria Mathematics Engineering Science Informatyka jako dziedzina wiedzy
Curriculum 2001 - Obszary wiedzy Struktury dyskretne (43) Podstawy programowania (38) Algorytmy i złożoność (31) Architektura i organizacja (36) Systemy operacyjne (18) Obliczenia w sieciach (15) Języki programowania (21) Komunikacja człowiek-komputer (8) Grafika i wizualizacja (3) Systemy inteligentne (10) Zarządzanie informacją (10) Społeczne aspekty informatyki (16) Inżynieria oprogramowania (31) Obliczenia i metody numeryczne (0) Informatyka jako dziedzina wiedzy
Informatyka jako dziedzina wiedzy Struktury dyskretne Klika Graf nieskierowany Informatyka jako dziedzina wiedzy
Informatyka jako dziedzina wiedzy Struktury dyskretne Drzewo Cykl w grafie Informatyka jako dziedzina wiedzy
Acykliczny graf skierowany (DAG) Struktury dyskretne Cykl w grafie Acykliczny graf skierowany (DAG) Informatyka jako dziedzina wiedzy
Podstawy programowania (c) Jerzy Nawrocki Podstawy programowania Wykł. 1 Język schematów blokowych S > 0 Tak Nie R 1 S S + 1 Informatyka jako dziedzina wiedzy Wprowadzenie do informatyki
Podstawy programowania Silnia(n) = n! = 123 .. n n! = (n-1)! n s 1 n > 1 Tak s s * n n n - 1 Nie Wynik s Silnia(0) = 1 Silnia(1) = 1 Silnia(2) = 2 Silnia(3) = 6 Silnia(4) = 24 Silnia(5) = 120 int Silnia (int n) { int s = 1; while (n > 1) { s = s * n; n = n – 1;} return s; } Informatyka jako dziedzina wiedzy
Informatyka jako dziedzina wiedzy Algorytmy i złożoność Dany jest zbiór A zawierający n liczb całkowitych dodatnich. Czy można go podzielić na takie dwa zbiory B, C, że suma liczba w zbiorze B jest równa sumie liczb w zbiorze C? 123 132 112 134 114 Informatyka jako dziedzina wiedzy
Informatyka jako dziedzina wiedzy Algorytmy i złożoność n=6 Klasy algorytmów: „Wykładnicze”: p: czas(n) p(n) 123 132 112 134 114 n*n*n + n*n + n + 1 k n0 nn0 2n > nk Informatyka jako dziedzina wiedzy
Informatyka jako dziedzina wiedzy Algorytmy i złożoność n=6 Klasy algorytmów: Wielomianowe: p: czas(n) p(n) 123 132 112 134 114 „Wykładnicze”: p: czas(n) p(n) Klasy problemów: Wielomianowe: alg. wielomianowy NP-trudne: najpraw. alg. wielomian. Informatyka jako dziedzina wiedzy
Architektura i organizacja Pamięć wirtualna Odczyt komórki o adresie 9 Informatyka jako dziedzina wiedzy
Architektura i organizacja Pamięć wirtualna Odczyt komórki o adresie log. ladr: str = ladr / 3 Informatyka jako dziedzina wiedzy
Architektura i organizacja Tablica stron Pamięć wirtualna Odczyt komórki o adresie log. ladr: str = ladr / 3 prz = ladr mod 3 fadr = blok(str) + prz Informatyka jako dziedzina wiedzy
Architektura i organizacja Tablica stron Pamięć wirtualna Odczyt komórki o adresie log. ladr: str = ladr / 3 prz = ladr mod 3 fadr = blok(str) + prz Informatyka jako dziedzina wiedzy
Informatyka jako dziedzina wiedzy Systemy operacyjne A B LP HD AllocateLP; AllocateHD; UseHDandLP; ReleaseHD; ReleaseLP; AllocateHD; AllocateLP; UseHDandLP; ReleaseLP; ReleaseHD; Informatyka jako dziedzina wiedzy
NC: Obliczenia w sieciach . . . NC4: WWW jako przykład obliczeń typu klient-serwer NC5: Budowanie aplikacji WWW NC9: Informatyka jako dziedzina wiedzy
Informatyka jako dziedzina wiedzy (c) Jerzy Nawrocki Języki programowania Wykł. 1 Kompilator Analizator Generator .pas .exe Informatyka jako dziedzina wiedzy Wprowadzenie do informatyki
Informatyka jako dziedzina wiedzy (c) Jerzy Nawrocki Języki programowania Wykł. 1 Dany jest ciąg cyfr, nawiasów, znaków +, -, *, /. Czy ten ciąg jest poprawnie zbudowanym wyrażeniem arytmetycznym? 1 + 2 * 3 = 7 1 + * 2 3 = ??? Informatyka jako dziedzina wiedzy Wprowadzenie do informatyki
Informatyka jako dziedzina wiedzy (c) Jerzy Nawrocki Diagramy języka UML Wykł. 1 Jak widać, język UML oferuje różnego rodzaju diagramy, z których każdy opisuje inne aspekty systemu. Jak już wcześniej wspomniano, tych rodzajów diagramów jest więcej i będą one omówione w trakcie wykładu poświęconego językowi UML. Informatyka jako dziedzina wiedzy Wprowadzenie do informatyki
Tryby świadomego działania mózgu Ruchy sakadyczne Są Brak Tryb eksploracyjny Tryb planowania Informatyka jako dziedzina wiedzy
Schemat ogólny systemu Pseudo-okulary System centralny Bluetooth Bluetooth Informatyka jako dziedzina wiedzy
Pseudo-okulary: Jazz Multisensor Informatyka jako dziedzina wiedzy
Grafika i wizualizacja Jak odwzorowywać na ekranie obiekty 3-wymiarowe w czasie rzeczywistym? Informatyka jako dziedzina wiedzy
Grafika i wizualizacja Informatyka jako dziedzina wiedzy
Politechnika Poznańska Politechnika Poznańska Politechnika Poznańska Systemy inteligentne Politechnika Poznańska Politechnika Poznańska Jak rozpoznawać obrazy lub pismo? Politechnika Poznańska Politechnika Poznańska Informatyka jako dziedzina wiedzy
Zarządzanie informacją Jak manipulować dużą ilością danych? Podaj nazwiska tych, u których dochód na głowę > 11 000 zł Informatyka jako dziedzina wiedzy
Informatyka jako dziedzina wiedzy Therac-25 AECL (Atomic Energy Canada Limited) Naświetlanie rentgenowskie – leczenie raka 1983-87 6 poparzeń (niektóre ze skutkiem śmiertelnym) Informatyka jako dziedzina wiedzy
Pracochłonność testowania Testowanie: ~ % - % całkowitej pracochłonności. Testowanie systemów krytycznych: 70% - 80% całkowitej pracochłonności (!) -- Roger Pressman’97 Roger S. Pressman Informatyka jako dziedzina wiedzy
Obliczenia i metody numeryczne 2x = 10 Jak rozwiązać układ równań lub pojedyncze równanie? 3x = 1 x2 = 2 Informatyka jako dziedzina wiedzy
Obliczenia i metody numeryczne a2 + b2 = a 1 + (b/a)2 = b 1 + (a/b)2 begin a:= 3e-25; b:= 4e-25; if a > b then m:= a*sqrt(1+ (b/a)*(b/a)) else m:= b*sqrt(1+ (a/b)*(a/b)); writeln(m) end. begin a:= 3e-25; b:= 4e-25; m:= sqrt(a*a + b*b); writeln(m) end. 0.0000000000E+00 5.0000000000E-25 Informatyka jako dziedzina wiedzy
Informatyka jako dziedzina wiedzy Regulamin przedmiotu Wymiar przedmiotu: 2w, 2lab, Egzamin, 5 ECTS/30 Obecność: na wykładach – nieobowiązkowa na ćwiczeniach – obowiązkowa Sposób bieżącej kontroli wyników nauczania: ćwiczenia: sprawdziany egzamin zerowy: styczeń 2008 Informatyka jako dziedzina wiedzy
Informatyka jako dziedzina wiedzy Regulamin przedmiotu Konsultacje: J.Nawrocki: pon., godz. 15:30 – 17:00, pok. 109 CW www.cs.put.poznan.pl/jnawrocki jerzy.nawrocki@put.poznan.pl Oszacowanie pracochłonności (godz.): 30 wykłady 20 bieżąca powtórka treści wykładowych 30 studia literaturowe 30 laboratoria 30 przygotowanie do ćw. lab. 10 przygotowanie do egzaminu 150 RAZEM Informatyka jako dziedzina wiedzy
Informatyka jako dziedzina wiedzy Egzamin Termin: Ustali dziekanat 5 zadań; od 0 do 10 pkt za zadanie Od 28 pkt 3.0; od 33 pkt 3.5; od 38 pkt 4.0, ... Indeks lub legitymacja Kalkulatory zabronione Pisemny: 1 kartka „ściągi” formatu A4 (obie strony) Informatyka jako dziedzina wiedzy