Technologia informacyjna Algorytm Janusz Uriasz

Podobne dokumenty
Definicje. Algorytm to:

Algorytm poprawny jednoznaczny szczegółowy uniwersalny skończoność efektywność (sprawność) zmiennych liniowy warunkowy iteracyjny

Algorytm. Krótka historia algorytmów

Technologie informacyjne - wykład 12 -

1. Informatyka - dyscyplina naukowa i techniczna zajmująca się przetwarzaniem informacji.

Wprowadzenie do algorytmiki

Wykład z Technologii Informacyjnych. Piotr Mika

Algorytm. Krótka historia algorytmów

Algorytm. Słowo algorytm pochodzi od perskiego matematyka Mohammed ibn Musa al-kowarizimi (Algorismus - łacina) z IX w. ne.

Podstawy programowania

Co to jest algorytm? przepis prowadzący do rozwiązania zadania, problemu,

Programowanie strukturalne

INFORMATYKA W SZKOLE. Podyplomowe Studia Pedagogiczne. Dr inż. Grażyna KRUPIŃSKA. D-10 pokój 227

Temat 20. Techniki algorytmiczne

Algorytm. Słowo algorytm pochodzi od perskiego matematyka Mohammed ibn Musa al-kowarizimi (Algorismus - łacina) z IX w. ne.

1 Wprowadzenie do algorytmiki

Algorytmy i struktury danych. wykład 2

ALGORYTMY I PROGRAMY

Algorytm. a programowanie -

Algorytmy i schematy blokowe

Metodyki i techniki programowania

Definicja algorytmu brzmi:

Informatyka wprowadzenie do algorytmów (II) dr hab. inż. Mikołaj Morzy

ALGORYTMY Algorytm poprawny jednoznaczny szczegółowy uniwersalny skończoność efektywność (sprawność) zmiennych liniowy warunkowy iteracyjny

Metodyki i techniki programowania

ECDL Podstawy programowania Sylabus - wersja 1.0

Programowanie i techniki algorytmiczne

a[1] a[2] a[3] a[4] a[5] a[6] a[7] a[8] a[9] a[10]

ALGORYTMY. 1. Podstawowe definicje Schemat blokowy

START. Wprowadź (v, t) S:=v*t. Wyprowadź (S) KONIEC

Algorytmy. dr Dariusz Banaś (UJK) Seminarium w ramach projektu Fascynujący Świat Nauki dla uczniów gimnazjów. wersja 0.9. Start.

ALGORYTMY. 1. Podstawowe definicje Schemat blokowy

Teraz bajty. Informatyka dla szkół ponadpodstawowych. Zakres rozszerzony. Część 1.

11. Blok ten jest blokiem: a. decyzyjnym b. końcowym c. operacyjnym

Zapisywanie w wybranej notacji algorytmów z warunkami i iteracyjnych

Schematy blokowe. Algorytmy Marek Pudełko

Schemat programowania dynamicznego (ang. dynamic programming)

Wykład z Podstaw Informatyki dla I roku BO. Piotr Mika

2. Graficzna prezentacja algorytmów

Podstawy i języki programowania

Algorytmy. Programowanie Proceduralne 1

POLITECHNIKA OPOLSKA

Język ludzki kod maszynowy

Poprawność semantyczna

Podstawy Informatyki. Algorytmy i ich poprawność

SYLABUS DOTYCZY CYKLU KSZTAŁCENIA Realizacja w roku akademickim 2016/17

Podstawy Informatyki. Inżynieria Ciepła, I rok. Wykład 7 Algorytmy

Podstawy Informatyki. Metalurgia, I rok niestacjonarne. Wykład 2 Algorytmy

Klasa 2 INFORMATYKA. dla szkół ponadgimnazjalnych zakres rozszerzony. Założone osiągnięcia ucznia wymagania edukacyjne na. poszczególne oceny

