Zapisujemy program w pseudojęzyku




  1. Od pomysłu do programu.
  2. Zapis algorytmu w umownym języku programowania.

Zadanie domowe >>>
kotek     

Ad 1. Do tej pory realizację algorytmów opieraliśmy o graficzny interfejs ELI. Programy utworzone w ten sposób można uruchamiać i zapisywać na dyskach. Zanim zastąpimy obrazki poleceniami tekstowymi, tak jak pisze się programy w Logo czy Pascalu, musimy poznać podstawowe instrukcje i składnię poleceń.
Języki programowania mają swoją specyfikę, ale mają też wiele podobieństw. Spróbujmy to wykorzystać tworząc zapisy, które w przyszłości uda się wykorzystać do konstruowania programów.

Jeśli chcesz przypomnieć sobie wiadomości o językach programowania, kliknij tutaj Języki programowania

Ad 2. Proces powstawania programu jest przedstawiony w podręczniku, więc szkoda zajmować miejsce opisem. Przystąpmy do ćwiczenia, które pozwoli zorientować się, jak w pseudojęzyku zapisać np. algorytm Euklidesa.

START
     CZYTAJ a
     CZYTAJ b
     DOPÓKI a<>b WYKONUJ
           JEŚLI a>b TO
                 a:=a-b
           PRZECIWNIE
                 b:=b-a
     nwd:=a
     PISZ nwd
STOP

Zapis w umownym języku programowania jest uproszczeniem i nie należy traktować go dosłownie przy programowaniu. Realnie instrukcje są przeważnie formułowane w jązyku angielskim np. BEGIN zamiast START, a oddzielone linie kończy zwykle znak separatora np. średnika. Dla przejrzystości kodu dobrze jest stosować wielkie litery dla słów kluczowych (instrukcji), jak też stosować wcięcia w celu zaznaczenia poziomu poleceń.

Ćwiczenie 1. Przeanalizuj zapis algorytmu i na tej podstawie spróbuj przełożyć na metajęzyk jeden ze zrealizowanych już algorytmów.
  • Zaprezentuj swoje osiągnięcia klasie. Może przyda się życzliwa korekta?
pc


Przedstawiony algorytm obliczający NWD nie jest jedynym możliwym. Poniżej cytuję inne rozwiązanie, a twoim zadaniem po przestudiowaniu zapisu jest kolejne ćwiczenie.

START
     CZYTAJ a
     CZYTAJ b
     DOPÓKI a>0 I b>0 WYKONUJ
           JEŚLI a>b TO
                 a:=a MOD b
           PRZECIWNIE
                 b:=b MOD a
     nwd:=a+b
     PISZ nwd
STOP


wskazówka Zdecydowanie łatwiej zrozumieć tę metodę, gdy pamiętamy, iż funkcja MOD zwraca w wyniku resztę z całkowitego dzielenia, zaś przy sumowaniu zmiennych a i b jedna z nich ma wartość 0.

Ćwiczenie 2. Zamień powyższy program na schemat blokowy.

Ad.3. Pora na pochwalenie się umiejętnościami wyprzedzającymi zakresem temat zajęć.

znak
Ćwiczenie 3. Jeśli dysponujesz już pewnym doświadczeniem w programowaniu, zaprezentuj omawiane przykłady w języku Pascal lub Logo.

Zadanie domowe


<<< do góry
  1. Rozwiąż zadania 1-3 posługując się umownym językiem programowania.
  2. Jeśli potrafisz przygotuj rozwiązania w Pascalu albo Logo.





Rozwiązanie problemu krok po kroku | Graficzny obraz algorytmu | Analiza programu z pomocą ELI
Budujemy program w ELI | Poznajemy technikę iteracji | Rozwiązywanie zadań z wykorzystaniem iteracji
Zapisujemy program w języku Pascal | Zapisujemy program w języku Logo
Wykorzystanie podprogramu | Porządkowanie zbioru - sortowanie bąbelkowe | Porządkowanie zbioru - sortowanie kubełkowe
Poznajemy technikę rekurencji | Rozwiązywanie zadań z wykorzystaniem rekurencji | Prezentacje własnych programów



Strona główna