Menu
Jest wolny
rejestracja
Dom  /  Oprogramowanie układowe / Pojęcie języka executora algorytmu algorytmu języka executora. B6

Pojęcie executora algorytmu to język modułu wykonawczego. B6

Koncepcja algorytmu. Wykonawcy algorytmów. Właściwości algorytmu

Pojęcie algorytmu jest tak samo fundamentalne dla informatyki, jak pojęcie informacji. Istnieje wiele różnych definicji algorytmu, ponieważ pojęcie to jest dość szerokie i jest stosowane w różnych dziedzinach nauki, technologii i życia codziennego.

Algorytm to klarowna i precyzyjna sekwencja działań opisująca proces transformacji obiektu ze stanu początkowego do końcowego.

Algorytm to precyzyjny opis sekwencji działań mających na celu rozwiązanie danego problemu, przeznaczonych dla konkretnego wykonawcy.

Wykonawca algorytmem może być osoba (przepisy, różne instrukcje, algorytmy obliczeń matematycznych) lub urządzenie techniczne. Różne maszyny (komputery, roboty przemysłowe, nowoczesny sprzęt AGD) są formalni wykonawcy algorytmy. Formalny wykonawca nie musi rozumieć istoty rozwiązywanego problemu, ale wymagane jest dokładne wykonanie sekwencji poleceń.

Algorytm można zapisać różne sposoby (opis słowny, opis graficzny - schemat blokowy, program w jednym z języków programowania itp.). Program to napisany algorytmjęzyk programowania .

Aby stworzyć algorytm (program), musisz wiedzieć:

    kompletny zestaw danych początkowych problemu (stan początkowy obiektu);

    cel stworzenia algorytmu (stan końcowy obiektu);

    system poleceń executora (czyli zestaw poleceń, które executor rozumie i może wykonać).

Wynikowy algorytm (program) musi mieć następujący zestaw właściwości:

    dyskretność (algorytm podzielony jest na osobne kroki - polecenia);

    jednoznaczność (każda komenda określa jedyne możliwe działanie executora);

    zrozumiałość (wszystkie polecenia algorytmu są zawarte w systemie poleceń executora);

    wydajność (wykonawca musi rozwiązać problem w skończonej liczbie kroków).

Większość algorytmów ma również tę właściwość charakter masowy (używając tego samego algorytmu można rozwiązać wiele podobnych problemów).

Metody opisu algorytmów

Zaznaczono powyżej, że ten sam algorytm można zapisać na różne sposoby. Algorytm można zapisać język naturalny. W tej formie korzystamy z przepisów, instrukcji itp. Do nagrywania algorytmów przeznaczonych dla wykonawców formalnych, specjalne języki programowania... Można opisać dowolny algorytm graficznie jako schemat blokowy... W tym celu opracowano specjalny system notacji:

Przeznaczenie

Opis

Uwagi

Algorytm zaczyna się i kończy

Wprowadzanie i wyprowadzanie danych.

Dane wyjściowe są czasami określane inaczej:

akt

W algorytmach obliczeniowych jest to przypisanie

Widelec

Fork - komponent wymagany do implementacji gałęzi i pętli

Cykl rozpoczyna się od parametru

Typowy proces

W programowaniu, procedurach lub podprogramach

Przejścia między blokami

Podajmy przykład opisu algorytmu sumowania dwóch wielkości w postaci schematu blokowego:

Ten sposób opisu algorytmu jest najbardziej obrazowy i zrozumiały dla ludzi. Dlatego algorytmy formalni wykonawcy zwykle rozwijają się najpierw w postaci schematu blokowego, a dopiero potem tworzą program na jednym z plikówjęzyki programowania .

Typowe struktury algorytmiczne

Programista ma możliwość projektowania i wykorzystywania nietypowych struktur algorytmicznych, jednak nie jest to konieczne. Każdy algorytm, bez względu na stopień złożoności, można opracować na podstawie trzech typowych struktur: sukcesji, rozgałęzień i powtórzeń. W takim przypadku struktury mogą być ułożone sekwencyjnie jedna po drugiej lub zagnieżdżone jedna w drugiej.

Struktura liniowa (wykonaj)

Najprostsza struktura algorytmiczna to liniowy. W nim wszystkie operacje są wykonywane raz w kolejności, w jakiej zostały zapisane.

Rozgałęzienie

W pełne rozgałęzienie istnieją dwie opcje dla akcji executora, w zależności od wartości wyrażenia logicznego (warunku). Jeśli warunek jest prawdziwy, zostanie wykonana tylko pierwsza gałąź, w przeciwnym razie zostanie wykonana tylko druga gałąź.

Druga gałąź może być pusta. Ta struktura nazywa się niepełne rozgałęzianie lub przechodzenie.