1. Nagłówek funkcji: int funkcja(void); wskazuje na to, że ta funkcja. 2. Schemat blokowy przedstawia algorytm obliczania

Programowanie dynamiczne

Nazwa wariantu modułu (opcjonalnie): Laboratorium programowania w języku C++

Pole trójkąta ze współrzędnych punktów : P1(x1,y1), P2(x2,y2), P3(x3,y3)

Algorytm. Algorytmy Marek Pudełko

METODA SYMPLEKS. Maciej Patan. Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski

Elżbieta Kula - wprowadzenie do Turbo Pascala i algorytmiki

Schematy blokowe I. 1. Dostępne bloki: 2. Prosty program drukujący tekst.

Scenariusz lekcji opartej na programie Program nauczania informatyki w gimnazjum DKW /99

MATERIAŁY DO ZAJĘĆ I. Podstawowe pojęcia. Algorytm. Spis treści Przepis

Algorytmy i struktury danych. Wykład 4

Programowanie od pierwszoklasisty do maturzysty. Grażyna Koba

Spis treści. Część I Metody reprezentowania informacji oraz struktury danych...9. Wprowadzenie Rozdział 1. Reprezentacja liczb całkowitych...

Informatyka 1. Plan dzisiejszych zajęć. zajęcia nr 1. Elektrotechnika, semestr II rok akademicki 2008/2009

WYMAGANIA EDUKACYJNE Z INFORMATYKI NA POSZCZEGÓLNE STOPNIE W KLASIE 7 opracowane na podstawie podręcznika:

Innowacja pedagogiczna dla uczniów pierwszej klasy gimnazjum Programowanie

INFORMATYKA POZIOM ROZSZERZONY

SCENARIUSZ LEKCJI. Streszczenie. Czas realizacji. Podstawa programowa

Algorytmy i struktury danych - opis przedmiotu

Algorytmy. Programowanie Proceduralne 1

Obliczenia iteracyjne

POLITECHNIKA OPOLSKA

Cyfrowe portfolio język algorytmów

Sposoby przedstawiania algorytmów

WYMAGANIA EDUKACYJNE Z INFORMATYKI dla klasy III gimnazjalnej, Szkoły Podstawowej w Rychtalu

Podstawy algorytmiki Dariusz Piekarz

Zapisywanie algorytmów w języku programowania

Informatyka klasa III Gimnazjum wymagania na poszczególne oceny

Rozkład materiału do nauczania informatyki w liceum ogólnokształcącym Wersja I

Wybrane wymagania dla informatyki w gimnazjum i liceum z podstawy programowej

Podstawy Informatyki. Programowanie. Inżynieria Ciepła, I rok. Co to jest algorytm? Istotne cechy algorytmu

Rozkład materiału do nauczania informatyki w liceum ogólnokształcącym Wersja II

ZMODYFIKOWANY Szczegółowy opis przedmiotu zamówienia

SYLABUS DOTYCZY CYKLU KSZTAŁCENIA Realizacja w roku akademickim 2016/17

Programowanie liniowe całkowitoliczbowe. Tadeusz Trzaskalik

PoniŜej znajdują się pytania z egzaminów zawodowych teoretycznych. Jest to materiał poglądowy.

WYMAGANIA EDUKACYJNE

Warunki i sposoby realizacji podstawy programowej kształcenia ogólnego w klasie IV i VII szkoły podstawowej z informatyki.

Wstęp do programowania

Podstawy Informatyki. Programowanie. Metalurgia, I rok. Co to jest algorytm? Istotne cechy algorytmu

Z nowym bitem. Informatyka dla gimnazjum. Część II

EGZAMIN MATURALNY Z INFORMATYKI 17 MAJA 2016 POZIOM ROZSZERZONY. Godzina rozpoczęcia: 14:00 CZĘŚĆ I WYBRANE: Czas pracy: 90 minut

Algorytmika i pseudoprogramowanie

3. Podaj elementy składowe jakie powinna uwzględniać definicja informatyki.

