Informatyka #01 Wstęp do algorytmiki.

Slides:



Advertisements
Podobne prezentacje
Opracowanie: Maria W ą sik. Pierwsze komputery budowano w celu rozwi ą zywania konkretnych problemów. Gdy pojawiało si ę nowe zadanie, nale ż ało przebudowa.
Advertisements

Temat 2: Podstawy programowania Algorytmy – 1 z 2 _________________________________________________________________________________________________________________.
Czy wiesz, że?... INTERNET …TO JEST SPIS TREŚCI NIEBEZPIECZEŃSTWO SPOŁECZNOŚĆ INTERNETOWA DZIECKO W INTERNECIE ZAUFANE STRONY INTERNETOWE WIRUSY.
Tworzenie odwołania zewnętrznego (łącza) do zakresu komórek w innym skoroszycie Możliwości efektywnego stosowania odwołań zewnętrznych Odwołania zewnętrzne.
Zajęcia 1-3 Układ okresowy pierwiastków. Co to i po co? Pojęcie masy atomowej, masy cząsteczkowej, masy molowej Proste obliczenia stechiometryczne. Wydajność.
PRACA Z APLIKACJAMI SYSTEM PRZEMIESZCZANIA oraz NADZORU WYROBÓW AKCYZOWYCH EMCS PL 1.
ELEMENTY ZESTAWU KOMPUTEROWEGO
Excel 2007 dla średniozaawansowanych zajęcia z dnia
ZASTOSOWANIE FUNKCJI WYKŁADNICZEJ I LOGARYTMICZNEJ DO OPISU RUCHU DRGAJĄCEGO Agnieszka Wlocka Agnieszka Szota.
“Wszystko, co uczyniliście jednemu z tych braci moich najmniejszych, Mnieście uczynili.” (Mt 25,40) Słowo Życia Kwiecień 2016.
Rozwiązywanie zadań tekstowych za pomocą równań, nierówności i układów równań Radosław Hołówko Konsultant: Agnieszka Pożyczka.
Co potrafię w przyjaźni z komputerem?.  Z jakich elementów się składa? Z jakich elementów się składa?  Do czego służy? Do czego służy?  Jakie programy.
Wypadkowa sił.. Bardzo często się zdarza, że na ciało działa kilka sił. Okazuje się, że można działanie tych sił zastąpić jedną, o odpowiedniej wartości.
Solphy GlassNexus System Elektronicznej Wymiany Danych Dla Producentów Szyb Zespolonych.
IEN 2010 © wszelkie prawa zastrzeżone SEMINARIUM Pakiet MATLAB w Zakładzie OGM Możliwości posiadanych produktów.
Algorytmy Informatyka Zakres rozszerzony
Lekcja 17 Budowanie wyrażeń algebraicznych Opracowała Joanna Szymańska Konsultacje Bożena Hołownia.
Model warstwowy OSI Model OSI (Open Systems Interconnection) opisuje sposób przepływu informacji między aplikacjami programowymi w jednej stacji sieciowej.
Komunikatory Zespół Szkół Zawodowych Nr 3 im. Adama Kocura w Katowicach - Janowie.
Budżet rodzinny Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego.
Menu Jednomiany Wyrażenia algebraiczne -definicja Mnożenie i dzielenie sum algebraicznych przez jednomian Mnożenie sum algebraicznych Wzory skróconego.
Python. Języki Programistyczne Microcode Machine code Assembly Language (symboliczna reprezentacja machine code) Low-level Programming Language (FORTRAN,
Optymalna wielkość produkcji przedsiębiorstwa działającego w doskonałej konkurencji (analiza krótkookresowa) Przypomnijmy założenia modelu doskonałej.
Woda O tym, dlaczego powinniśmy ją oszczędzać Jan Stasiewicz, kl. II C.
Definiowanie i planowanie zadań typu P 1.  Planowanie zadań typu P  Zadania typu P to zadania unikalne służące zwykle dokonaniu jednorazowej, konkretnej.
Sieci przepływowe: algorytmy i ich zastosowania.
Programowanie strukturalne i obiektowe Klasa I. Podstawowe pojęcia dotyczące programowania 1. Problem 2. Algorytm 3. Komputer 4. Program komputerowy 5.
Obliczanie procentu danej wielkości Radosław Hołówko.
Jak tworzymy katalog alfabetyczny? Oprac.Regina Lewańska.
Co to Internet? Internet (skrótowiec od ang. inter-network, dosłownie "między- sieć") – ogólnoświatowa sieć komputerowa, określana również jako sieć sieci.
, + - = 0,5 CZYTAJ DOKŁADNIE ZADANIA I POLECENIA. IM TRUDNIEJSZE ZADANIE, TYM BARDZIEJ WARTO JE PRZECZYTAĆ KILKA RAZY.
Mikroprocesory.
Toruńskie Technikum Informatyczne
Rola książki w życiu człowieka
Innowacyjne wykorzystanie mediów drukowanych.
Kurs języka C++ – organizacja zajęć ( )
Pliki-Partycje-Dyski
Kluczowe elementy skutecznej strategii analizy danych internetowych
Minimalizacja automatu
Schematy blokowe.
Informacja o maturze w 2018 roku
DEFINICJA I ZASTOSOWANIE W JĘZYKU HASKELL
SYSTEM KWALIFIKACJI, AWANSÓW I SPADKÓW
Dlaczego warto czytać?.
On-the-Fly Garbage Collection
Prezentacja o Ubuntu Jakub Kociemba 2TI.
Liczby pierwsze.
Plik (ang. file) jest podstawową jednostką przechowywania danych w komputerach, a dokładniej: na tzw. urządzeniach pamięci masowej wykorzystywanych przez.
ALGORYTMY I STRUKTURY DANYCH
Akademia C# lab. 9 Zdarzenia i delegaty.
Niedziesiętne systemy liczbowe
Wstęp do Informatyki - Wykład 3
Budowa, typologia, funkcjonalność
Optymalizacja programów Open-Source
Wstęp do Informatyki - Wykład 8
Materiały pochodzą z Platformy Edukacyjnej Portalu
Wykorzystanie aplikacji użytkowych do przeprowadzenia cyberataku
PROGRAMY DO KONTROLI RODZICIELSKIEJ
Git - system kontroli wersji
Języki programowania.
Temat: Pliki— miejsce na komputerowe informacje
Jak korzystać z usługi Video s i Raportu Kontaktów
Dodatek – Technologie internetowe
Proste obliczenia w arkuszu kalkulacyjnym
Implementacja rekurencji w języku Haskell
Znajdowanie liczb pierwszych w zbiorze
Czym powinien charakteryzować się innowacyjny projekt?
Program na dziś Wprowadzenie Logika prezentacji i artykułu
Autor: Magdalena Linowiecka
Zapis prezentacji:

Informatyka #01 Wstęp do algorytmiki

Algorytm (def.) w informatyce logiczna sekwencja operacji, które mają zostać wykonane przez program. Należy szukać najlepszych i najwydajniejszych metod na rozwiązanie jakiegoś zadania. Nawet niewielka zmiana algorytmu może skrócić czas szukania rozwiązania wielokrotnie.

Algorytm … Pisząc programy jesteśmy odpowiedzialni za ich działanie. Algorytm to oprócz bezbłędnego działania także jego wydajność. Nie możemy dopuścić, aby w naszych algorytmach były błędy, zwłaszcza, kiedy z naszego produktu korzysta więcej osób. Uniknięcie błędów nie jest wcale proste. A sprawdzanie poprawności algorytmów to zadanie czysto matematyczne. Jedną z metod jest indukcja matematyczna, czyli udowodnienie, że niezależnie od danych wejściowych algorytm oblicza poprawnie dane wyjściowe. Błędy zdarzają się wszędzie jednak bardzo często występują one w miejscach, kiedy algorytm sprawdza jakieś warunki. Może się zdarzyć, że algorytm nie będzie miał końca, a nie oto nam przecież chodzi. Jeżeli napiszemy algorytm do prostego problemu i skomplikujemy jego działanie do tego stopnia że będzie on działał bardzo wolno to nawet jeśli wyniki jego pracy będą dobre, jego poprawność pozostawia wiele do życzenia.

Algorytm … Należy maksymalnie ograniczyć ilość operacji wykonywanych przez procesor. Każdy wasz program piszcie jak najlepiej, jeżeli od razu się nie nauczycie później możecie mieć problemy. Jeżeli przez optymalizację algorytmu zyskamy 0,001 sekundy czasu podczas przebiegu jednej pętli to już sukces, kiedy pętla musi wykonać się na przykład milion razy. Poza tym pamiętajmy niektórzy mają procesory o wiele wolniejsze od naszych.

Algorytm … Zadania algorytmiczne - czyli zadania, dla których znamy sposób rozwiązania. Algorytmy efektywne - czyli takie, które dają rozwiązanie przed końcem świata. Złożoność obliczeniowa algorytmów - ocena, ile trzeba będzie wykonać obliczeń. Algorytmy heurystyczne: metody bez gwarancji na znalezienie rozwiązania (sztuczna inteligencja).

Definicje … Program komputerowy (ang. computer program) - zbiór (ciąg) instrukcji wykonywanych przez komputer, realizujących określone zadanie Kompilator (ang. compiler) to program służący do automatycznego tłumaczenia kodu napisanego w jednym języku (języku źródłowym) na równoważny kod w innym języku (języku wynikowym) Interpreter – Konsolidator (ang. linker) lub program konsolidujący to jeden z programów składowych kompilatora. Konsolidator w trakcie procesu konsolidacji łączy zadane pliki obiektowe i biblioteki statyczne tworząc w ten sposób plik wykonywalny.

Etapy tworzenia programu: Planowanie Pisanie Kompilacja Konsolidacja Testowanie Optymalizacja

"najlepsze rozwiązania są najlepsze" Motto: "najlepsze rozwiązania są najlepsze"

Języki programowania wybrane Fortran - 1957 r. - FORmula TRAnslation - to najstarszy jeszcze ciągle używany język programowania. BASIC - 1964 r. - Beginner's All-purpose Symbolic Instruction Code. Microsoft powstał właśnie po to, aby wydać i sprzedawać własny interpreter tego języka. C- 1969 r. C++ - 1983 r. C++ używany jest dziś między innymi przez Microsoft Office, Adobe PDF Reader oraz przeglądarkę Mozilla Firefox. Python - 1991 r. - Ciekawe zastosowania: wyszukiwarka Google, serwis YouTube oraz struktury NASA. PHP - 1995 r. JavaScript - 1995 r.

Systemy liczenia wybrane Dwójkowy (binarny):   0,1 Ósemkowy (oktalny):  0,1,2,3,4,5,6,7 Szesnastkowy (hex): 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F Np.  00=0, FF=255

Bity i bajty „Bit” = binary unit, czyli jednostka dwójkowa, tak/nie. 1 bit: 0, 1, rozróżnia 2 znaki. 2 bity: 00, 01, 10, 11, rozróżniają 4 znaki. 3 bity: 000, 001, 010, 011, 100, 101, 110, 111, rozróżniają 8 znaków. 4 bity: 0000 ... 1111, rozróżniają 16 znaków. 8 bitów pozwala odróżnić 28 = 16 x 16 = 256 znaków. Ciąg 8 bitów = 1 bajt, wygodna jednostka do pamiętania podstawowych symboli. Alfabet polski ma 35 liter, uwzględniając małe i duże litery + znaki specjalne mamy prawie 100 znaków. Bramki tranzystorów przyjmują tylko dwa stany: przewodzą lub nie, są binarne.

Wielkość danych 210=1024=1K, kilobajt,   typowa strona tekstu to kilka KB; 220=1024K=1M, megabajt,   książka bez grafiki lub minuta muzyki; 230=1024M=1G, gigabajt,   film cyfrowy, sporo grafiki, ludzki genom; 240=1024G=1T, terabajt,   duża biblioteka, szerokoekranowy film w kinie; 250=1024T=1P, petabajt,   ludzka pamięć; Biblioteka Kongresu USA zawiera około 20 TB informacji tekstowej.

Standardy reprezentowania znaków alfanumerycznych: ASCII -  American Standard Code for Information Exchange, używa 7 bitów. ANSI - American National Standards Institute. Każdy znak można zapisać w postaci dwójkowej. Na przykład imię JOHN można zapisać w kodzie ASCI. Grafika, dźwięk i wideo da się również zapisać w kodzie binarnym. Znak kod binarny znak kod binarny A 0100 0001 N 0100 1110 B 0100 0010 O 0100 1111 C 0100 0011 P 0101 0000 D 0100 0100 Q 0101 0001 E 0100 0101 R 0101 0010 F 0100 0110 S 0101 0011 G 0100 0111 T 0101 0100 H 0100 1000 U 0101 0101 I 0100 1001 V 0101 0110 J 0100 1010 W 0101 0111 K 0100 1011 X 0101 1000 L 0100 1100 Y 0101 1001 M 0100 1101 Z 0101 1010

Standardy reprezentowania znaków alfanumerycznych: Od 1992 roku działa standard Unicode, 2 bajty/znak. W jednym pliku można zapisać 2562=65536 znaków, w tym około 3000 znaków definiowalnych przez użytkownika. Unicode jest (był) używany w systemach operacyjnych Windows NT, Novell Netware, Windows 98 i nowszych wersjach, pakietach Office'97. Widać to po wielkości plików !

Komputer liczy - człowiek myśli. A co z inteligencją … Komputer liczy - człowiek myśli.