Z kilku oddziałów można zbudować konstrukcję „ wybór»(Rozgałęzienie wielokrotne), które wybierze nie z dwóch, ale z większej liczby opcji dla akcji executora, w zależności od kilku warunków. Istotne jest, aby była wykonywana tylko jedna gałąź - w takiej strukturze kolejność warunków staje się ważna: jeśli jest spełnionych kilka warunków, to zadziała tylko jedna z nich - pierwsza z góry.

Cykl (powtórzenie)

Cyklumożliwia organizowanie wielu powtórzeń tej samej sekwencji poleceń- nazywa się to ciałem cyklu. W różnych typach algorytmów cyklicznych liczba powtórzeń może zależeć od wartości wyrażenia logicznego (warunku) lub może być zakodowana na stałe w samej strukturze. Istnieją cykle: „ przed», « podczas», cykle z licznikiem.W pętlach „przed” i „podczas” wyrażenie logiczne (warunek) może poprzedzać treść pętli ( pętla warunków wstępnych) lub zakończ pętlę ( pętla warunków końcowych).

Cykle« przed„- powtórzenie ciała cyklu do momentu spełnienia warunku:

Cykle « podczas„- powtórzenie ciała cyklu gdy warunek jest spełniony (prawdziwe):

Pętle licznikowe(z parametrem) - powtórzenie bryły pętli określoną liczbę razy:

Algorytm pomocniczy (podprogram, procedura)

Algorytm pomocniczy to moduł, do którego można uzyskać dostęp wielokrotnie z poziomu głównego algorytmu. Zastosowanie algorytmów pomocniczych może znacznie zmniejszyć rozmiar algorytmu i uprościć jego tworzenie.

Metody tworzenia złożonych algorytmów

Istnieją dwie metody tworzenia złożonych algorytmów:

Metoda uszczegóławiania zadań sekwencyjnych („Odgórny”) polega na tym, że pierwotny złożony problem jest podzielony na podzadania. Każdy z podproblemów jest rozpatrywany i rozwiązywany oddzielnie. Jeśli którekolwiek z pod-zadań jest trudne, są one również dzielone na pod-zadania. Proces jest kontynuowany, dopóki podzadania nie zostaną zredukowane do elementarnych. Rozwiązania poszczególnych podproblemów są następnie zbierane w jednym algorytmie rozwiązywania pierwotnego problemu. Metoda ta jest szeroko stosowana, ponieważ umożliwia kilku programistom jednoczesne opracowanie ogólnego algorytmu rozwiązującego lokalne podzadania. Jest to warunek wstępny szybkiego rozwoju oprogramowania.

Sposób montażu(„Bottom-up”) to stworzenie zestawu modułów oprogramowania, które implementują rozwiązanie typowych zadań. Przy rozwiązywaniu złożonego problemu programista może wykorzystać opracowane moduły jako pomocnicze algorytmy (procedury). W wielu systemy programowania Istnieją już podobne zestawy modułów, co znacznie upraszcza i przyspiesza tworzenie złożonego algorytmu.

Algorytmy i procesy sterowania

Kontrola - celowe oddziaływanie obiektów, z których niektóre są kontrolowane, inne są kontrolowane.

W najprostszym przypadku istnieją dwa takie obiekty:

