Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego...

84
Wykład 1 Dr Bożena Woźna-Szcześniak [email protected]

Transcript of Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego...

Page 1: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Wykład 1Dr Bożena Woźna-Szcześniak

[email protected]

Page 2: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Język programowania jest środkiem umożliwiającym zapis algorytmów w postaci zrozumiałej dla człowieka, a równocześnie przetwarzalnej do postaci zrozumiałej dla komputera (maszyny algorytmicznej)

dr Bożena Woźna-Szcześniak 2

Kod źródłowy programu (w języku programowania)

Kod wynikowy programu (w języku maszynowym)

Przetworzenieprogramu

źródłowegow kod

maszynowy

Page 3: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Encyklopedia PWN Algorytm to "(...) przepis na rozwiązanie

określonego zadania podany jako zbiór kolejnych poleceń; jego wykonawcą może być człowiek lub urządzenie automatyczne (np. komputer); (…)zapisany w jakimś języku programowania -program".

Maciej M. Sysło Algorytm jest przepisem rozwiązywania

postawionego zadania, będącym dokładnie określonym układem elementarnych instrukcji wraz z porządkiem ich wykonania.

dr Bożena Woźna-Szcześniak 3

Page 4: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Składniki:◦ 175 g miękkiego masła◦ 1 1/2 szklanki cukru pudru◦ 3 łyżeczki esencji waniliowej◦ 3 roztrzepane jajka◦ 1 1/2 szklanki mąki◦ 2 1/4 łyżeczki proszku do

pieczenia◦ 3 łyżki kakao◦ 1 1/4 szklanki mleka

Sposób przygotowania:◦ 1. Włożyć masło, cukier i esencję

waniliową do miski i ucierać do uzyskania lekkiej, puszystej masy. Ciągle mieszając, stopniowo dodawać jajka.

◦ 2. Przesiać mąkę do osobnego naczynia, dodać proszek do pieczenia i kakao. Dodawać na przemian mieszankę mączną i mleko do masy maślanej, cały czas ucierając.

◦ 3. Wylać powstałe ciasto do kwadratowej blachy o boku 20 cm, natłuszczonej i wyłożonej papierem do pieczenia. Piec 55 minut (sprawdzić patyczkiem).

◦ Zostawić ciasto w blasze na 10 minut, a potem przełożyć na druciany stojak do wystudzenia.

dr Bożena Woźna-Szcześniak 4

Page 5: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Generacja I - język maszynowy lista instrukcji, z których każda jest serią binarnych

liczb np.1010 0101 0000 0000 0000 1111

gdzie 1010 - rozkaz dodawania 0101 - zawartość rejestru 5 0000 0000 0000 1111 - adres miejsca w pamięci

komputera w notacji szesnastkowej : A 5 000F

dr Bożena Woźna-Szcześniak 5

Page 6: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Generacja II - język asemblerowy skojarzenie kolejnych komponentów instrukcji z

symbolami i nazwami, np.1010 0101 0000 0000 0000 1111

może być reprezentowana przez zapisADD TAX TOTAL

gdzie ADD = 1010 - dodawanie TAX = 0101 - zawartość rejestru 5 TOTAL = 0000 0000 0000 1111 - adres miejsca w pamięci

komputera Wymaga programu tłumaczącego kod symboliczny na

maszynowy, tzw. asemblera

dr Bożena Woźna-Szcześniak 6

Page 7: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Generacja III ◦ instrukcje podobne do fraz i zdań języka

naturalnego (angielskiego), np. if ... else...then; begin...end; while;◦ wymaga tzw. kompilatora - programu

tłumaczącego kod źródłowy na maszynowy, lub interpretera - programu iteracyjnie pobierającego kolejne instrukcje, tłumaczącego na kod wykonywalny i natychmiast go wykonującego.◦ rozwiązany problem przenaszalności programów

(np. standard ANSI języka C, Turbo Pascal, Basic).

dr Bożena Woźna-Szcześniak 7

Page 8: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Konsolidacja, linkowanie (link): scalenie binarnych fragmentów programu w jedną całość i dołączenie procedur systemowych, procedur wejścia/wyjścia, funkcji matematycznych z bibliotek systemowych i innych elementów koniecznych do działania programu.

Debuggery: programy, ułatwiające śledzenie wykonywania się danego programu, nazywane są debugerami, czyli „odpluskwiaczami”. Nazwa "debugging" powstała w 1945 roku - w elektromechanicznym komputerze Mark II były karaluchy w przekaźnikach.

dr Bożena Woźna-Szcześniak 8

Page 9: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

