ALGORYTMIKA (33)


Ćwiczenia - programowanie w języku ELI

  1. Realizacja algorytmu Euklidesa.
Ad 1.
Przykładowym wykorzystaniem pętli iteracyjnej jest przedstawiany niżej w umownym języku programowania algorytm Euklidesa (NWD).

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 pseudojęzyku 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. Przygotuj projekt algorytmu NWD w ELI. Rozbuduj algorytm, zabezpieczając go przed dzieleniem przez 0. Zapisz plik jako NWD.PRJ.

Rozmiar: 2865 bajtów


Inną realizacją algorytmu Euklidesa jest obliczanie oparte o reszty z całkowitego dzielenia dzielenia (MOD). Poniżej cytuję jego zapis w pseudojęzyku:

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


Ćwiczenie 2. Przygotuj projekt algorytmu NWD2 w ELI oparty drugie z rozwiązań. Zapisz plik jako NWD2.PRJ.

Zadanie domowe
Powtórz wiadomości na temat rekurencji.

SPIS TREŚCI