W zakresie informatyki działania kontrolne można uznać za informacje kontrolne. Informacje mogą być przekazywane w postaci poleceń. Nazywa się sekwencję poleceń do sterowania obiektem, prowadzącą do z góry określonego celu algorytm sterowania... W konsekwencji obiekt sterujący można nazwać wykonawcą algorytmu sterowania. W powyższym przykładzie obiekt sterujący działa „bez patrzenia” na to, co dzieje się z obiektem sterującym ( sterowanie w otwartej pętli otwarty... Inny schemat sterowania może uwzględniać informacje o procesach zachodzących w obiekcie sterowania:

W takim przypadku algorytm sterowania musi być na tyle elastyczny, aby przeanalizować te informacje i podjąć decyzję o jego dalszych działaniach w zależności od stanu obiektu sterowania ( kontrola sprzężenia zwrotnego). Ten schemat sterowania nazywa się zamknięte.

Bardziej szczegółowo badane są procesy zarządzania. cybernetyka... Ta nauka twierdzi, że najbardziej zróżnicowane procesy zarządzania w społeczeństwie, przyrodzie i technologii zachodzą w podobny sposób, podlegają tym samym zasadom.

Główny temat

Proszę zawiesić AdBlock na tej stronie.

W tej lekcji przeanalizujemy kilka pojęć teoretycznych, które formalizują pojęcie programowania. Jednocześnie doprecyzujemy główne zadanie Twojego treningu.

Na początek proponuję trochę pobawić się następującą zabawką dla dzieci. Wykonaj pierwsze pięć zadań, wróć i kontynuuj czytanie lekcji.

Rys. 1 Zrzut ekranu przedstawiający boisko na code.org

Mam nadzieję, że ci się udało. Teraz, korzystając z tego przykładu, opiszemy kilka podstawowych pojęć:

  • wykonawca;
  • system poleceń wykonawczych;
  • algorytm.

W zabawce sterujemy czerwonym ptaszkiem. Zadanie każdego etapu: doprowadzenie ptaka do świni. Ptak jest w stanie wykonywać określone polecenia, na przykład: poruszanie się do przodu, skręcanie w lewo, skręcanie w prawo itp.

Osoba, maszyna lub urządzenie, które może wykonywać określone polecenia, nazywa się executorem. W tej zabawce wykonawcą jest oczywiście ptak. Nazywa się zbiór poleceń, które wykonawca rozumie i umie wykonać system poleceń executora.

Sekwencja poleceń, które musi wykonać moduł wykonawczy, aby rozwiązać problem, nazywana jest algorytmem.

Konieczne jest skupienie się na kilku punktach.

Wykonawca może wykonywać tylko te polecenia, które są zawarte w jego systemie poleceń.

Oznacza to na przykład, że nie możesz napisać do wykonawcy ptaków: „Idź do świni!” Możesz napisać to dokładniej, ale nic się nie stanie, bo wykonawca takich poleceń nie wie.

Możesz pisać istniejące polecenia w dowolnej kolejności, którą uważasz za poprawną. Twoim zadaniem jako programisty jest podzielenie dużego złożonego zadania na małe oddzielne kroki, z których każdy będzie jasny dla wykonawcy. Dziel i rządź znowu działa.

Wykonawca robi dokładnie to, co nakazuje mu algorytm.

Wykonawca ptaków jest bardzo ufny. Nie kwestionuje tego, co piszesz w programie. Jeśli na przykład zapomnisz obrócić ptaka, rozbije się o ścianę. Dlatego musisz sam zająć się wszystkim.

Twoje przyszłe programy często nie będą działać tak, jak zamierzałeś. Błędy zdarzają się każdemu. Ważne jest, aby zrozumieć, że to nie jest głupiec komputera, ale popełniłeś błąd w algorytmie. Nie bądź jak źli programiści, których zawsze obarcza się winą.

Teraz, od ilustracyjnego przykładu, przejdźmy do rzeczywistości komputerowej. Piszemy programy na komputer, co oznacza, że \u200b\u200bkomputer w naszym przypadku jest executorem. System poleceń - standardowe funkcje i konstrukcje języka C.

Jakie jest główne zadanie twojego nauczania podstaw programowania? Opanuj umiejętność myślenia algorytmicznego. Oznacza to, że naucz się zapisywać rozwiązania różnych problemów w postaci algorytmu dla konkretnego wykonawcy (w naszym przypadku komputera).

Podsumowując:

Program komputerowy - algorytm rozwiązywania problemu napisany w języku programowania.

Algorytm - dokładny opis kolejności działań, które musi wykonać wykonawca, aby rozwiązać problem.

Wykonawca to osoba lub urządzenie, które może zrozumieć i wykonać określony zestaw poleceń.

Podłoże teoretyczne

Algorytm - opis sekwencji działań (planu), którego ścisła realizacja prowadzi do rozwiązania problemu w skończonej liczbie kroków.

Właściwości algorytmu:

1. Dyskretność (algorytm powinien składać się z określonych działań, wykonywanych w określonej kolejności);

2. Determinizm (każde działanie musi być w każdym przypadku ściśle i jednoznacznie zdefiniowane);

3. Skończoność (każde działanie i algorytm jako całość muszą być w stanie zakończyć);

4. Masywność (jeden i ten sam algorytm może być używany z różnymi danymi początkowymi);

5. Skuteczność (brak błędów, algorytm powinien prowadzić do poprawnego wyniku dla wszystkich poprawnych wartości wejściowych).

Rodzaje algorytmów:

1. Algorytm liniowy (opis czynności, które są wykonywane raz w zadanej kolejności);

2. Algorytm cykliczny (opis czynności, które należy powtarzać określoną liczbę razy lub do zakończenia zadania);

3. Algorytm rozgałęziający (algorytm, w którym w zależności od warunku wykonywana jest jedna lub druga sekwencja działań)

Przykłady rozwiązywania problemów

Artysta Rysownik porusza się po płaszczyźnie współrzędnych, pozostawiając ślad w postaci linii. Rysownik może wykonać polecenie Przejdź do (a, b) (gdzie a, b to liczby całkowite), która przenosi kreślarza z punktu o współrzędnych (x, y) do punktu o współrzędnych (x + a, y + b). Jeśli liczby a, b są dodatnie, wartość odpowiadającej im współrzędnej jest zwiększana; jeśli jest ujemny, maleje.

Na przykład, jeśli rysownik znajduje się w punkcie o współrzędnych (9, 5), to polecenie Przejście do

(1, -2) przeniesie kreślarza do punktu (10, 3).

Powtórz k razy

Team1 Team2 Team3

koniec

oznacza, że \u200b\u200bsekwencja poleceń Team1 Team2 Team3 zostanie powtórzona k razy. Sprawozdawcy przekazano następujący algorytm wykonania:

Powtórz 3 razy

Ruch o (-2, -3) Ruch o (3, 2) Ruch o (-4, 0)

koniec

Jaką komendą można zastąpić ten algorytm, aby kreślarz znalazł się w tym samym miejscu, co po wykonaniu algorytmu?

1) Przejdź o (-9, -3)