generacja IV - systemy oprogramowania pozwalające na interaktywne tworzenie oprogramowania, systemy CASE

generacja V - języki sztucznej inteligencji (LISP, PROLOG) z wbudowanymi mechanizmami wnioskowania

dr Bożena Woźna-Szcześniak 9

Page 10: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Programowanie liniowe - wszystko w jednym worku, go to !

Programowanie strukturalne - moduły operujące na lokalnych danych i zmiennych, komunikacja przez przekazywanie parametrów, każdy moduł testowany osobno. ◦ Wada: zmiana struktur danych wymaga zmiany

wielu modułów. Programowanie zorientowane obiektowo -

dane i programy tworzą jeden obiekt.

dr Bożena Woźna-Szcześniak 10

Page 11: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Schemat blokowy, to graficzny sposób zapisu algorytmu, gdzie za pomocą ściśle określonych figur geometrycznych, powiązanych trwale z określonymi typami instrukcji oraz połączeń, można czytelnie zilustrować relacje między elementami algorytmu.

dr Bożena Woźna-Szcześniak 11

Page 12: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Skrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi co najmniej jedno połączenie.

dr Bożena Woźna-Szcześniak 12

START

STOP

Page 13: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

W skrzynce instrukcyjnej umieszcza się polecenia do wykonania (instrukcje) -podstawienie, obliczenie, wprowadzenie wartości.

dr Bożena Woźna-Szcześniak 13

Suma = a + b

INSTRUKCJA

Page 14: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

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).

dr Bożena Woźna-Szcześniak 14

Warunek Tak

Nie

S > 10 Tak

Nie

Page 15: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

W skrzynce wejścia/wyjścia umieszcza się wprowadzane dane lub wyprowadzane wyniki. Ze skrzynki wchodzi/wychodzi tylko jedno połączenie.

dr Bożena Woźna-Szcześniak 15

Wejście

Wyjście

Page 16: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

dr Bożena Woźna-Szcześniak 16

Łącznik wewnątrzstronicowy -służy do łączenia odrębnych części schematu znajdujących się na tym samym arkuszu.

Ułatwia zachowanie przejrzystości schematu.

Komplementarne elementy oznacza się tym samym symbolem.

Page 17: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

W schemacie występują przypisania:S= a + b + c – oznacza przypisanie zmiennej S wartości trzech liczb pamiętanych w zmiennych a, b i c

Śr = S/3 – oznacza przypisanie zmiennej Śr wyniku dzielenia wartości zmiennej S przez 3

dr Bożena Woźna-Szcześniak 17

start

Stop

Wyprowadź (Śr)S = a + b + c

Śr = S/3

Wprowadź (a, b, c)

Algorytm obliczania średniej arytmetycznej trzech dowolnych liczb rzeczywistych

Page 18: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Schemat powinien być prosty i co za tym idzie czytelny. W razie złożonego rozwiązania schemat należy podzielić na mniejsze części (podprogramy) i zamieścić je na osobnych arkuszach.

Do rysowania schematów dobrze jest używać szablonów. Dzięki takiemu rozwiązaniu polepsza się czytelność schematu.

W blokach niezbędne jest komentowanie zarówno zaprojektowanych operacji, jak i kolejności ich wykonywania.

Komentarze powinny być krótkie, lecz dostatecznie dokładnie wyjaśniające znaczenie opisywanych elementów.

Należy unikać rysowania przecinających się ścieżek sterowania. W razie konieczności lepiej jest wprowadzić odpowiednie łączniki, które pozwolą wyeliminować niektóre z linii wskazujących kolejność działań w algorytmie.

Powinno się unikać zapisywania wprowadzanych operacji za pomocą instrukcji języków programowania.

dr Bożena Woźna-Szcześniak 18

Page 19: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Należy dokładnie numerować arkusze, na których został rozrysowany schemat blokowy.

Trzeba liczyć się z możliwością wystąpienia konieczności wprowadzenia poprawek do schematu, dlatego wskazane jest tak tworzyć arkusze, aby możliwe było naniesienie poprawek bez konieczności przerysowywania całego schematu.

Należy unikać zarówno zbyt dużej szczegółowości jak i zbytniej ogólności schematów.

Nie należy umieszczać zbyt dużej liczby operacji w jednym bloku.

Operacja warunkowa IF zawsze prowadzi do konieczności rozważenia dwóch dróg: gdy warunek jest spełniony i gdy nie jest.

dr Bożena Woźna-Szcześniak 19

Page 20: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Laboratorium Informatyki ELI 2.0 jest oprogramowaniem edukacyjnym służącym do nauczania informatyki, a takżepodstaw automatyki i robotyki.

