ALGORYTMY. 1. Podstawowe definicje Schemat blokowy

Podobne dokumenty
ALGORYTMY. 1. Podstawowe definicje Schemat blokowy

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

Definicje. Algorytm to:

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

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

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

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

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

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

Algorytmy i schematy blokowe

Iteracje. Algorytm z iteracją to taki, w którym trzeba wielokrotnie powtarzać instrukcję, aby warunek został spełniony.

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

Wykład z Technologii Informacyjnych. Piotr Mika

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

1 Wprowadzenie do algorytmiki

Algorytm. Krótka historia algorytmów

INSTRUKCJE WARUNKOWE. Zadanie nr 1. Odpowiedź. schemat blokowy

Definicja algorytmu brzmi:

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

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

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

Wprowadzenie do algorytmiki

KARTA PRACY UCZNIA. Klasa II

Pzetestuj działanie pętli while i do...while na poniższym przykładzie:

Technologie informacyjne - wykład 12 -

POLITECHNIKA OPOLSKA

POLITECHNIKA OPOLSKA

Temat 20. Techniki algorytmiczne

Gimnazjum w Tęgoborzy - Algorytmika Strona 1 z 22 mgr Zofia Czech

Algorytm - pojęcie algorytmu, sposób zapisu, poziom szczegółowości, czynności proste i strukturalne. Pojęcie procedury i funkcji.

Zapis algorytmów: schematy blokowe i pseudokod 1

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

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

Algorytmika i programowanie. dr inż. Barbara Fryc Wyższa Szkoła Informatyki i Zarządzania w Rzeszowie

Sposoby zapisywania algorytmów

Instrukcje sterujące

if (wyrażenie ) instrukcja

WHILE (wyrażenie) instrukcja;

Podstawy Programowania Algorytmy i programowanie

METODY KOMPUTEROWE W OBLICZENIACH INŻYNIERSKICH

Programowanie i techniki algorytmiczne

INSTRUKCJE ITERACYJNE

Pętla for. Wynik działania programu:

Algorytm. Krótka historia algorytmów

Opis problemu i przedstawienie sposobu jego rozwiązania w postaci graficznej. Gimnazjum nr 3 im. Jana Pawła II w Hrubieszowie 1

WHILE (wyrażenie) instrukcja;

Algorytm. a programowanie -

do instrukcja while (wyrażenie);

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

W szkole podstawowej materiał przedstawiony powinien być w następującej kolejności:

Zapisywanie algorytmów w języku programowania

Metodyki i techniki programowania

for (inicjacja_warunkow_poczatkowych; wyrazenie_warunkowe; wyrazenie_zwiekszajace) { blok instrukcji; }

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

Pętle. Dodał Administrator niedziela, 14 marzec :27

Wstęp do informatyki- wykład 2

Wstęp do informatyki. Maszyna RAM. Schemat logiczny komputera. Maszyna RAM. RAM: szczegóły. Realizacja algorytmu przez komputer

METODY OPISU ALGORYTMÓW KOMPUTEROWYCH

Podstawy algorytmiki Dariusz Piekarz

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

Algorytmy zapisywane w pseudojęzyku programowania. Klasa 2 Lekcja 6

for (inicjacja_warunkow_poczatkowych(końcowych); wyrazenie_warunkowe; wyrazenie_zwiekszajace(zmniejszające)) { blok instrukcji; }

Język C część 2. Podejmowanie decyzji w programie. if else. switch

Konstrukcje warunkowe Pętle

Języki programowania zasady ich tworzenia

Programowanie w języku C++ Grażyna Koba

Podstawy Programowania Podstawowa składnia języka C++

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

2.8. Algorytmy, schematy, programy

Ćwiczenie 3 z Podstaw programowania. Język C++, programy pisane w nieobiektowym stylu programowania. Zofia Kruczkiewicz

Blockly Kodowanie pomoc.

Podstawy i języki programowania

Wstęp do informatyki- wykład 7

Sposoby przedstawiania algorytmów

Elżbieta Kula - wprowadzenie do Turbo Pascala i algorytmiki

Programowanie - wykład 4

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

Pętle. for, while, do... while, foreach. Materiał pomocniczy do kursu Podstawy programowania Autor: Grzegorz Góralski ggoralski.