2) Przejdź o (-3, 9)

3) Przejdź o (-3, -1)

4) Przejdź do (9, 3)

Decyzja:

To zadanie najlepiej wykonywać sekwencyjnie.

W pętli kreślarz wykonuje sekwencję poleceń

- Przejdź o (-2, -3)

- Przejdź o (3, 2)

- Ruch o (-4, 0),

które można zastąpić jednym poleceniem Przesuń o (-2 + 3-4, -3 + 2 + 0), tj. Przejdź o (-3, -1).

Ponieważ cykl powtarza się 3 razy, odebrane polecenie Przesuń o (-3, -1) zostanie wykonane 3 razy. Tak więc cykl można zastąpić poleceniem Przenieś do (-3 * 3, -1 * 3), tj. Przejdź o (-9, -3). W ten sposób otrzymujemy polecenie Move by (-9, -3), na które można zamienić cały algorytm.

Zadania szkoleniowe

1. Artysta Rysownik porusza się po płaszczyźnie współrzędnych, pozostawiając ślad w postaci linii. Rysownik może wykonać polecenie Przejdź do (a, b) (gdzie a, b to liczby całkowite), która przenosi kreślarza z punktu o współrzędnych (x, y) do punktu o współrzędnych (x + a, y + b). Jeśli liczby a, b są dodatnie, wartość odpowiadającej im współrzędnej jest zwiększana; jeśli ujemny, maleje.

Na przykład, jeśli rysownik znajduje się w punkcie o współrzędnych (4, 2), to polecenie Przesuń o (2, −3) przeniesie kreślarza do punktu (6, −1).

Powtórz k razy

Team1 Team2 Team3

koniec

oznacza, że \u200b\u200bsekwencja poleceń Team1 Team2 Team3 powtórzy się k czas.

Sprawozdawcy przekazano następujący algorytm wykonania:

Powtórz 2 razy

Przejdź o (−6, −4)

Po wykonaniu tego algorytmu kreślarz wrócił do punktu wyjścia. Jakie polecenie należy umieścić zamiast polecenia Zespół 1?

1) Przejdź o (−2, −1)

2) Przenieś do (1, 1)

3) Przejdź o (−4, −2)

4) Przejdź do (2, 1)

2. Przejdź do (a, b)

Na przykład, jeśli rysownik znajduje się w punkcie o współrzędnych (4, 2), to polecenie Przesuń o (2, −3) przeniesie kreślarza do punktu (6, −1).

Powtórz k razy

Team1 Team2 Team3

koniec

Team1 Team2 Team3 powtórzy się k czas.

Powtórz 4 razy

Polecenie1 Ruch o (3, 3) Ruch o (1, −2) Koniec

Przejdź o (−8, 12)

Zespół 1?

1) Przejdź o (−2, −4)

2) Przejdź o (4, −13)

3) Przejdź do (2, 4)

4) Przejdź o (−8, −16)

3. Artysta Rysownik porusza się po płaszczyźnie współrzędnych, pozostawiając ślad w postaci linii. Rysownik może wykonać polecenie Przejdź do (a, b) (gdzie a, b to liczby całkowite), która przenosi kreślarza z punktu o współrzędnych (x, y) do punktu o współrzędnych (x + a, y + b). Jeśli liczby a, b są dodatnie, wartość odpowiadającej im współrzędnej jest zwiększana; jeśli ujemny, maleje.

Powtórz k razy

Team1 Team2 Team3

koniec

oznacza, że \u200b\u200bsekwencja poleceń Team1 Team2 Team3 powtórzy się k czas.

Sprawozdawcy przekazano następujący algorytm wykonania:

Powtórz 3 razy

Przejdź o (3, 9)

Po wykonaniu tego algorytmu kreślarz wrócił do punktu wyjścia. Jakie polecenie należy umieścić zamiast polecenia Zespół 1?

1) Przejdź do (3, 4)

2) Przejdź o (−5, −10)

3) Przejdź o (−9, −12)

4) Przejdź o (−3, −4)