PRZEWODNIK PO PRZEDMIOCIE

METODY KOMPUTEROWE W OBLICZENIACH INŻYNIERSKICH

Numeryczna algebra liniowa. Krzysztof Banaś Obliczenia Wysokiej Wydajności 1

EGZAMIN MATURALNY W ROKU SZKOLNYM 2017/2018 INFORMATYKA

METODY OPISU ALGORYTMÓW KOMPUTEROWYCH

Adresowanie obiektów. Adresowanie bitów. Adresowanie bajtów i słów. Adresowanie bajtów i słów. Adresowanie timerów i liczników. Adresowanie timerów

Cyfrowe portfolio język algorytmów Edycja I. dr Joanna Borgensztajn. Sylabus

Transkrypt:

Technologia informacyjna Algorytm Janusz Uriasz

Algorytm Algorytm - (łac. algorithmus); ścisły przepis realizacji działań w określonym porządku, system operacji, reguła komponowania operacji, sposób postępowania. Algorytmy wyznaczają w postaci kolejnych faz (etapów) tok (sposób) postępowania w określonych sytuacjach. Są one często odkrywane i formułowane przez teoretyków i wchodzą w skład ogólnej wiedzy o sprawnym i skutecznym działaniu. Ich formułowanie umożliwia rozwiązywanie podobnych zadań należących do określonej klasy. Schematy algorytmiczne wiążą się z językiem programowania. 2

Właściwości algorytmu: Poprawność dla każdego zestawu poprawnych danych wejściowych algorytm powinien dawać poprawne wyniki Skończoność dla każdego zestawu poprawnych danych wejściowych algorytm powinien dać wyniki w kończonej liczbie operacji Określoność algorytm nie może pozostawiać wątpliwości co do wyboru kolejnych operacji Efektywność (sprawność)-algorytm rozwiązuje zadanie w rozsądnym czasie (najniższy koszt, najmniejsza liczba kroków) Ogólność (uniwersalność) algorytm powinien rozwiązywać nie jedno szczególne zadanie lecz całą klasę zadań Realizator algorytmu potrafi wykonać wszystkie operacje 3

Analiza algorytmów szukanie najlepszych algorytmów dla programów komputerowych Odpowiedzi na pytania: 1. Czy dany problem może być rozwiązany z wykorzystaniem komputera w dostępnym czasie i przy dostępnej pamięci? 2. Który ze znanych algorytmów należy zastosować w danych okolicznościach? 3. Czy istnieje lepszy algorytm od rozważanego? 4. Czy to algorytm optymalny? 5. Jak uzasadnić, że stosując dany algorytm, rozwiąże się postawione zadanie?

Analiza algorytmów 1. Poprawność semantyczna (program wykonuje postawione sformułowane- zadanie) 2. Prostota 3. Czas działania 4. Ilość zajmowanej pamięci 5. Optymalność 6. Okoliczności, w jakich należy go używać

Prezentacja algorytmu (sposób zapisu): Opisowa lista kroków Zadanie nawigacyjne: 1. Dane współrzędne punktu P(B,L), linia geodezyjna s, Azymut A 2. Oblicz Pa(L,B)... 3. Oblicz Ps(L,B)... 4. Sprawdzenie dokładności obliczeń 5. Jeżeli dokładność>dokładności_obliczeń idź do pn. 4 6. Wyświetl Pb(B,L) 9. KONIEC 6

W postaci dźwiękowej: W postaci logicznych tablic decyzji: Pole wariantów decyzji 2 3 4 5 1. Ocena 1 1 1 2 2. Zaliczone N T T T 3. Nieobecności 1 2 3 4 Warianty decyzji 1. Dopuszczenie do egzaminu X X 2. Warunkowe X 3. Nie dopuszczenie do egzaminu X Kombinacje wariantów decyzji 7