ELI jest programem komputerowym umożliwiającymbudowanie dowolnych algorytmów poprzez wybór z paletyodpowiednich "klocków" - piktogramów, symbolizującychelementy i realizujących podstawowe działaniainformatyczne.

Producentem programu jest firma ELBOX. Po kliknięciu na link strony producenta:

http://www.elboxedu.pl/component/option,com_produkt/Itemid,93/id,40/prod_id,39/ można zobaczyć ofertę firmy i zakupić pełną wersję ELI.

dr Bożena Woźna-Szcześniak 20

Page 21: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Wersja demonstracyjna programu ELI dostępna jest na stronie WSiP:◦ http://www.wsipnet.pl/dane/pliki/kluby/8//eli-2-1.zip

Wersja demonstracyjna nie daje możliwości zapisu pliku i wydruku, funkcjonuje jednak na tyle dobrze, że można ją polecić użytkownikom.

WSiP jest wydawcą podręcznika „Algorytmy” Macieja Sysło, a wersja demonstracyjna oprogramowania ELI jest integralną częścią podręcznika.

dr Bożena Woźna-Szcześniak 21

Page 22: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

dr Bożena Woźna-Szcześniak 22

W celu pobrania programu klikamy: Oprogramowanie związane z książką Algorytmy.

Page 23: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

dr Bożena Woźna-Szcześniak 23

Po pobraniu programu (eli-2-1.zip) idziemy do miejsca, gdzie go wcześniej ulokowaliśmy i rozpakowywujemy.

Po rozpakowaniu powinny się pojawić pliki widoczne na obrazku obok.

Aby zainstalować program wystarczy kliknąć plik INSTALUJ.EXE

Page 24: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

dr Bożena Woźna-Szcześniak 24

Oto instalator programu ELI.Aby kontynuować instalację, klikamy przycisk ,,dalej”.

Page 25: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

dr Bożena Woźna-Szcześniak 25

I jeszcze raz klikamy Dalej

Page 26: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

dr Bożena Woźna-Szcześniak 26

Następnie wprowadzamy nazwę katalogu docelowego i klikamy przycisk ,,Dalej”. Standardowo Eli 2.0 instaluje się na dysku C:, ale nie ma żadnych

przeciwwskazań do wybrania innego dysku.

Page 27: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

dr Bożena Woźna-Szcześniak 27

Czekamy na zakończenie pracy instalatora.

Page 28: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

dr Bożena Woźna-Szcześniak 28

Instalator zakończył instalację. Przed użyciem programu należy ponownie uruchomić Windows. Zaznaczamy opcję ,,Tak chcę ponownie uruchomić

Windows”. I klikamy przycisk ,,koniec”.

Page 29: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

dr Bożena Woźna-Szcześniak 29

Zainstalowany program odnajdujemy w menu Start

Page 30: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

dr Bożena Woźna-Szcześniak 30

Page 31: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

dr Bożena Woźna-Szcześniak 31

Uruchamiamy nową zieloną planszę, na której układamy klocki przeciągając je lewym klawiszem myszy

Page 32: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

dr Bożena Woźna-Szcześniak 32

Po ułożeniu klocków definiujących nasz algorytm, aby go uruchomić wybieramy polecenie Wykonanie – Uruchom, albo stosujemy skrót

klawiszowy Ctrl+F9

Page 33: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Algorytm możemy wykonywać krok po kroku, albo

W całości

dr Bożena Woźna-Szcześniak 33

Page 34: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Początek algorytmu

Koniec algorytmu

Wprowadzanie danej

Wykonanie obliczeń

Wyprowadzanie wyniku

Sprawdzanie warunku logicznego

dr Bożena Woźna-Szcześniak 34

Page 35: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

dr Bożena Woźna-Szcześniak 35

Page 36: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Rozważać będziemy następujące rodzaje programów:◦ programy sekwencyjne ◦ programy z rozgałęzieniem (program wykonuje

różne obliczenia w zależności od tego jaki warunek jest spełniony) ◦ programy iteracyjne (program wykonuje obliczenia

w pętli dopóki nie zostanie spełniony określony warunek)◦ programy rekurencyjne (program w kolejnych

krokach wywołuje sam siebie dla nowych wartości parametrów wykonania)

dr Bożena Woźna-Szcześniak 36

Page 37: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Ma postać ciągu kroków, które musza zostać bezwarunkowo wykonane jeden po drugim. Program taki nie zawiera żadnych warunków ani rozgałęzień. Zaczyna się od podania zestawu danych, następnie wykonywane są kolejne kroki wykonawcze, aż dochodzimy do wyniku.