4. Artysta Rysownik porusza się po płaszczyźnie współrzędnych, pozostawiając ślad w postaci linii. Rysownik może wykonać polecenie Przejdź do (a, b) (gdzie a, b to liczby całkowite), która przenosi kreślarza z punktu o współrzędnych (x, y) do punktu o współrzędnych (x + a, y + b). Jeśli liczby a, b są dodatnie, wartość odpowiadającej im współrzędnej jest zwiększana; jeśli ujemny, maleje.

Na przykład, jeśli rysownik znajduje się w punkcie o współrzędnych (4, 2), to polecenie Przesuń o (2, −3) przeniesie kreślarza do punktu (6, −1).

Powtórz k razy

Team1 Team2 Team3

koniec

oznacza, że \u200b\u200bsekwencja poleceń Team1 Team2 Team3 powtórzy się k czas.

Sprawozdawcy przekazano następujący algorytm wykonania:

Powtórz 3 razy

Command1 Przejdź do (3, 2) Przejdź do (2, 1) End

Przejdź o (−9, −6)

Po wykonaniu tego algorytmu kreślarz wrócił do punktu wyjścia. Jakie polecenie należy umieścić zamiast polecenia Zespół 1?

1) Przejdź o (−6, −3)

2) Przejdź do (4, 3)

3) Przejdź o (−2, −1)

4) Przejdź do (2, 1)

5. Artysta Rysownik porusza się po płaszczyźnie współrzędnych, pozostawiając ślad w postaci linii. Rysownik może wykonać polecenie Przejdź do (a, b) (gdzie a, b to liczby całkowite), która przenosi kreślarza z punktu o współrzędnych (x, y) do punktu o współrzędnych (x + a, y + b). Jeśli liczby a, b są dodatnie, wartość odpowiadającej im współrzędnej jest zwiększana; jeśli ujemny, maleje.

Powtórz k razy

Team1 Team2 Team3

koniec

oznacza, że \u200b\u200bsekwencja poleceń Team1 Team2 Team3 powtórzy się k czas.

Sprawozdawcy przekazano następujący algorytm wykonania:

Powtórz 2 razy

Polecenie1 Ruch o (3, 3) Ruch o (1, −2) Koniec

Przejdź o (4, −6)

Po wykonaniu tego algorytmu kreślarz wrócił do punktu wyjścia. Jakie polecenie należy umieścić zamiast polecenia Zespół 1?

1) Przejdź o (6, −2)

2) Przejdź o (−8, 5)

3) Przejdź o (−12, 4)

4) Przejdź o (−6, 2)

6. Artysta Rysownik porusza się po płaszczyźnie współrzędnych, pozostawiając ślad w postaci linii. Rysownik może wykonać polecenie Przejdź do (a, b) (gdzie a, b to liczby całkowite), która przenosi kreślarza z punktu o współrzędnych (x, y) do punktu o współrzędnych (x + a, y + b). Jeśli liczby a, b są dodatnie, wartość odpowiadającej im współrzędnej jest zwiększana; jeśli ujemny, maleje.

Na przykład, jeśli rysownik znajduje się w punkcie o współrzędnych (4, 2), to polecenie Przesuń o (2, −3) przeniesie kreślarza do punktu (6, −1).

Powtórz k razy

Team1 Team2 Team3

koniec

oznacza, że \u200b\u200bsekwencja poleceń Team1 Team2 Team3 powtórzy się k czas.

Sprawozdawcy przekazano następujący algorytm wykonania:

Powtórz 4 razy

Polecenie1 Ruch o (1, 3) Ruch o (1, −2) Koniec

Przejdź o (−4, −12)

Po wykonaniu tego algorytmu kreślarz wrócił do punktu wyjścia. Jakie polecenie należy umieścić zamiast polecenia Zespół 1?

1) Przejdź o (1, −2)

2) Przejdź do (12, 4)

3) Przejdź do (2, 11)

4) Przejdź o (−1, 2)

7. Artysta Rysownik porusza się po płaszczyźnie współrzędnych, pozostawiając ślad w postaci linii. Rysownik może wykonać polecenie Przejdź do (a, b) (gdzie a, b to liczby całkowite), która przenosi kreślarza z punktu o współrzędnych (x, y) do punktu o współrzędnych (x + a, y + b). Jeśli liczby a, b są dodatnie, wartość odpowiadającej im współrzędnej jest zwiększana; jeśli ujemny, maleje.

Na przykład, jeśli rysownik znajduje się w punkcie o współrzędnych (4, 2), to polecenie Przesuń o (2, −3) przeniesie kreślarza do punktu (6, −1).

Powtórz k razy

Team1 Team2 Team3

koniec

oznacza, że \u200b\u200bsekwencja poleceń Team1 Team2 Team3 powtórzy się k czas.

Sprawozdawcy przekazano następujący algorytm wykonania:

Powtórz 4 razy

Command1 Przejdź do (3, 2) Przejdź do (2, 1) End