Laboratorium 1: Wprowadzenie do środowiska programowego. oraz podstawowe operacje na rejestrach i komórkach pamięci

2. Graficzna prezentacja algorytmów

Wstęp do Programowania Lista 1

Schematy blokowe. Algorytmy Marek Pudełko

Zapisywanie w wybranej notacji algorytmów z warunkami i iteracyjnych

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

Po uruchomieniu programu nasza litera zostanie wyświetlona na ekranie

ALGORYTMY I PROGRAMY

Czas pracy: 60 minut

Podstawy Programowania C++

TEMAT: Podejmowanie decyzji w programie instrukcja warunkowa (IF).

Zestaw zadań z algorytmiki dla klas trzecich o rozszerzonym programie nauczania z informatyki

Metodyki i techniki programowania

Język C zajęcia nr 5

Programowanie strukturalne

LABORATORIUM 3 ALGORYTMY OBLICZENIOWE W ELEKTRONICE I TELEKOMUNIKACJI. Wprowadzenie do środowiska Matlab

Język JAVA podstawy. Wykład 3, część 3. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

Algorytmy komputerowe. dr inŝ. Jarosław Forenc

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

W języku C dostępne są trzy instrukcje, umożliwiające tworzenie pętli: for, while oraz do. for (w1;w2;w3) instrukcja

Automatyka i sterowania

Kilka prostych programów

Transkrypt:

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 do wykonania, ze wskazaniem ich następstwa. Lub: Algorytm (inf.) ściśle określony ciąg kroków obliczeniowych, prowadzący do przekształcenia danych wejściowych w wyjściowe. Algorytmika to dział wiedzy zajmujący się badaniem algorytmów Sposoby zapisu algorytmu: opis słowny, lista kroków, schemat blokowy, drzewo algorytmu, pseudokod, język programowania Program - formalnie spisana wersja algorytmu. 1.1. Schemat blokowy Schemat blokowy (block diagram, flowchart) to diagram, na którym algorytm jest reprezentowany przez opisane figury geometryczne, połączone liniami zgodnie z kolejnością wykonywania czynności wynikających z przyjętego algorytmu rozwiązania zadania; pozwala dostrzec istotne etapy algorytmu i logiczne zależności miedzy nimi. Na schemacie blokowym poszczególne operacje są opisane za pomocą skrzynek (klocków, bloków) połączonych ze sobą strzałkami. Przykład schematu blokowego:

Elementy schematu blokowego: Symbol graficzny Nazwa Funkcja Opis Blok graniczny Oznacza początek algorytmu Owalny kształt, wychodzi z niego tylko jedna strzałka, żadna nie może do niego prowadzić Blok graniczny Oznacza zakończenie algorytmu Owalny kształt, prowadzi do niego jedna strzałka, żadna z niego nie wychodzić x:= i+1 Blok operacyjny Służy do zapisania wykonywanych operacji na przykład działań algebraicznych, operacji podstawienia itp. Prostokąt, w jego wnętrzu zapisujemy wykonywane operacje. Podaj i Blok wejścia Służy do wprowadzenia danych Równoległobok, wchodzi do niego i wychodzi jedna strzałka Wypisz wynik Blok wyjścia Służy do wyprowadzenia wyniku operacji Równoległobok, wchodzi do niego i wychodzi jedna strzałka i < n Blok warunkowy Służy do sprawdzenia warunku Romb, zapisujemy w jego wnętrzu warunek do sprawdzenia. Wychodzą z niego dwie strzałki: pierwsza określa operacje wykonywaną w przypadku spełnienia warunku, druga w przypadku nie spełnienia warunku.

1.2. Pseudokod Pseudokod jest to połączenie języka naturalnego z elementami języka programowania. Przykład 1: Algorytm wczytuje dwie liczby i sprawdza, która jest większa. Pseudokod: Wczytaj(a,b) Jeżeli a>b to Wypisz(a) W przeciwnym razie Wypisz(b) Przykład 2: Algorytm wczytuje i sumuje n liczb. Suma:=0 Podaj(n) i:=0 Dopóki i<n wykonuj: Wczytaj(a) Suma := Suma + a i := i + 1 Wypisz(Suma) Przykład 3: Algorytm wczytuje i dodaje 10 liczb. i := 0 Dopóki i<10 Wczytaj(a) Suma := Suma + a i := i + 1