Prezentacja algorytmu (sposób zapisu): Pseudokod Przenoszenie współrzędnych (zadanie wprost): Program przenoszenie_wspolrzednych Zmienne fia, laa, s, Azymut, dokladnosc, dok_obliczen : rzeczywiste Poczatek Czytaj (fia) Czytaj (laa, s, Azymut, dokladnosc, dok_obliczen) Fis =... Lis =...... Pisz(wynik; fib, lab) koniec 8

Prezentacja algorytmu: start P1 (L1,B1), S, A12 Graficzna (schemat blokowy) dokładność obl M1, N1 DBi, DLi, DAi przybliżenie (i=1) dokl Bi=DBi dokl Li= DLi T A2, B2, A2 dokł o<dok. iter N i=i+1 A2, B2, A2 Bs,As Ms, Ns DBi, DLi, DAi przybliżenie i stop dokl B= dok Bi-DBi-1, dok L = dokli- DLi-1, dokl A= dok Ai - DAi-1 9

1.2. Schemat blokowy operator Schemat blokowy - graficzne odwzorowanie czynności programu blok we-wy N T blok warunkowy Elementy schematu blokowego proces zdefiniowany poza programem droga przepływu danych 1 1 łącznik wewnątrzstronicowy START STOP początek lub koniec działania programu komentarz

Elementy schematu blokowego Reguły Każdy algorytm ma jeden początek Wszystkie drogi muszą kończyć się blokiem stop Wszystkie bloki muszą mieć zgodną z budową liczbę wejść i wyjść Każda linia musi być opatrzona strzałką informującą o kierunku przepływu informacji Początek Koniec Przerwa Wejście / / wyjście Blok decyzyjny proces 11

Rodzaje algorytmów przepływ informacji Proste Rozgałęzione Operacja 1 Operacja 1 Operacja 2 Operacja 3 prawda Wyrażeni e logiczne fałsz Operacja 3 Operacja 2 12

Cykliczne Rodzaje algorytmów przepływ informacji c.d. Mieszane Operacja 1 Operacja 1 Operacja 2 Operacja 3 prawda Wyrażeni e logiczne fałsz Operacja 3 Operacja 2 Operacja 4 13

Rodzaje algorytmów Iteracyjne Umożliwiają wykonać wielokrotnie te same operacje Muszą posiadać warunkowe zakończenie pętli Często stosowana jest dekrementacja lub inkrementacja Iteracja ograniczona Iteracja warunkowa Operacja 1 Operacja 2 Operacja 3 wykonaj n razy Operacja 1 Operacja 2 Warunek fałsz prawda 14

Algorytmy rekurencyjne: Właściwość podstawowa algorytmu rekurencyjnego: algorytm wywołuje sam siebie. Problemy rozwiązywane przez algorytmy rekurencyjne dają się podzielić na podproblemy, które są podobne do całości problemu. 15

Proces tworzenia algorytmu: 1. Zdefiniowanie pożądanego stanu wyjściowego 2. Określenie stanu wejściowego 3. Ustalenie dziedziny dopuszczalnych operacji 4. Rozbicie zadania na zadania cząstkowe 5. Budowa procedur rozwiązujących zadania cząstkowe 6. Powiązanie procedur w jedną całość 7. Prezentacja algorytmu 8. Testowanie i weryfikacja algorytmu 16

Schemat blokowy z rozwidleniem Przedstaw algorytm dla poniższego zadania Dana jest funkcja postaci y( x) x 7 x 3 x 4 dla dla dla x 2 2 x x 2 2 Obliczyć wartość funkcji y(x) dla zadanej wartości x

Schemat blokowy z powtórzeniami Schemat blokowy z iteracją Przedstaw algorytm dla poniższego zadania Dane są macierze: A o wymiarach m x n: a(i,j); i =1, 2,, m; j =1, 2,, n B o wymiarach n x p: b(j,l); j =1, 2,, n; l =1, 2,, p Obliczyć iloczyn macierzy A i B: iloczyn_mac.