Przejdź o (−12, −8)

Po wykonaniu tego algorytmu kreślarz wrócił do punktu wyjścia. Jakie polecenie należy umieścić zamiast polecenia Zespół 1?

1) Przejdź o (−8, −4)

2) Przejdź o (−2, −1)

3) Przejdź do (7, 5)

4) Przejdź do (2, 1)

8. Naprzód n Dobrze m

Powtórz 9 [Forward 50 Right 60]

1) sześciokąt zwykły

2) trójkąt regularny

3) otwórz polilinię

4) sześciokąt foremny

9. Artysta Żółw porusza się po ekranie komputera, pozostawiając ślad w postaci linii. W każdym momencie znana jest pozycja wykonawcy i kierunek jego ruchu. Executor ma dwie komendy: Naprzód n(gdzie n jest liczbą całkowitą) powodując, że Żółw porusza się n kroków w kierunku ruchu; Dobrze m (gdzie m jest liczbą całkowitą), powodując zmianę kierunku ruchu o m stopni zgodnie z ruchem wskazówek zegara. Nagranie Powtórz k [Command1 Command2 Command3] oznacza, że \u200b\u200bsekwencja poleceń w nawiasach zostanie powtórzona k razy.

Żółwowi przydzielono następujący algorytm wykonania: Powtórz 7 [Forward 70 Right 120]... Który kształt pojawi się na ekranie?

1) sześciokąt zwykły

2) otwórz polilinię

3) siedmiokąt regularny

4) trójkąt regularny

10. Artysta Żółw porusza się po ekranie komputera, pozostawiając ślad w postaci linii. W każdym momencie znana jest pozycja wykonawcy i kierunek jego ruchu. Executor ma dwie komendy: Naprzód n(gdzie n jest liczbą całkowitą) powodując, że Żółw porusza się n kroków w kierunku ruchu; Dobrze m (gdzie m jest liczbą całkowitą), powodując zmianę kierunku ruchu o m stopni zgodnie z ruchem wskazówek zegara. Nagranie Powtórz k [Command1 Command2 Command3] oznacza, że \u200b\u200bsekwencja poleceń w nawiasach zostanie powtórzona k razy.

Żółwowi przydzielono następujący algorytm wykonania: Powtórz 9 [Forward 70 Right 90]... Który kształt pojawi się na ekranie?

2) sześciokąt foremny

3) ośmiokąt zwykły

4) regularny czworobok

11. Artysta Żółw porusza się po ekranie komputera, pozostawiając ślad w postaci linii. W każdym momencie znana jest pozycja wykonawcy i kierunek jego ruchu. Executor ma dwie komendy: Naprzód n(gdzie n jest liczbą całkowitą) powodując, że Żółw porusza się n kroków w kierunku ruchu; Dobrze m (gdzie m jest liczbą całkowitą), powodując zmianę kierunku ruchu o m stopni zgodnie z ruchem wskazówek zegara. Nagranie Powtórz k [Command1 Command2 Command3] oznacza, że \u200b\u200bsekwencja poleceń w nawiasach zostanie powtórzona k razy.

Żółwowi przydzielono następujący algorytm wykonania: Powtórz 5 [Forward 80 Right 60]... Który kształt pojawi się na ekranie?

1) pięciokąt foremny

2) trójkąt regularny

3) sześciokąt foremny

4) otwórz polilinię

12. Artysta Żółw porusza się po ekranie komputera, pozostawiając ślad w postaci linii. W każdym momencie znana jest pozycja wykonawcy i kierunek jego ruchu. Executor ma dwie komendy: Naprzód n(gdzie n jest liczbą całkowitą) powodując, że Żółw porusza się n kroków w kierunku ruchu; Dobrze m (gdzie m jest liczbą całkowitą), powodując zmianę kierunku ruchu o m stopni zgodnie z ruchem wskazówek zegara. Nagranie Powtórz k [Command1 Command2 Command3] oznacza, że \u200b\u200bsekwencja poleceń w nawiasach zostanie powtórzona k razy.

Żółwowi przydzielono następujący algorytm wykonania: Powtórz 5 [Forward 80 Right 90]... Który kształt pojawi się na ekranie?

1) otwórz polilinię

2) sześciokąt foremny

3) pięciokąt foremny

4) regularny czworobok


Podłoże teoretyczne

Przykłady rozwiązywania problemów

Zadania szkoleniowe


Podłoże teoretyczne

Przykłady rozwiązywania problemów

Zadania szkoleniowe


Podłoże teoretyczne

Przykłady rozwiązywania problemów

Zadania szkoleniowe


Podłoże teoretyczne

Przykłady rozwiązywania problemów

Zadania szkoleniowe


Podłoże teoretyczne

Przykłady rozwiązywania problemów

Zadania szkoleniowe


Podłoże teoretyczne