Np. dodanie lub mnożenie dwóch liczb:1. Sformułowanie zadania: oblicz sumę dwóch liczb

naturalnycha i b. Wynik oznacz przez S.

2. Dane wejściowe: dwie liczby a i b.3. Cel obliczeń: obliczenie sumy S = a + b.4. Dodatkowe ograniczenia: sprawdzenie warunku dla

danych wejściowych np. czy a, b są naturalne. Ale

sprawdzenie takiego warunku sprawia, że program przestaje być liniowy.

dr Bożena Woźna-Szcześniak 37

Page 38: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Semantyka: wykonywanie kolejnych kroków programu zgodnie z zadaną sekwencją

Syntaktyka:

dr Bożena Woźna-Szcześniak 38

START

STOP

Krok_1

Krok_2

Krok_3

Krok_4

Schemat blokowy sekwencji instrukcji

begin

krok_1;

krok_2;

krok_3;

krok_4;

end;Pseudokodsekwencji instrukcji

Page 39: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

dr Bożena Woźna-Szcześniak 39

START

STOP

Podaj a

Podaj b

S=a+b

Pisz S

Page 40: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

dr Bożena Woźna-Szcześniak 40

START

STOP

Podaj a

K=a*a

Pisz (K)

Page 41: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

dr Bożena Woźna-Szcześniak 41

Page 42: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

dr Bożena Woźna-Szcześniak 42

Page 43: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Algorytm obliczający kwadrat danej liczby

dr Bożena Woźna-Szcześniak 43

Page 44: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Algorytm obliczający kwadrat danej liczby

dr Bożena Woźna-Szcześniak 44

Page 45: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Algorytm obliczający kwadrat danej liczby

dr Bożena Woźna-Szcześniak 45

Page 46: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

dr Bożena Woźna-Szcześniak 46

START

STOP

Podaj a

Podaj b

Podaj c

V=a*b*c

Pisz V

Opis za pomocą schematu blokowego: objętość prostopadłościanu

Page 47: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Schemat blokowy programu obliczający pole trójkąta wpisanego w okrąg

dr Bożena Woźna-Szcześniak 47

Page 48: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Klocek startowy. Wpisz komunikat początkowy programu, np..

dr Bożena Woźna-Szcześniak 48

Page 49: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Podaj długość kolejnych boków trójkąta wpisanego w okrąg

Wprowadzanie danej do programu (wpisz długości kolejnych boków trójkąta oraz podaj promień koła)

dr Bożena Woźna-Szcześniak49

Page 50: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Wpisz równanie na obliczanie pola trójkąta wpisanego w okrąg.

Wykonywanie obliczeń arytmetycznych. Podstawienie danych do wzoru arytmetycznego.

dr Bożena Woźna-Szcześniak 50

Page 51: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Komunikat wyjściowy informujący o wyniku.

Wpisz komunikat informujący o wymiarach pola trójkąta wpisanego w okrąg.

dr Bożena Woźna-Szcześniak 51

Page 52: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Zakończenie programu.

Komunikat końcowy, zakończenie programu.

dr Bożena Woźna-Szcześniak 52

Page 53: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Instrukcje warunkowe (rozgałęzienia warunkowe) mają następującą postać:◦ Jeżeli warunek M to, wykonaj czynność N

Lub◦ Jeżeli warunek M, to wykonaj czynność N, w

przeciwnym razie wykonaj czynność P. W językach programowanie

(C/C++/Java/C#/PHP) to instrukcje: if, if – else, switch-case

dr Bożena Woźna-Szcześniak 53

Page 54: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Semantyka: wybór jednej z dwóch możliwości przetwarzania po sprawdzeniu prawdziwości zdania logicznego

Syntaktyka:

dr Bożena Woźna-Szcześniak 54

if (logic_assertion_is true) then

action_if_true;

else

action_if_false;

end if;

Sekcja „else”jest opcjonalna

warunekT N

akcja jeśli „TAK”

akcja jeśli „NIE”

Schemat blokowy instrukcji „if” Pseudokod instrukcji if-else

Page 55: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

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).

dr Bożena Woźna-Szcześniak 55

Page 56: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

dr Bożena Woźna-Szcześniak 56

Start

Podaj a

c = a % 2

c== 0

Liczba jest parzysta

Liczba nie jest parzysta

Stop

TAK NIE

„a mod 2” oznacza resztę z dzielenia a przez 2

Page 57: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

dr Bożena Woźna-Szcześniak 57

Page 58: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

dr Bożena Woźna-Szcześniak 58

Page 59: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

dr Bożena Woźna-Szcześniak 59

Page 60: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