2. Rodzaje algorytmów: 2.1. Algorytmy liniowe Algorytm liniowy to taki, w którym nie określono żadnych warunków. Jest też nazywany sekwencyjnym, gdyż każdy z kroków w tym algorytmie następuje sekwencyjnie, czyli wykonanie jednej sekwencji powoduje przejście bezpośrednio do następnej. Przykład Obliczanie obwodu prostokąta Algorytm liniowy w postaci listy kroków Dane: bok a i b Lista kroków: 1. Początek algorytmu 2. Podaj bok a 3. Podaj bok b 4. oblicz obwód: ob:=2*a+2*b 5. Wyprowadź wartość ob 6. algorytmu Algorytm liniowy w postaci schematu blokowego

2.2. Algorytmy warunkowe Algorytm warunkowy to taki, w którym wykonanie instrukcji uzależnione jest od spełnienia lub niespełnienia warunku. Przykład Dane: bok a i b Lista kroków: 1. Początek algorytmu 2. Podaj bok a 3. Podaj bok b 4. Czy bok a>0? jeśli tak idź do kroku 5, jeśli nie podaj komunikat wyjściowy: "nie można obliczyć obwodu" i zakończ algorytm. 5. Czy bok b>0? jeśli tak idź do kroku 6 jeśli nie podaj komunikat wyjściowy: "nie można obliczyć obwodu" i zakończ algorytm. 6. Oblicz obwód Ob:=2*a+2*b 7. Wyprowadź wartość Ob 6. algorytmu 2.3. Algorytmy iteracyjne Iteracją nazywamy instrukcję powtarzania danego ciągu operacji. Liczba powtórzeń może być ustalona przed wykonaniem instrukcji lub może zależeć od spełnienia pewnego warunku, który jest sprawdzany w każdej iteracji. Iteracja inaczej zwana jest pętlą. 2.3.1. Pętla z licznikiem Pętla, w której ilość powtórzeń n jest ustalona z góry. Ilość ta jest "kontrolowana" przez tzw. zmienną sterującą, która z kolei jest inkrementowana, czyli zwiększana o jeden. Zwiększenie tej wartości powoduje odpowiednie wyrażenie (licznik), dla zmiennej sterującej k będzie to k:=k+1. Jeżeli np. zmiennej k nadamy wartość początkową 0 to będzie to wyglądało następująco: k:=0 i k:=k+1 0:=0+1(zmienna k przyjmuje wartość 1)- pierwsze przejście 1:=1+1(zmienna k przyjmuje wartość 2)- drugie przejście 2:=2+1(zmienna k przyjmuje wartość 3)- trzecie przejście itp. Jeżeli k osiągnie odpowiednią wartość np.k<n to wówczas pętla zostaje opuszczona i wykonywana jest dalsza część instrukcji.

Przykład 2.3.2. Pętle warunkowe Oprócz pętli z licznikiem istnieją jeszcze inne dwa rodzaje pętli, których działanie jest uzależnione od warunków. Poniżej znajdują się schematy blokowy tych pętli. Przykład Najpierw jest wykonywana instrukcja, a następnie jest sprawdzany warunek. Pętla jest wykonywana, aż do spełnienia warunku. Instrukcja zostanie wykonana przynajmniej jeden raz bez względu na to, czy warunek jest spełniony czy nie Warunek jest sprawdzany na początku, a dopiero później jest wykonywana instrukcja. Pętla jest wykonywana tak długo, jak spełniony jest warunek.

Ćwiczenia: 1. Dane jest równanie: y=a/b. Napisz pseudokod oraz schemat blokowy algorytmu realizującego zadanie: wczytanie danych a i b i znalezienie (jeżeli istnieje) wartości y. 2. Napisz pseudokod oraz schemat blokowy algorytmu wczytującego liczbę i wyświetlającego informację, czy ta liczba jest dodatnia, ujemna, czy równa zero. 3. Napisz schemat blokowy oraz pseudokod algorytmu wczytującego trzy liczby i podającego największą z nich. 4. Napisz algorytm za pomocą pseudojęzyka i schematów blokowych. Algorytm ma wczytywać z klawiatury dowolne trzy liczby. Zakładamy, że będą to liczby całkowite. Napisz algorytm który ma wyświetlić na ekranie monitora te liczby w kolejności malejącej.