Przykłady rozwiązywania problemów

Zadania szkoleniowe


Podłoże teoretyczne

Przykłady rozwiązywania problemów

Zadania szkoleniowe


Podłoże teoretyczne

Przykłady rozwiązywania problemów

Zadania szkoleniowe


Podłoże teoretyczne

Przykłady rozwiązywania problemów

Zadania szkoleniowe

\u003e\u003e Typy algorytmów

W algorytmach polecenia są zapisywane jeden po drugim w określonej kolejności. Niekoniecznie są one wykonywane w zarejestrowanej kolejności: w zależności od kolejności wykonywania rozkazów można wyróżnić trzy typy algorytmów:

Algorytmy liniowe;
algorytmy rozgałęziające;
algorytmy powtórzeń.

Algorytmy liniowe

W którym polecenia są wykonywane w kolejności, w jakiej zostały napisane, to znaczy kolejno jedna po drugiej, nazywa się liniową.

Na przykład następujący algorytm sadzenia drzew jest liniowy:

1) wykopać dziurę w ziemi;
2) opuść sadzonkę do dołka;
3) wypełnić dołek sadzonką ziemią;
4) podlać sadzonkę wodą.

Korzystając ze schematu blokowego, algorytm ten można przedstawić w następujący sposób:

Algorytmy rozgałęziające

Sytuacje, w których kolejność wymaganych działań jest znana z góry, są niezwykle rzadkie. W życiu często musisz podejmować decyzje w zależności od panującej sytuacji. Jeśli pada deszcz, bierzemy parasol i zakładamy płaszcz przeciwdeszczowy; jeśli jest gorąco, załóż lekkie ubranie. Istnieją również bardziej złożone warunki selekcji. W niektórych przypadkach los osoby zależy od wybranej decyzji.

Logikę podejmowania decyzji można opisać następująco:

GDYBY<условие> DO<действия 1> JESZCZE<действия 2>

Przykłady:

Jeśli chcesz być zdrowy , WTEDY temperament, INNYM, leżeć na kanapie cały dzień;
JEŚLI jaskółki latają nisko, TO będzie padać, W INNYM nie będzie padać;
JEŚLI wyciągniesz wnioski, WTEDY idź na spacer, INNYM naucz się lekcji.

W niektórych przypadkach<действия 2> może być nieobecny;

GDYBY<условие> DO<действия 1>

Przykład:

JEŚLI nazwał siebie ciężarem, wespnij się z tyłu.

Forma organizacji działań, w której w zależności od spełnienia określonego warunku wykonywany jest jeden lub drugi sekwencja kroki nazywa się rozgałęzianiem.

Przedstawmy na schemacie blokowym sekwencję działań ucznia VI klasy Vasyi Mukhina, którą wyobraża sobie następująco: „Jeśli Pavlik jest w domu, rozwiążemy zadania matematyczne. W przeciwnym razie powinniśmy zadzwonić do Mariny i wspólnie przygotować raport biologiczny. Jeśli Mariny nie ma w domu, wtedy musisz usiąść, żeby pisać. "

Tak więc, za pomocą diagramu blokowego, możesz bardzo jasno przedstawić rozumowanie podczas rozwiązywania następującego problemu.

Z trzech monet tego samego nominału jedna jest fałszywa (lżejsza). Jak go znaleźć, korzystając z ważenia na wadze bez odważników?

Algorytmy powtórzeń

W praktyce często zdarzają się zadania, w których jedna lub więcej czynności wymaga kilkukrotnego powtórzenia, przy spełnieniu pewnego z góry określonego warunku.

Algorytm zawierający cyklenazywany jest algorytmem okrężnym lub algorytmem powtarzalnym.

Sytuacja, w której wykonanie pętli nigdy się nie kończy, nazywana jest nieskończoną pętlą. Należy opracować algorytmy, aby uniknąć takich sytuacji.

Spójrzmy na przykład z matematyki.

Liczba naturalna nazywana jest liczbą pierwszą, jeśli ma tylko dwa dzielniki: jeden i samą liczbę1.

2, 3, 5, 7 - liczby pierwsze; 4, 6, 8 - nie. W III wieku pne grecki matematyk Eratostenes zaproponował następujący algorytm znajdowania wszystkich liczb pierwszych mniejszych niż dana liczba n:

1) wypisz wszystkie liczby naturalne od 1 do n;
2) usuń 1;
3) podkreślić najmniejszą z niezaznaczonych cyfr;
4) wykreśl wszystkie liczby będące wielokrotnościami podkreślenia w poprzednim kroku;
5) jeśli lista zawiera nieoznaczone liczby, przejdź do kroku 3, w przeciwnym razie wszystkie podkreślone liczby są pierwszymi.

To jest algorytm cykliczny. Po wykonaniu kroki 3-5 są powtarzane, aż na oryginalnej liście pojawią się niezaznaczone numery.

