Temat 1: Algorytmika i Algorytmy.
|
|
- Bernard Bielecki
- 6 lat temu
- Przeglądów:
Transkrypt
1 Temat 1: Algorytmika i Algorytmy. Algorytm to skończony zbiór jasno zdefiniowanych czynności koniecznych do wykonania pewnego zadania w skończonej liczbie kroków. Ma on przeprowadzić system z pewnego stanu początkowego do pożądanego stanu końcowego. Algorytm może zostać zaimplementowany 1 w postaci programu komputerowego lub układu elektronicznego. Kiedy podczas tego procesu programiści popełnią błąd (ang. bug), może to doprowadzić do poważnych skutków. Dla przykładu błędy w implementacji algorytmów bezpieczeństwa mogą pozwolić hackerowi na włamanie do systemu. Algorytm często porównuje się do przepisu kulinarnego. Dla przykładu, aby zrobić bigos należy w określonej kolejności oraz odstępach czasowym (imperatyw czasowy) dodawać właściwe rodzaje kapusty i innych składników. Może istnieć kilka różnych przepisów dających na końcu bardzo podobną potrawę. Główna różnica między algorytmem kulinarnym i komputerowym tkwi w zdolności jego wykonawcy do zrozumienia języka przepisu. Kucharz jest dużo bardziej inteligentny od komputera. Wiele algorytmów jasnych dla człowieka, staje się niezrozumiałe dla maszyny. W niektórych krajach, jak USA, algorytmy mogą zostać opatentowane 2, jeżeli dają się zaimplementować w jakimś praktycznym celu. Opatentowanie algorytmów spowalnia rozwój informatyki, bo jeden producent może uzyskać monopol, np. na pisanie oprogramowania tworzącego pewne typy plików (np. GIF). Wiele koncernów komputerowych prowadzi między sobą prawnicze spory dotyczące własności do niektórych patentów. 1 Implementacja (realizacja) to działanie polegające na szczególnym zastosowaniu ogólnej teorii lub standardu. Jedna teoria lub standard może mieć wiele różnych implementacji różniących się użytymi rozwiązaniami (na przykład algorytmem) i stopniem zgodności. Przykładem implementacji standardu HTML są różne przeglądarki internetowe, edytory HTML a nawet czytniki poczty elektronicznej które potrafią wyświetlać wiadomości w tym formacie. 2 Patent - oficjalny dokument wydawany przez urzędy patentowe, który umożliwia zastrzeżenie prawa do zarobkowego wykorzystania danego wynalazku przez osoby fizyczne lub prawne składające wniosek o jego zastrzeżenie. W języku codziennym patentem nazywa się także sam opatentowany wynalazek. Zastrzeżenie patentowe umożliwia prawne ściganie osób, które w celach zarobkowych wykorzystują bez zgody właściciela dany patent. 1
2 Algorytmy komputerowe Implementacja Komputery przetwarzają przekazywane im informacje z wykorzystaniem pewnych algorytmów. Program jest algorytmem zapisanym w języku zrozumiałym dla maszyny (asemblerze 3 ). Zwykle algorytmy pracują na pewnych danych wejściowych i uzyskują z nich dane wyjściowe. Informacje zapisane w pamięci maszyny traktuje się jako jej stan wewnętrzny. Niektóre algorytmy mają za zadanie wyłącznie przeprowadzanie komputera z jednego stanu wewnętrznego do innego. Każdy algorytm komputerowy musi być wyrażony w bardzo rygorystycznie zdefiniowanym języku. Ludzie często komunikując się przesyłają między sobą informację wieloznaczne. Komputery mogą reagować tylko na całkowicie jednoznaczne instrukcje. Jeżeli dany algorytm da się wykonać na maszynie o dostępnej mocy obliczeniowej i pamięci oraz akceptowalnym czasie, to mówi się że jest obliczalny. Poprawne działanie większości algorytmów implementowanych w komputerach opiera się na kolejnej realizacji pewnego zestawu warunków. Jeżeli, któryś z nich nie zostanie spełniony, to program kończy się komunikatem błędu. Czasami podczas implementacji algorytmu ważny warunek zostanie pominięty Dla przykładu, mamy program dzielący przez siebie dwie liczby. Użytkownik każe mu dzielić przez zero. Aplikacja bez sprawdzenia warunku dzielnik nierówny zero zawiesi się w takiej sytuacji. 3 Asembler to język programowania, w którym zasadniczo jedno polecenie odpowiada jednemu rozkazowi procesora. Jest to język powstały na bazie języka maszynowego poprzez zastąpienie kodów maszynowych pisanych binarnie lub szesnastkowo ich mnemonicznymi odpowiednikami. Dzięki zamianie liczb na tzw. mnemoniki można pisać programy w miarę zrozumiałe dla człowieka, a jednocześnie bezpośrednio tłumaczone na kod maszynowy procesora zapewniając pełną kontrolę programową. Pierwszym asemblerem był skonstruowany przez Konrada Zuse - układ elektromechaniczny przygotowania taśmy perforowanej z programem dla maszyny Z4 (moduł Planfertigungsteil). Pozwalał na wprowadzanie i odczyt rozkazów i adresów w sposób zrozumiały dla człowieka. 2
3 Klasyfikacja Badaniem algorytmów zajmuje się algorytmika. Istnieje wiele różnych sposobów podziału algorytmów na grupy. Problem ten wzbudza kontrowersje. Podstawowe paradygmaty tworzenia algorytmów komputerowych: dziel i zdobywaj dzielimy problem na kilka mniejszych i je znowu dzielimy, aż ich rozwiązaniach nie staną się oczywiste (rekurencja 4 ), programowanie dynamiczne problem dzielony jest na kilka, ważność każdego z nich jest oceniana i po pewnym wnioskowaniu wyniki analizy niektórych prostszych zagadnień wykorzystuje się do rozwiązania głównego problemu, metoda zachłanna nie analizujemy podproblemów dokładnie, tylko wybieramy najbardziej obiecującą w tym momencie drogę rozwiązania, programowanie liniowe oceniamy rozwiązanie problemu przez pewną funkcję jakości i szukamy jej minimum, poszukiwanie i wyliczanie kiedy przeszukujemy zbiór danych aż do odnalezienie rozwiązania, probabilistyczne rozwiązanie algorytm działa poprawnie z bardzo wysokim prawdopodobieństwem, ale wynik nie jest pewny, heurystyka 5 człowiek na podstawie swojego doświadczenia tworzy algorytm, który działa w najbardziej prawdopodobnych warunkach, rozwiązanie zawsze jest przybliżone. Najważniejsze techniki implementacji algorytmów komputerowych proceduralność algorytm dzielimy na szereg podstawowych procedur, wiele algorytmów dzieli wspólne biblioteki standardowych procedury, z których są one wywoływane w razie potrzeby, praca po kolei wykonywanie kolejnych procedur algorytmu, według kolejności ich wywołań, na raz pracuje tylko jedna procedura, praca równoległa wiele procedur wykonywanych jest w tym samym czasie, wymieniają się one danymi, rekurencja procedura wywołuje sama siebie, aż do uzyskania wyniku lub błędu, objektowość procedury i dane łączymy w pewne obiekty reprezentujące najważniejsze elementy algorytmu oraz stan wewnętrzny wykonującego je urządzenia. Przykłady 4 Rekursja albo rekurencja (ang. recursion, z łac. recurrere, przybiec z powrotem) to w programowaniu i w matematyce odwoływanie się (np. funkcji lub definicji) do samej siebie. 5 Heurystyka - metoda znajdowania rozwiązań dla której nie ma gwarancji znalezienia rozwiązania optymalnego, a często nawet prawidłowego. Rozwiązań tych używa się np. wtedy, gdy pełny algorytm jest z przyczyn technicznych zbyt kosztowny, lub gdy nie jest nawet znany (np. przy przewidywaniu pogody). Metodę używa się też często do znajdowania rozwiązań przybliżonych, na podstawie których później wylicza się ostateczny rezultat pełnym algorytmem. 3
4 algorytm Euklidesa algorytmy sortowania algorytmy kompresji algorytmy sztucznej inteligencji algorytmy przeszukiwania drzew: min-max algorytm unifikacji algorytmy kryptograficzne algorytm genetyczny algorytm kwantowy algorytm Luhna Błędy w implementacji Kiedy komputery stały się powszechne, algorytmy zaczęto masowo wykorzystywać do rozwiązywania problemów życia codziennego. Dzisiaj w miliardach maszyn cyfrowych działają niezliczone zastępy umieszczonych w nich programów. Wiele z nich oblicza stan konta w banku, inne kompresują dźwięk podczas rozmowy telefonicznej itp. Jednak rewolucja cyfrowa niesie ze sobą niebezpieczeństwo błędnych implementacji algorytmów. Kody źródłowe programów zabezpieczających większość dzisiejszych systemów przed niepowołanym atakiem mogą okazać się pełne błędów. W takiej sytuacji są one narażone na atak cyberterrorystyczny na światową skalę. Ratunkiem jest tutaj stosowanie jawnych implementacji algorytmów, których kod źródłowy jest otwarty dla każdego. W ten sposób zwiększa się szansa na odnalezienie błędów i ich szybką naprawę. Nie mniej ważne jest stałe aktualizowanie najważniejszych programów przez administratorów ważnych sieci komputerowych. Algorytmy poza komputerami Implementacja algorytmu w ogólności oznacza występowanie pewnego podobieństwa pomiędzy algorytmem opisanym w ludzkim języku do fizycznego zjawiska lub procesu. Czasami algorytm może być podstawą budowy przez ludzi urządzenia, jak np. komputer. Jednak o implementacji możemy mówić również, kiedy pewien system zachowuje się podobnie do algorytmu. Dla przykładu mózg ptaka implementuje arytmetykę w postaci sieci neuronowej. Dzięki temu zwierzę jest w stanie porównywać pewne odstępy czasu. W przypadku maszyn algorytm może zostać zaimplementowany jako pewna sieć połączeń elektrycznych, pneumatycznych bądź mechanicznych. Przykładem może być tutaj analogowy regulator obrotów z pierwszych silników parowych, realizujący algorytm P (proporcjonalny). Przy takim podejściu sukces nie oznacza zatrzymanie algorytmu, lecz utrzymywanie pewnego stanu systemu. Możemy np. powiedzieć, że algorytm utrzymywania życia działa poprawnie, aż do śmierci organizmu. Poprawny algorytm ma utrzymywać pewne parametry żywej istoty (np. temperaturę) w pewnym zakresie. 4
5 Przyszłość algorytmów Ograniczenia algorytmów Prawie każdy algorytm komputerowy musi kiedyś zakończyć swoją pracę. Oznacza to, że problem musi być rozwiązany z wykorzystaniem dostępnych zasobów obliczeniowych w skończonym czasie. Jeżeli algorytm dla coraz większego zbioru danych powoduje wzrost czasu obliczeń szybciej niż to wynikałoby z funkcji wielomianowej, to mówi się że nie jest obliczalny. Przykład algorytmu Wyobraź sobie że masz nieposortowaną listę przypadkowych liczb. Masz znaleźć największą z nich. Istnieje wiele algorytmów rozwiązujących ten problem. Jeden z najszybszych można przedstawić listę poleceń: 1. Rozpocznij pracę 2. Stwórz rejestr przechowujący bieżącą wartość elementu tabeli i wczytaj do niego pierwszy element listy, jeżeli to się nie uda wypisz na wyjście wartość błędną. 3. Stwórz rejestr przechowujący największą liczbę, nadaj jej bieżącą wartość elementu tabeli. Początek pętli - wczytaj kolejny element tabeli, a jeżeli to się nie uda zakończ pętlę. Jeżeli bieżąca wartość elementu tabeli, jest większa od rejestru największej liczby, to wpisz ją do tego rejestru. Powróć do początku pętli. 4. Wypisz na wyjście wartość z rejestru największej liczby. 5. Zwolnij rejestr bieżącej wartości oraz największej liczby i zakończ pracę wypisując na wyjście wartość sukcesu. Historia algorytmów Początki Słowo algorytm pochodzi od nazwiska arabskiego matematyka z IX wieku Muhammada ibn Musa Alchwarizmiego. Początkowo słowem algorism nazywano czynności konieczne do wykonywania obliczeń z użyciem dziesiętnego systemu liczbowego. Obecne znaczenie słowa algorytm jako zestawu ścisłych reguł powstało wraz z rozwojem matematyki i techniki. Wynalezienie zbiorów zasad pozwalających na obliczanie parametrów konstruowanych maszyn, stało się podstawą rewolucji przemysłowej zapoczątkowanej w końcu XVIII stulecia. Jednak dopiero zbudowanie maszyn, które same mogły realizować pewne proste algorytmy, stało się przełomem. Ogromnego postępu dokonał w tej dziedzinie w 1842 roku Charles Babbage, który na podstawie swoich doświadczeń sformułował ideę maszyny analitycznej zdolnej do realizacji złożonych algorytmów matematycznych. 5
6 Rozwój maszyn liczących Wraz z wynalezieniem pod koniec XIX wieku kart perforowanych elektro-mechaniczne maszyny osiągnęły zdolność realizacji algorytmów przetwarzających ogromne zbiory danych. Karty perforowane stały się wejściem, z którego dane przetwarzały proste algorytmy sumujące. Jako wyjście służyły odpowiednie zegary. Ogromny postęp w tej dziedzinie zawdzięczamy firmie IBM, która zbudowała tego typu urządzenia, aby policzyć wszystkich mieszkańców USA. W XX wieku postęp elektroniki pozwolił na budowę maszyn analogowych potrafiących w swoim wnętrzu odtwarzać pewne algorytmy matematyczne. Mogły one dokonywać operacji arytmetycznych oraz różniczkować i całkować. Komputery Kluczowym stał się moment, w którym badacze zdali sobie sprawę, że maszyny najlepiej radzą sobie z szybkim powtarzaniem bardzo prostych operacji. Algorytm wyrażony w najprostszym z możliwych języków okazał się dla urządzeń najlepszy. Prowadzone podczas II wojny światowej prace kryptologów doprowadziły do zbudowania maszyn łamiących szyfry. Największe zasługi miał tutaj Alan Turing 6. Badacz ten podczas prac nad algorytmami szyfrującymi, zdał sobie sprawę, że każdy z nich da się sprowadzić do zestawu instrukcji realizowanych przez pewną teoretyczną maszynę. Miała ona zdolność do czytania i pisania poleceń z nieskończonej taśmy. Jej rozkazy mogły zawierać polecenia przesunięcia się o ileś kroków głowicy, zapisu/odczytu w jakimś miejscu taśmy nowej instrukcji. Podług tej idei zbudowano pierwsze komputery. Posługiwały się algebrą Boole'a oraz binarnym systemem liczbowym. Kolejne rozkazy były odczytywane z kart perforowanych, a wyniki pojawiały się na świetlnych ekranach bądź w wydrukach. Okazało się, że tak proste maszyny były w stanie realizować bardzo złożone algorytmy matematyczne, jak np. obliczanie trajektorii pocisków czy rakiet. Dzisiaj komputery są powszechne oraz tanie i przez to implementacja w nich właściwych algorytmów stała się bardzo ważną gałęzią gospodarki. Na całym świecie pracują miliony programistów zajmujących się doskonaleniem oprogramowania. 6 Alan Mathison Turing jeden z twórców informatyki. Turing znany jest z prac nad łamaniem niemieckich szyfrów w czasie II wojny światowej korzystając z osiągnięć kryptologów zespół, w którym pracował Turing odkrył zasadę pracy niemieckiej maszyny szyfrującej Enigma, co walnie przyczyniło się do zwycięstwa Sprzymierzonych w II wojnie światowej. Po wojnie zaprojektował jeden z pierwszych elektronicznych, programowanych komputerów. Był również pomysłodawcą tak zwanego testu Turinga eksperymentu będącego próbą formalnego zdefiniowania sztucznej inteligencji. Umarł śmiercią samobójczą w wyniku depresji spowodowanej przymusowym "leczeniem" hormonalnym jego homoseksualizmu. 6
7 TEMAT 2: Zapisywanie i analiza algorytmów. Aby zająć się pisaniem programów, należy nabyć pewnych umiejętności, do których na pewno trzeba zaliczyć: zdolność logicznego myślenia, jasnego formułowania problemów do rozwiązania, podawanie czytelnych i jednoznacznych odpowiedzi. Chęć nabycia tych umiejętności zmusza do tego, aby starannie wykonywać swoją pracę. Widać z tego, że pewne nawyki są przydatne nie tylko w informatyce, ale również w naszym codziennym życiu. Jeżeli potrafimy rozwiązywać problemy za pomocą komputera, wykorzystując języki programowania, to znaczy, że programujemy. Zanim jednak poznamy konkretny język programowania i zaczniemy pisać jakikolwiek program, należy nauczyć się posługiwania się algorytmami. Komputer jest tylko maszyną, którą wykorzystujemy do własnych celów, bo komputer nie myśli, lecz tylko wykonuje polecenia. Dlatego krok po kroku trzeba mu podać czynności, jakie ma wykonać. Co to jest algorytm? Wydaje się, że najbardziej przystępną definicją będzie określenie algorytmu jako przepisu prowadzącego do rozwiązania zadania, problemu. W przepisie tym podaje się opis czynności, które trzeba wykonać, oraz dane, dla których algorytm będzie określony. Co w takim przepisie może się znaleźć? Może być to np. przypisanie zmiennej określonej wartości (np. za x podstaw 3), wyświetlenie w danym momencie wyniku obliczeń, pobranie danych z dostępnej bazy danych. Mówimy, że podajemy instrukcje lub że będzie wykonana operacja. Dane (stałe, zmienne, parametry), które są przetwarzane za pomocą instrukcji, nazywamy obiektami. Wyróżnia się wiele obiektów - mogą to być liczby naturalne, rzeczywiste, znaki, słowa. Rozwiązanie dowolnego problemu polega na wykonaniu w określonej kolejności akcji na obiektach. Zbiór tych akcji nazywamy algorytmem. Jakie mogą być rodzaje algorytmów? iteracyjne - rodzaj algorytmu i programu, w których wielokrotnie wykonuje się pewne instrukcje, dopóki nie zostanie spełniony określony warunek, rekurencyjne - takie procedury, które w swojej definicji posiadają wywołanie samej siebie, sekwencyjne - instrukcje wykonywane są w porządku, w jakim zostały wprowadzone. W jaki sposób można przedstawić algorytm? Pierwszy i najprostszy to opis słowny, np. po lekcjach pójdę do kiosku i kupię gazetę. Innymi przykładami mogą być: podyktowanie przez telefon przepisu na zaparzenie herbaty czy wyjaśnianie koledze, jak należy rozwiązać zadanie z matematyki. Przykładów takich zachowań, kiedy widzimy, że występuje jakaś kolejność przewidywalnych działań, można podawać bardzo wiele. To są przykłady opisów algorytmicznych. Inny sposób to zapis algorytmu za pomocą schematu blokowego. Aby zapisać algorytm za pomocą takiego schematu, trzeba poznać stosowane symbole i ich znaczenie. Będziemy używać tzw. skrzynki - graficznego sposobu przedstawienia czynności wykonywanych przez komputer. Skrzynki te łączone są za pomocą strzałek. W ten sposób pokazujemy kolejność wykonywania akcji. Skrzynki i wskazują początek i koniec każdego algorytmu. Ze skrzynki wychodzi tylko jedna droga, do skrzynki wchodzi co najmniej jedno połączenie. 7
8 W skrzynce instrukcyjnej umieszcza się polecenia do wykonania (instrukcje) - podstawienie, obliczenie, wprowadzenie wartości. W skrzynce warunkowej umieszcza się warunek, który decyduje o wyborze dalszej drogi postępowania. Ze skrzynki wychodzą dwa połączenia: TAK (wybierane, gdy warunek jest spełniony), NIE (gdy warunek nie jest spełniony). W skrzynce wejścia/wyjścia umieszcza się wprowadzane dane lub wyprowadzane wyniki. Ze skrzynki wychodzi tylko jedno połączenie. Aby dobrze zrozumieć algorytmy, należy samemu spróbować ułożyć jakiś algorytm. Będzie ciekawiej, gdy zaczniemy zadawać pytania i algorytm rozbudowywać. Zacznijmy od najprostszego, książkowego algorytmu: chcę wyjść z domu i w zależności od pogody wezmę parasol lub nie. Opis słowny postępowania: przed wyjściem z domu sprawdzam jaka jest pogoda: jeżeli pada, zabieram parasol i wychodzę, jeśli nie pada, wychodzę. W tak prostym przypadku spotykamy się z sytuacją, w której występuje sprawdzenie warunku. Słowem, które będzie nas informować, że należy wprowadzić sprawdzenie warunku, jest słowo "jeśli". Opis za pomocą schematu blokowego: 8
9 W algorytmie tym wykorzystujemy skrzynkę warunkową, ponieważ mamy do czynienia z sytuacją, gdy tok dalszego postępowania zależy od dokonanego wyboru (dokładnie: zależy od pogody). Z innym przykładem prostego algorytmu mamy w sytuacji obliczania objętość prostopadłościanu o krawędziach długości: 3cm, 5cm, 8cm. Opis słowny postępowania: aby obliczyć objętość, należy pomnożyć przez siebie długości trzech krawędzi wychodzących z jednego wierzchołka; długości muszą mieć jednakowe miano. Z podanej treści zadania wynika, że mamy dane długości potrzebnych krawędzi w jednakowych jednostkach. Zadanie to nie sprawi nikomu żadnej trudności. Warto jednak pomyśleć, czy nie można byłoby ułożyć takiego algorytmu, za pomocą którego obliczymy objętość każdego prostopadłościanu. Opis słowny działania algorytmu: - podaj długość pierwszej krawędzi; a:= W przykładzie tym wykonywane czynności następują jedna po drugiej. Instrukcje wykonywane są w takim porządku, w jakim zostały zapisane. Jest to przykład algorytmu zapisanego w postaci sekwencji. - podaj długość drugiej krawędzi; b:= - podaj długość trzeciej krawędzi; c:= - wykonaj obliczenie V:= a*b*c - podaj wynik; V:= Spróbuj rozwiązać samodzielnie: Zapisz drugi algorytm za pomocą schematu blokowego. Jakimi cechami musi charakteryzować się dobry algorytm? 9
10 TEMAT 3: Instrukcje iteracyjne pętle. Spotykamy się często z takim sytuacjami, że musimy wykonywać pewną czynność aż do momentu, gdy odniesiemy sukces np. 'zrób dziesięć pompek', 'będziesz tak długo czytać wiersz, aż nauczysz się go na pamięć' lub 'dopóki będziesz siedzieć cicho, nie zapytam cię'. Z tego wynika, że możemy spotkać się z trzema sytuacjami: gdy musimy wykonać czynność bądź zadaną ilość razy, bądź do momentu spełnienia warunku. Wykonaj instrukcję r razy np. przeczytaj wiersz trzy razy. o Opis słowny działania algorytmu: Przeczytaj wiersz pierwszy raz. Przeczytaj wiersz drugi raz. Przeczytaj wiersz trzeci raz. W tym przypadku mamy algorytm zapisany w postaci sekwencji. o Schemat blokowy: Opis słowny działania algorytmu: 6. Przeczytaj wiersz trzy razy. 7. Czytaj wiersz. 8. Czy przeczytałeś wiersz trzy razy? a) jeśli tak, przejdź do kroku 4, b) jeśli nie, przejdź do kroku Przeczytałeś wiersz trzy razy. Występuje tutaj sprawdzenie warunku. Gdy warunek nie jest spełniony, czynność trzeba wykonać jeszcze raz. 10
11 Schemat blokowy: Powtarzaj wykonanie instrukcji aż do spełnienia warunku. Przykładem takiego algorytmu może być zmienione poprzednie zadanie: Czytaj wiersz tak długo, aż nauczysz się go na pamięć. Opis słowny działania algorytmu: Wykonywanie polecenia "przeczytaj wiersz" trwa tak długo, aż nauczysz się go na pamięć. 1.Przeczytaj wiersz. 2.Czy umiesz wiersz na pamięć? a) jeśli tak, przejdź do kroku 3, b) jeśli nie, przejdź do kroku 1. 3.Gratulacje, nauczyłeś się wiersza na pamięć! 11
12 Schemat blokowy: Dopóki warunek nie jest spełniony, wykonuj podane instrukcje. Są to polecenia typu: 'dopóki jest zimno, noś czapkę', 'dopóki nie poprawisz ocen, nie pójdziesz grać w piłkę', 'dopóki nie zdasz egzaminu, nie będziesz jeździć samochodem' itd. 2. Dopóki jest czerwone światło dla pieszych, stój i czekaj. Opis słowny działania algorytmu: 1.Stój. 2.Czy świeci się czerwone światło na przejściu dla pieszych? a) jeśli tak, przejdź do kroku 1, b) jeśli nie, przejdź do kroku 3. 3.Możesz przejść przez ulicę, zachowując ostrożność. Stój tak długo, aż nie zapali się zielone światło! Warunkiem, który musi zostać spełniony, jest zmiana światła. 12
13 Schemat blokowy: Przykładów tego rodzaju algorytmów jest bardzo wiele. W zasadzie większość czynności można opisać algorytmem. Będą one mniej lub bardzie rozbudowane, a zależy to od tego, do jakiego stopnia można przewidzieć zachowanie lub wykonywanie czynności w różnych sytuacjach. Algorytmami iteracyjnymi będą te, w których stosujemy pętlę tzn. zapis, w którym nakażemy wykonanie pewnej akcji jeszcze raz po sprawdzeniu warunku, który trzeba spełnić. 13
14 TEMAT 4: Przykłady algorytmów w matematyce i fizyce. Matematyka 1. Zbuduj algorytm, za pomocą, którego można obliczyć drugą i trzecią potęgę danej liczby. BUDOWA ALGORYTMU: - podaj liczbę a, - oblicz kwadrat liczby a, - oblicz sześcian liczby a, - podaj wartość kwadratu liczby a, - podaj sześcian liczby a. 2. Zbuduj algorytm służący do rozwiązania równania typu ax + b = 0 BUDOWA ALGORYTMU: - podaj wartość współczynnika a, - podaj wartość współczynnika b, - jeżeli a = 0, to sprawdź b, - jeżeli b = 0, to napisz, że jest to równanie tożsamościowe (nieskończenie wiele rozwiązań), - jeżeli b 0, to napisz, że jest to równanie sprzeczne (nie ma rozwiązań), - jeżeli a 0, to oblicz x x:= - b/a - napisz rozwiązanie równania x:= 14
15 Fizyka 1. Przedstaw za pomocą algorytmu sposób na obliczanie gęstości ciała stałego. BUDOWA ALGORYTMU: 1. Zmierz masę ciała stałego m:= 2. Zmierz za pomocą menzurki objętość ciała V:= 3. Oblicz gęstość ciała 4. Podaj gęstość ciała (g/cm³) r:= 2. Zapisz za pomocą algorytmu sposób na rozpoznawanie rodzaju ruchu ciała ze względu na zmianę prędkości. 1. Podaj prędkość początkową V 1 := 2. Podaj prędkość końcową V 2 := 3. Oblicz przyrost prędkości ΔV := V 2 - V 1 4. Czy ΔV=0? a) jeśli tak, pisz: ruch jednostajny, b) jeśli nie, sprawdź, czy ΔV > 0 1. jeśli tak pisz: ruch jednostajnie przyspieszony, 2. jeśli nie pisz: ruch jednostajnie opóźniony. Problemy do samodzielnego rozwiązania - matematyka: 1. Na podstawie zadania 1 zbuduj algorytm obliczający kolejne potęgi podanej liczby (np. czwartą i piątą). 2. Zbuduj algorytm obliczający pierwiastek kwadratowy i sześcienny danej liczby. 3. Zapisz algorytm opisujący postępowanie przy poszukiwaniu pomyślanej liczby (z podanego zakresu w możliwie najmniejszej liczbie prób). 4. Zapisz algorytm rozwiązywania równania typu ax + b = c 5. Zapisz algorytm obliczający sumę pięciu liczb. 6. Zapisz algorytm obliczania średniej z pięciu liczb. 7. Dane są długości trzech odcinków. Zbadaj, czy można zbudować z nich trójkąt. 8. Podaj algorytm obliczania pola figur płaskich: a) kwadratu, b) prostokąta, c) dowolnego trójkąta, d) trójkąta równobocznego, e) trapezu, f) rombu, g) równoległoboku. 15
5 lekcji o algorytmach - Co to jest algorytm?
5 lekcji o algorytmach - Co to jest algorytm? Aby zająć się pisaniem programów, należy nabyć pewnych umiejętności, do których na pewno trzeba zaliczyć: zdolność logicznego myślenia, jasnego formułowania
Co to jest algorytm? przepis prowadzący do rozwiązania zadania, problemu,
wprowadzenie Co to jest algorytm? przepis prowadzący do rozwiązania zadania, problemu, w przepisie tym podaje się opis czynności, które trzeba wykonać, oraz dane, dla których algorytm będzie określony.
KARTA PRACY UCZNIA. Klasa II
Dobrze widzi się tylko sercem. Najważniejsze jest niewidoczne dla oczu. KARTA PRACY UCZNIA Klasa II Temat: Budowanie schematu blokowego realizującego prosty algorytm. Czynności: 1. Uruchom komputer, a
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
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,
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
Algorytm. Algorytmy Marek Pudełko
Algorytm Algorytmy Marek Pudełko Definicja Algorytm to skończony, uporządkowany ciąg jasno zdefiniowanych czynności, koniecznych do wykonania pewnego zadania. Algorytm ma przeprowadzić system z pewnego
Algorytm. a programowanie -
Algorytm a programowanie - Program komputerowy: Program komputerowy można rozumieć jako: kod źródłowy - program komputerowy zapisany w pewnym języku programowania, zestaw poszczególnych instrukcji, plik
ALGORYTMY. 1. Podstawowe definicje Schemat blokowy
ALGORYTMY 1. Podstawowe definicje Algorytm (definicja nieformalna) to sposób postępowania (przepis) umożliwiający rozwiązanie określonego zadania (klasy zadań), podany w postaci skończonego zestawu czynności
Algorytmy i schematy blokowe
Algorytmy i schematy blokowe Algorytm dokładny przepis podający sposób rozwiązania określonego zadania w skończonej liczbie kroków; zbiór poleceń odnoszących się do pewnych obiektów, ze wskazaniem porządku,
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
Wprowadzenie do algorytmiki
Wprowadzenie do algorytmiki Pojecie algorytmu Powszechnie przyjmuje się, że algorytm jest opisem krok po kroku rozwiązania postawionego problemu lub sposób osiągnięcia jakiegoś celu. Wywodzi się z matematyki
Zapisywanie algorytmów w języku programowania
Temat C5 Zapisywanie algorytmów w języku programowania Cele edukacyjne Zrozumienie, na czym polega programowanie. Poznanie sposobu zapisu algorytmu w postaci programu komputerowego. Zrozumienie, na czym
Wykład z Technologii Informacyjnych. Piotr Mika
Wykład z Technologii Informacyjnych Piotr Mika Uniwersalna forma graficznego zapisu algorytmów Schemat blokowy zbiór bloków, powiązanych ze sobą liniami zorientowanymi. Jest to rodzaj grafu, którego węzły
Algorytmy, reprezentacja algorytmów.
Algorytmy, reprezentacja algorytmów. Wprowadzenie do algorytmów Najważniejszym pojęciem algorytmiki jest algorytm (ang. algorithm). Nazwa pochodzi od nazwiska perskiego astronoma, astrologa, matematyka
1 Wprowadzenie do algorytmiki
Teoretyczne podstawy informatyki - ćwiczenia: Prowadzący: dr inż. Dariusz W Brzeziński 1 Wprowadzenie do algorytmiki 1.1 Algorytm 1. Skończony, uporządkowany ciąg precyzyjnie i zrozumiale opisanych czynności
START. Wprowadź (v, t) S:=v*t. Wyprowadź (S) KONIEC
GRUPA I Co to jest algorytm, a czym jest program komputerowy? Algorytm: uporządkowany i uściślony sposób rozwiązywania problemu, zawierający szczegółowy opis wykonywanych czynności. Program komputerowy:
POLITECHNIKA OPOLSKA
POLITECHNIKA OPOLSKA WYDZIAŁ MECHANICZNY Katedra Technologii Maszyn i Automatyzacji Produkcji Laboratorium Podstaw Inżynierii Jakości Ćwiczenie nr 2 Temat: Schemat blokowy (algorytm) procesu selekcji wymiarowej
ALGORYTMY. 1. Podstawowe definicje Schemat blokowy
ALGORYTMY 1. Podstawowe definicje Algorytm (definicja nieformalna) to sposób postępowania (przepis) umożliwiający rozwiązanie określonego zadania (klasy zadań), podany w postaci skończonego zestawu czynności
Informacja w perspektywie obliczeniowej. Informacje, liczby i obliczenia
Informacja w perspektywie obliczeniowej Informacje, liczby i obliczenia Cztery punkty odniesienia (dla pojęcia informacji) ŚWIAT ontologia fizyka UMYSŁ psychologia epistemologia JĘZYK lingwistyka nauki
POLITECHNIKA OPOLSKA
POLITECHNIKA OPOLSKA WYDZIAŁ MECHANICZNY Katedra Technologii Maszyn i Automatyzacji Produkcji Laboratorium Podstaw Inżynierii Jakości Ćwiczenie nr 2 Temat: Schemat blokowy (algorytm) procesu selekcji wymiarowej
1. Informatyka - dyscyplina naukowa i techniczna zajmująca się przetwarzaniem informacji.
Temat: Technologia informacyjna a informatyka 1. Informatyka - dyscyplina naukowa i techniczna zajmująca się przetwarzaniem informacji. Technologia informacyjna (ang.) Information Technology, IT jedna
WYMAGANIA EDUKACYJNE Z MATEMATYKI DLA KLASY VI wg podstawy programowej z VIII 2008r.
WYMAGANIA EDUKACYJNE Z MATEMATYKI DLA KLASY VI wg podstawy programowej z VIII 2008r. Ocena niedostateczna. Zna nazwy argumentów działań Pamięciowo i pisemnie wykonuje każde z czterech działań na liczbach
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,
INFORMATYKA W SZKOLE. Podyplomowe Studia Pedagogiczne. Dr inż. Grażyna KRUPIŃSKA. D-10 pokój 227
INFORMATYKA W SZKOLE Dr inż. Grażyna KRUPIŃSKA grazyna@fis.agh.edu.pl D-10 pokój 227 Podyplomowe Studia Pedagogiczne 2 Algorytmy Nazwa algorytm wywodzi się od nazwiska perskiego matematyka Muhamed ibn
Algorytmika i pseudoprogramowanie
Przedmiotowy system oceniania Zawód: Technik Informatyk Nr programu: 312[ 01] /T,SP/MENiS/ 2004.06.14 Przedmiot: Programowanie Strukturalne i Obiektowe Klasa: druga Dział Dopuszczający Dostateczny Dobry
Klasa 2 INFORMATYKA. dla szkół ponadgimnazjalnych zakres rozszerzony. Założone osiągnięcia ucznia wymagania edukacyjne na. poszczególne oceny
Klasa 2 INFORMATYKA dla szkół ponadgimnazjalnych zakres rozszerzony Założone osiągnięcia ucznia wymagania edukacyjne na poszczególne oceny Algorytmy 2 3 4 5 6 Wie, co to jest algorytm. Wymienia przykłady
11. Blok ten jest blokiem: a. decyzyjnym b. końcowym c. operacyjnym
1. Instrukcja warunkowa a. słuŝy do wprowadzania danych oraz wprowadzania wyników b. to instrukcja decyzyjna c. to sposób przedstawienia algorytmu 2. Instrukcja, która opisuje wykonanie róŝnych czynności
Sposoby przedstawiania algorytmów
Temat 1. Sposoby przedstawiania algorytmów Realizacja podstawy programowej 5. 1) wyjaśnia pojęcie algorytmu, podaje odpowiednie przykłady algorytmów rozwiązywania różnych problemów; 2) formułuje ścisły
Alan M. TURING. Matematyk u progu współczesnej informatyki
Alan M. TURING n=0 1 n! Matematyk u progu współczesnej informatyki Wykład 5. Alan Turing u progu współczesnej informatyki O co pytał Alan TURING? Czym jest algorytm? Czy wszystkie problemy da się rozwiązać
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
Wstęp do informatyki- wykład 2
MATEMATYKA 1 Wstęp do informatyki- wykład 2 Systemy liczbowe Treści prezentowane w wykładzie zostały oparte o: S. Prata, Język C++. Szkoła programowania. Wydanie VI, Helion, 2012 www.cplusplus.com Jerzy
Algorytmy komputerowe. dr inŝ. Jarosław Forenc
Rok akademicki 2009/2010, Wykład nr 8 2/24 Plan wykładu nr 8 Informatyka 1 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr II, studia niestacjonarne I stopnia Rok akademicki 2009/2010
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
WYMAGANIA EDUKACYJNE NIEZBĘDNE DO UZYSKANIA ŚRÓDROCZNYCH I ROCZNYCH OCEN KLASYFIKACYJNYCH Z MATEMATYKI W KLASIE III GIMNAZJUM
WYMAGANIA EDUKACYJNE NIEZBĘDNE DO UZYSKANIA ŚRÓDROCZNYCH I ROCZNYCH OCEN KLASYFIKACYJNYCH Z MATEMATYKI W KLASIE III GIMNAZJUM OCENA ŚRÓDROCZNA: NIEDOSTATECZNY ocenę niedostateczny otrzymuje uczeń, który
Wybrane wymagania dla informatyki w gimnazjum i liceum z podstawy programowej
Wybrane wymagania dla informatyki w gimnazjum i liceum z podstawy programowej Spis treści Autor: Marcin Orchel Algorytmika...2 Algorytmika w gimnazjum...2 Algorytmika w liceum...2 Język programowania w
Definicja algorytmu brzmi:
1.1. Definicja algorytmu Często w życiu stajesz przed koniecznością rozwiązania jakiegoś zadania. Na lekcji matematyki musisz na przykład rozwiązać równanie i w tym celu wykonujesz szereg czynności: od
O ALGORYTMACH I MASZYNACH TURINGA
O ALGORYTMACH I MASZYNACH TURINGA ALGORYTM (objaśnienie ogólne) Algorytm Pojęcie o rodowodzie matematycznym, oznaczające współcześnie precyzyjny schemat mechanicznej lub maszynowej realizacji zadań określonego
I semestr WYMAGANIA EDUKACYJNE Z MATEMATYKI KLASA VI. Wymagania na ocenę dopuszczającą. Dział programu: Liczby naturalne
WYMAGANIA EDUKACYJNE Z MATEMATYKI KLASA VI Wymagania na ocenę dopuszczającą I semestr Dział programu: Liczby naturalne Oblicza różnice czasu proste Wymienia jednostki opisujące prędkość, drogę, czas. Rozwiązuje
WYMAGANIA EDUKACYJNE Z MATEMATYKI DLA KLASY VII SZKOŁY PODSTAWOWEJ
WYMAGANIA EDUKACYJNE Z MATEMATYKI DLA KLASY VII SZKOŁY PODSTAWOWEJ Ocenę niedostateczną otrzymuje uczeń, jeśli nie opanował wiadomości i umiejętności na ocenę dopuszczającą, nie wykazuje chęci poprawy
WYMAGANIA NA POSZCZEGÓLNE OCENY MATEMATYKA KL.VII
WYMAGANIA NA POSZCZEGÓLNE OCENY MATEMATYKA KL.VII ROZDZIAŁ I LICZBY 1. rozpoznaje cyfry używane do zapisu liczb w systemie rzymskim w zakresie do 3000 2. odczytuje liczby naturalne dodatnie zapisane w
Matematyka z kluczem. Szkoła podstawowa nr 18 w Sosnowcu. Przedmiotowe zasady oceniania klasa 7
Matematyka z kluczem Szkoła podstawowa nr 18 w Sosnowcu Przedmiotowe zasady oceniania klasa 7 KlasaVII wymagania programowe- wymagania na poszczególne oceny ROZDZIAŁ I LICZBY 1. rozpoznaje cyfry używane
MATEMATYKA. klasa VII. Podstawa programowa przedmiotu SZKOŁY BENEDYKTA
2017-09-01 MATEMATYKA klasa VII Podstawa programowa przedmiotu SZKOŁY BENEDYKTA Cele kształcenia wymagania ogólne I. Sprawność rachunkowa. 1. Wykonywanie nieskomplikowanych obliczeń w pamięci lub w działaniach
SZCZEGÓŁOWE WYMAGANIA EDUKACYJNE DLA KLAS 4-6 SP ROK SZKOLNY 2015/2016
SZCZEGÓŁOWE WYMAGANIA EDUKACYJNE DLA KLAS 4-6 SP ROK SZKOLNY 2015/2016 Szczegółowe kryteria ocen dla klasy czwartej. 1. Ocenę dopuszczającą otrzymuje uczeń, który: Zna zależności wartości cyfry od jej
Informatyka wprowadzenie do algorytmów (II) dr hab. inż. Mikołaj Morzy
Informatyka wprowadze do algorytmów (II) dr hab. inż. Mikołaj Morzy plan wykładu cechy algorytmów sposoby zapisu algorytmów klasyfikacja algorytmów przykłady algorytmów sumowa przeszukiwa ciągu liczb sortowa
WYMAGANIA EDUKACYJNE NIEZBĘDNE DO UZYSKANIA ŚRÓDROCZNYCH I ROCZNYCH OCEN KLASYFIKACYJNYCH Z MATEMATYKI W KLASIE V
WYMAGANIA EDUKACYJNE NIEZBĘDNE DO UZYSKANIA ŚRÓDROCZNYCH I ROCZNYCH OCEN KLASYFIKACYJNYCH Z MATEMATYKI W KLASIE V OCENA ŚRÓDROCZNA: DOPUSZCZAJĄCY uczeń potrafi: zapisywać i odczytywać liczby w dziesiątkowym
Podstawy programowania 2. Temat: Funkcje i procedury rekurencyjne. Przygotował: mgr inż. Tomasz Michno
Instrukcja laboratoryjna 6 Podstawy programowania 2 Temat: Funkcje i procedury rekurencyjne Przygotował: mgr inż. Tomasz Michno Wstęp teoretyczny Rekurencja (inaczej nazywana rekursją, ang. recursion)
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
ALGORYTMY Algorytm poprawny jednoznaczny szczegółowy uniwersalny skończoność efektywność (sprawność) zmiennych liniowy warunkowy iteracyjny
ALGORYMY Algorytm to przepis; zestawienie kolejnych kroków prowadzących do wykonania określonego zadania; to uporządkowany sposób postępowania przy rozwiązywaniu zadania, problemu, z uwzględnieniem opisu
WYMAGANIA EDUKACYJNE NA POSZCZEGÓLNE OCENY Z MATEMATYKI W KLASIE IV
WYMAGANIA EDUKACYJNE NA POSZCZEGÓLNE OCENY Z MATEMATYKI W KLASIE IV Zna zależności wartości cyfry od jej położenia w liczbie Zna kolejność działań bez użycia nawiasów Zna algorytmy czterech działań pisemnych
Kryteria ocen z matematyki w klasie IV
Kryteria ocen z matematyki w klasie IV odejmuje liczby w zakresie 100 z przekroczeniem progu dziesiętnego, zna kolejność wykonywania działań, gdy nie występuję nawiasy, odczytuje współrzędne punktu na
Schematy blokowe I. 1. Dostępne bloki: 2. Prosty program drukujący tekst.
Schematy blokowe I Jeżeli po schematach blokowych będzie używany język C, to należy używać operatorów: '&&', ' ', '!=', '%' natomiast jeśli Ruby to 'and', 'or', '%', '!='. 1. Dostępne bloki: a) początek:
Liczby. Wymagania programowe kl. VII. Dział
Wymagania programowe kl. VII Dział Liczby rozpoznaje cyfry używane do zapisu liczb w systemie rzymskim w zakresie do 3000 odczytuje liczby naturalne dodatnie zapisane w systemie rzymskim w zakresie do
Programowanie i techniki algorytmiczne
Temat 2. Programowanie i techniki algorytmiczne Realizacja podstawy programowej 1) wyjaśnia pojęcie algorytmu, podaje odpowiednie przykłady algorytmów rozwiązywania różnych 2) formułuje ścisły opis prostej
Wymagania edukacyjne z matematyki w klasie VII szkoły podstawowej
Wymagania edukacyjne z matematyki w klasie VII szkoły podstawowej ROZDZIAŁ I LICZBY Uczeń otrzymuje ocenę dopuszczającą jeśli: 1. rozpoznaje cyfry używane do zapisu liczb w systemie rzymskim w zakresie
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
WYMAGANIA EDUKACYJNE Z MATEMATYKI DLA KLASY 7SP. V. Obliczenia procentowe. Uczeń: 1) przedstawia część wielkości jako procent tej wielkości;
WYMAGANIA EDUKACYJNE Z MATEMATYKI DLA KLASY 7SP Liczby. TEMAT Rozwinięcia dziesiętne liczb wymiernych. Zaokrąglanie liczb. Szacowanie wyników. Dodawanie i odejmowanie liczb dodatnich. Mnożenie i dzielenie
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
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
WYMAGANIA EDUKACYJNE Z MATEMATYKI KLASA I GIMNAZJUM Małgorzata Janik
WYMAGANIA EDUKACYJNE Z MATEMATYKI KLASA I GIMNAZJUM Małgorzata Janik DOPUSZCZAJĄCY DOSTATECZNY DOBRY BARDZO DOBRY LICZBY I DZIAŁANIA zna pojęcie liczby naturalnej, całkowitej, wymiernej. rozumie rozszerzenie
Temat 20. Techniki algorytmiczne
Realizacja podstawy programowej 5. 1) wyjaśnia pojęcie algorytmu, podaje odpowiednie przykłady algorytmów rozwiązywania różnych problemów; 2) formułuje ścisły opis prostej sytuacji problemowej, analizuje
Podstawy programowania. Wykład: 13. Rekurencja. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD
Podstawy programowania Wykład: 13 Rekurencja 1 dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD Podstawy programowania Rekurencja - pojęcie 2 Rekurencja - pojęcie Rekurencja (rekursja) wywołanie
Algorytm poprawny jednoznaczny szczegółowy uniwersalny skończoność efektywność (sprawność) zmiennych liniowy warunkowy iteracyjny
Algorytm to przepis; zestawienie kolejnych kroków prowadzących do wykonania określonego zadania; to uporządkowany sposób postępowania przy rozwiązywaniu zadania, problemu, z uwzględnieniem opisu danych
MATEMATYKA Z PLUSEM DLA KLASY VII W KONTEKŚCIE WYMAGAŃ PODSTAWY PROGRAMOWEJ. programowej dla klas IV-VI. programowej dla klas IV-VI.
MATEMATYKA Z PLUSEM DLA KLASY VII W KONTEKŚCIE WYMAGAŃ PODSTAWY PROGRAMOWEJ TEMAT LICZBA GODZIN LEKCYJNYCH WYMAGANIA SZCZEGÓŁOWE Z PODSTAWY PROGRAMOWEJ UWAGI. LICZBY I DZIAŁANIA 6 h Liczby. Rozwinięcia
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
Wymagania edukacyjne z matematyki : Matematyka z plusem GWO
klasy Ewy Pakulskiej Wymagania edukacyjne z matematyki : Matematyka z plusem GWO KLASA IV Rozwijanie sprawności rachunkowej Wykonywanie jednodziałaniowych obliczeń pamięciowych na liczbach naturalnych.
WYMAGANIA EDUKACYJNE Z MATEMATYKI KLASA VII
WYMAGANIA EDUKACYJNE Z MATEMATYKI KLASA VII Ocena Dopuszczający Osiągnięcia ucznia rozpoznaje cyfry używane do zapisu liczb w systemie rzymskim w zakresie do 3000 odczytuje liczby naturalne dodatnie zapisane
Wymagania edukacyjne z matematyki dla uczniów klasy VII szkoły podstawowej
Wymagania edukacyjne z matematyki dla uczniów klasy VII szkoły podstawowej Ocenę dopuszczającą otrzymuje uczeń, który: rozumie rozszerzenie osi liczbowej na liczby ujemne umie porównywać liczby wymierne,
O LICZBACH NIEOBLICZALNYCH I ICH ZWIĄZKACH Z INFORMATYKĄ
O LICZBACH NIEOBLICZALNYCH I ICH ZWIĄZKACH Z INFORMATYKĄ Jakie obiekty matematyczne nazywa się nieobliczalnymi? Jakie obiekty matematyczne nazywa się nieobliczalnymi? Najczęściej: a) liczby b) funkcje
Metody numeryczne w przykładach
Metody numeryczne w przykładach Bartosz Ziemkiewicz Wydział Matematyki i Informatyki UMK, Toruń Regionalne Koło Matematyczne 8 kwietnia 2010 r. Bartosz Ziemkiewicz (WMiI UMK) Metody numeryczne w przykładach
Wymagania edukacyjne z matematyki w klasie III gimnazjum
Wymagania edukacyjne z matematyki w klasie III gimnazjum - nie potrafi konstrukcyjnie podzielić odcinka - nie potrafi konstruować figur jednokładnych - nie zna pojęcia skali - nie rozpoznaje figur jednokładnych
Algorytm - pojęcie algorytmu, sposób zapisu, poziom szczegółowości, czynności proste i strukturalne. Pojęcie procedury i funkcji.
Algorytm - pojęcie algorytmu, sposób zapisu, poziom szczegółowości, czynności proste i strukturalne. Pojęcie procedury i funkcji. Maria Górska 9 stycznia 2010 1 Spis treści 1 Pojęcie algorytmu 3 2 Sposób
a[1] a[2] a[3] a[4] a[5] a[6] a[7] a[8] a[9] a[10] 3-2 5 8 12-4 -26 12 45-76
. p. 1 Algorytmem nazywa się poddający się interpretacji skończony zbiór instrukcji wykonania zadania mającego określony stan końcowy dla każdego zestawu danych wejściowych W algorytmach mogą występować
WYMAGANIA NA POSZCZEGÓLNE OCENY Z MATEMATYKI DLA KL. 5
WYMAGANIA NA POSZCZEGÓLNE OCENY Z MATEMATYKI DLA KL. 5 Na ocenę niedostateczną (1) uczeń nie spełnia wymagań koniecznych. Na ocenę dopuszczającą (2) uczeń spełnia wymagania konieczne tzn.: 1. posiada i
Lekcja 3: Pierwsze kroki z Pythonem. Pętle
#SuperKoderzy www.superkoderzy.pl Mikrobitowcy Autorzy: Filip Kłębczyk Lekcja 3: Pierwsze kroki z Pythonem. Pętle Podczas lekcji uczniowie zapoznają się z dwoma rodzajami pętli - for i while - analizując
WYMAGANIA EDUKACYJNE NIEZBĘDNE DO UZYSKANIA ŚRÓDROCZNYCH I ROCZNYCH OCEN KLASYFIKACYJNYCH Z MATEMATYKI W KLASIE I GIMNAZJUM
WYMAGANIA EDUKACYJNE NIEZBĘDNE DO UZYSKANIA ŚRÓDROCZNYCH I ROCZNYCH OCEN KLASYFIKACYJNYCH Z MATEMATYKI W KLASIE I GIMNAZJUM OCENA ŚRÓDROCZNA: NIEDOSTATECZNY ocenę niedostateczny otrzymuje uczeń, który
Matematyka Matematyka z pomysłem Klasa 5 Szkoła podstawowa 4 6
Wymagania na poszczególne oceny szkolne Ocena postępów ucznia jest wynikiem oceny stopnia opanowania jego umiejętności podstawowych i ponadpodstawowych. W programie nauczania Matematyka z pomysłem umiejętności
podstawowe (ocena dostateczna) 3 Dział 1. Liczby naturalne i dziesiętne. Działania na liczbach naturalnych i dziesiętnych Uczeń:
Klasa V Wymagania na poszczególne oceny szkolne Ocena postępów ucznia jest wynikiem oceny stopnia opanowania jego umiejętności podstawowych i ponadpodstawowych. W programie nauczania Matematyka z pomysłem
Matematyka Matematyka z pomysłem Klasa 5 Szkoła podstawowa 4 6
Wymagania na poszczególne oceny szkolne Ocena postępów ucznia jest wynikiem oceny stopnia opanowania jego umiejętności podstawowych i ponadpodstawowych. W programie nauczania Matematyka z pomysłem umiejętności
Niezwykłe tablice Poznane typy danych pozwalają przechowywać pojedyncze liczby. Dzięki tablicom zgromadzimy wiele wartości w jednym miejscu.
Część XIX C++ w Każda poznana do tej pory zmienna może przechowywać jedną liczbę. Jeśli zaczniemy pisać bardziej rozbudowane programy, okaże się to niewystarczające. Warto więc poznać zmienne, które mogą
WYMAGANIA EDUKACYJNE Z MATEMATYKI W KLASIE IV
WYMAGANIA EDUKACYJNE Z MATEMATYKI W KLASIE IV Dział I. Liczby naturalne część 1 Jak się uczyć matematyki Oś liczbowa Jak zapisujemy liczby Szybkie dodawanie Szybkie odejmowanie Tabliczka mnożenia Tabliczka
Wymagania edukacyjne z matematyki dla klasy VII
Wymagania edukacyjne z matematyki dla klasy VII Szkoły Podstawowej nr 100 w Krakowie Na podstawie programu Matematyka z plusem Na ocenę dopuszczającą Uczeń: rozumie rozszerzenie osi liczbowej na liczby
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ę
Metody numeryczne Technika obliczeniowa i symulacyjna Sem. 2, EiT, 2014/2015
Metody numeryczne Technika obliczeniowa i symulacyjna Sem. 2, EiT, 2014/2015 1 Metody numeryczne Dział matematyki Metody rozwiązywania problemów matematycznych za pomocą operacji na liczbach. Otrzymywane
Wymagania edukacyjne z matematyki na poszczególne do klasy VII szkoły podstawowej na rok szkolny 2018/2019
Wymagania edukacyjne z matematyki na poszczególne do klasy VII szkoły podstawowej na rok szkolny 2018/2019 LICZBY Uczeń otrzymuje ocenę dopuszczającą, jeśli: rozpoznaje cyfry używane do zapisu liczb w
WYMAGANIA EDUKACYJNE NA POSZCZEGÓLNE OCENY Z MATEMATYKI DLA UCZNIÓW KLAS IV-VI
WYMAGANIA EDUKACYJNE NA POSZCZEGÓLNE OCENY Z MATEMATYKI DLA UCZNIÓW KLAS IV-VI Klasa IV Stopień dopuszczający otrzymuje uczeń, który potrafi: odejmować liczby w zakresie 100 z przekroczeniem progu dziesiątkowego,
SZKOŁA PODSTAWOWA NR 1 IM. ŚW. JANA KANTEGO W ŻOŁYNI. Wymagania na poszczególne oceny klasa VII Matematyka z kluczem
SZKOŁA PODSTAWOWA NR 1 IM. ŚW. JANA KANTEGO W ŻOŁYNI Wymagania na poszczególne oceny klasa VII Matematyka z kluczem I. Wymagania konieczne (na ocenę dopuszczającą) obejmują wiadomości i umiejętności umożliwiające
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
EGZAMIN ÓSMOKLASISTY od roku szkolnego 2018/2019
EGZAMIN ÓSMOKLASISTY od roku szkolnego 2018/2019 MATEMATYKA rozwiązań zadań z przykładowego arkusza egzaminacyjnego (EO_Q) GRUDZIEŃ 2017 Centralna Komisja Egzaminacyjna Warszawa Zadanie 1. (2 pkt) II.
Wymagania na poszczególne oceny szkolne KLASA V
Wymagania na poszczególne oceny szkolne Ocena postępów ucznia jest wynikiem oceny stopnia opanowania jego umiejętności podstawowych i ponadpodstawowych. W programie nauczania Matematyka z pomysłem umiejętności
I. Podstawy języka C powtórka
I. Podstawy języka C powtórka Zadanie 1. Utwórz zmienne a = 730 (typu int), b = 106 (typu long long), c = 123.45 (typu double) Wypisz następujące komunikaty: Dane sa liczby: a = 730, b = 106 i c = 123.45.
2. Graficzna prezentacja algorytmów
1. Uczeń: Uczeń: 2. Graficzna prezentacja algorytmów a. 1. Cele lekcji i. a) Wiadomości zna sposoby graficznego przedstawiania algorytmów, wie w jaki sposób skonstruować schemat blokowy w taki sposób aby
Wymagania edukacyjne z matematyki w klasie IV
Wymagania edukacyjne z matematyki w klasie IV Na ocenę dopuszczającą uczeń potrafi: Dodawać i odejmować w pamięci liczby dwucyfrowe. Obliczyć wartości wyrażeń arytmetycznych z zachowaniem kolejności wykonywania
Wykład z Podstaw Informatyki dla I roku BO. Piotr Mika
Wykład z Podstaw Informatyki dla I roku BO Piotr Mika Napisanie programu komputerowego: Zasada rozwiązania zadania Stworzenie sekwencji kroków algorytmu Przykłady algorytmów z życia codziennego (2/1 6)
WYMAGANIE EDUKACYJNE Z MATEMATYKI W KLASIE II GIMNAZJUM. dopuszczającą dostateczną dobrą bardzo dobrą celującą
1. Statystyka odczytać informacje z tabeli odczytać informacje z diagramu 2. Mnożenie i dzielenie potęg o tych samych podstawach 3. Mnożenie i dzielenie potęg o tych samych wykładnikach 4. Potęga o wykładniku
Egzamin gimnazjalny z matematyki 2016 analiza
Egzamin gimnazjalny z matematyki 2016 analiza Arkusz zawierał 23 zadania: 20 zamkniętych i 3 otwarte. Dominowały zadania wyboru wielokrotnego, w których uczeń wybierał jedną z podanych odpowiedzi. W pięciu
Podstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1
Podstawy programowania. Wykład Funkcje Krzysztof Banaś Podstawy programowania 1 Programowanie proceduralne Pojęcie procedury (funkcji) programowanie proceduralne realizacja określonego zadania specyfikacja
Matematyka klasa 7 Wymagania edukacyjne na ocenę śródroczną.
Matematyka klasa 7 Wymagania edukacyjne na ocenę śródroczną. Każda wyższa ocena zawiera wymagania dotyczące ocen niższych. Wymagania na ocenę dopuszczającą obejmują wiadomości i umiejętności umożliwiające
WYMAGANIA EDUKACYJNE Z MATEMATYKI W KLASIE V. Temat lekcji Punkty z podstawy programowej z dnia 14 lutego 2017r.
WYMAGANIA EDUKACYJNE Z MATEMATYKI W KLASIE V Temat lekcji Punkty z podstawy programowej z dnia 14 lutego 2017r. Działania pamięciowe Potęgowanie 1) dodaje i odejmuje w pamięci liczby naturalne dwucyfrowe