dr Bożena Woźna-Szcześniak 60

Page 61: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

dr Bożena Woźna-Szcześniak 61

Page 62: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

dr Bożena Woźna-Szcześniak 62

Page 63: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

dr Bożena Woźna-Szcześniak 63

Page 64: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

dr Bożena Woźna-Szcześniak 64

Page 65: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

dr Bożena Woźna-Szcześniak 65

Algorytm porównujący 2 liczby wprowadzanez klawiatury.

Page 66: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

dr Bożena Woźna-Szcześniak 66

Algorytm porównujący 2 liczby wprowadzanez klawiatury.

Page 67: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

dr Bożena Woźna-Szcześniak 67

Algorytm porównujący 2 liczby wprowadzanez klawiatury.

Page 68: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

dr Bożena Woźna-Szcześniak 68

Algorytm porównujący 2 liczby wprowadzanez klawiatury.

Page 69: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

dr Bożena Woźna-Szcześniak 69

Algorytm porównujący 2 liczby wprowadzanez klawiatury.

Page 70: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

dr Bożena Woźna-Szcześniak 70

Algorytm porównujący 2 liczby wprowadzanez klawiatury.

Page 71: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Zadanie: Znajdź rozwiązanie równania liniowego postaci a * x + b = 0. Wynikiem jest wartość liczbowa lub stwierdzenie dlaczego nie ma jednoznacznego rozwiązania.

Dane wejściowe: dwie liczby rzeczywiste a i b. Cel obliczeń: obliczenie wartości x lub

stwierdzenie, że równanie nie ma jednoznacznego rozwiązania.◦ gdy a = 0, to sprawdź czy b = 0, jeśli tak to

równanie sprzeczne lub tożsamościowe◦ gdy a != 0, to oblicz x = -b/a

dr Bożena Woźna-Szcześniak 71

Page 72: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

dr Bożena Woźna-Szcześniak 72

Page 73: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Rozpoczęcie programu. Wpisanie komunikatu startowego.

dr Bożena Woźna-Szcześniak 73

Page 74: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Wprowadzanie zmiennych (tych, które będą poddawane działaniom arytmetycznym).

dr Bożena Woźna-Szcześniak 74

Page 75: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Wpisz instrukcje pozwalającą na wybór użytkownikowi pożądanego działania.

dr Bożena Woźna-Szcześniak 75

Page 76: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Wprowadzanie warunku decydującego o wykonywanym działaniu.

Wybór jednej z liczb od 1 do 4 będzie wskazywał wykonanie określonego działania arytmetycznego. Dla 1 program wykonania dodawanie, w innym przypadku warunek nie zostanie spełniony, a program wykona inna instrukcję.

dr Bożena Woźna-Szcześniak 76

Page 77: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

W przypadku wybrania sumy wprowadzamy pole wykonania obliczenia:

Wprowadzamy instrukcje dla wykonania obliczenia :

dr Bożena Woźna-Szcześniak 77

Page 78: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

W przypadku, gdy użytkownik wybierze inna instrukcję, warunek op=1 nie jest spełniony. Musimy zatem wprowadzić instrukcje obslugujące pozostałe przypadki.

Użytkownik wybrał np. 2. Wtedy wprowadzamy warunek:

dr Bożena Woźna-Szcześniak 78

Page 79: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Użytkownik wybrał różnicę op=2. Program wykonuje działanie odejmowania:

dr Bożena Woźna-Szcześniak 79

Page 80: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

W przypadku gdy użytkownik wybrał 3 (iloraz), obsługujemy warunek dla ilorazu:

Wykonujemy działanie:

dr Bożena Woźna-Szcześniak 80

Page 81: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Gdy użytkownik wybiera iloczyn, warunek nie zostaje spełniony, a program przechodzi do kolejnej instrukcji - wykonuje mnożenie:

dr Bożena Woźna-Szcześniak 81

Page 82: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Gdy użytkownik nie wybierze żądnej z liczb 1, 2, 3, 4 warunek nie zostanie spełniony. Wtedy wprowadzamy:

dr Bożena Woźna-Szcześniak 82

Page 83: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Każdą z instrukcji (oprócz powrotu do wyboru działania arytmetycznego) kończy podanie wyniku oraz zakończenie programu:

dr Bożena Woźna-Szcześniak 83

Page 84: Bożena Woźna Szcześniak bwozna@gmailSkrzynki START i STOP wskazują początek i koniec każdego algorytmu. Ze skrzynki START wychodzi tylko jedna droga, do skrzynki STOP wchodzi

Schemat kalkulatora:

dr Bożena Woźna-Szcześniak 84