Tak wygląda schemat działań ucznia, który powinien to zrobić przed wieczornym spacerem zadanie domowe matematyka:

Przypomnijmy, że liczba 1 nie jest ani liczbą złożoną (mającą więcej niż dwa dzielniki), ani liczbą pierwszą.

Najważniejszą rzeczą

W zależności od kolejności wykonywania poleceń można wyróżnić trzy typy algorytmów:

\u003e algorytmy liniowe;
\u003e algorytmy rozgałęziające;
\u003e algorytmy powtórzeń.

Algorytm, w którym polecenia są wykonywane w kolejności, w jakiej zostały napisane, to znaczy sekwencyjnie, nazywa się liniowym.

Forma organizowania działań, w której w zależności od spełnienia określonego warunku wykonywana jest jedna lub druga sekwencja kroków, nazywana jest rozgałęzianiem.

Forma organizacji czynności, w której wykonanie tej samej sekwencji poleceń jest powtarzane przy spełnieniu pewnego z góry określonego warunku, nazywa się cyklem (powtórzeniem).

Pytania i zadania

1. Jakie algorytmy nazywamy liniowymi?
2. Podaj przykład algorytmu liniowego,
3. Wykonawca „Kalkulator” może wykonać tylko dwie komendy: pomnożyć przez 2 i dodać. Wymyśl najkrótszy plan uzyskania liczby 50 od O.
4. Jaka forma organizacji działań nazywa się rozgałęzianiem?
5. Jakie warunki powinna spełniać bohaterka bajki „Gęsi-łabędzie”?
6. Podaj przykład algorytmu zawierającego rozgałęzienia "
7. Przeczytaj fragment wiersza J. Rodari „Jak pachnie rzemiosło?”:

Każde etui ma specjalny zapach:
Piekarnia pachnie ciastem i wypiekami.
Przechodzisz obok warsztatu stolarskiego -
Pachnie wiórami i świeżą deską.
Malarz pachnie terpentyną i farbą.
Szklarz pachnie jak kit do okien.
Kurtka szofera pachnie benzyną
Bluza robotnicza - olej maszynowy.

Omow wszystko jeszcze raz
o zawodach używając słów „JEŚLI ... TO” /

8. Pamiętaj o bohaterach, których rosyjskie opowieści ludowe dokonują wyborów decydujących o ich losie.
9. Z 9 monet tego samego nominału jedna jest fałszywa (lżejsza). Ile ważeń na wadze bez odważników jest w stanie to określić?
10. Jaka forma organizacji działań nazywa się powtarzaniem?
11. Podaj przykład algorytmu zawierającego powtórzenia.
12. W jakich znanych Ci utworach literackich ma miejsce cykliczna forma organizacji działań?
13. Gdzie wystąpi wykonawca, który 16 razy z rzędu skompletował następną grupę drużyn?

iść 10 metrów do przodu

obrócić o 90 ° w prawo

14. Jaką grupę działań i ile razy powtórzyć przy rozwiązywaniu kolejnego problemu?

Czterdziestu żołnierzy zbliżyło się do rzeki, wzdłuż której pływa łódką dwóch chłopców. Jak żołnierze mogą przejść na drugą stronę, jeśli łódź może pomieścić tylko jednego żołnierza lub dwóch chłopców, ale żołnierz i chłopiec nie mogą już dłużej wytrzymać?

15. Przypomnij sobie problem Kalkulatora, który może pomnożyć tylko przez 2 i dodać 1. Znacznie łatwiej będzie opracować dla niego racjonalne algorytmy, jeśli użyjesz następującego schematu blokowego:

Korzystając z tego schematu blokowego, opracuj racjonalne algorytmy uzyskiwania liczb 1024 i 500 z liczby 0.

Bosova L. L. Informatyka: Podręcznik dla klasy 6 / L. L. Bosova. - wydanie trzecie, Rev. i dodaj. - M.: BINOM. Laboratorium Wiedzy, 2005. - 208 str.: Chory.

Treść lekcji zarys lekcji i ramka pomocnicza prezentacja lekcji technologie interaktywne przyspieszające metody nauczania Ćwiczyć testy, zadania testowe i ćwiczenia online, warsztaty i pytania szkoleniowe do dyskusji w klasie Ilustracje materiały wideo i audio zdjęcia, zdjęcia grafiki, tabele, diagramy komiksy, przypowieści, przysłowia, krzyżówki, anegdoty, żarty, cytaty Suplementy abstrakty ściągawki żetony do ciekawych artykułów (MAN) literatura podstawowe i dodatkowe słownictwo terminów Ulepszanie podręczników i lekcji korekta błędów w podręczniku; wymiana nieaktualnej wiedzy na nową Tylko dla nauczycieli plany kalendarza programy nauczania wytyczne