Temat: Iteracja i pętla 1. W informatyce iteracja polega na powtarzaniu pewnej czynności (instrukcji) wielokrotnie (iteratio – powtarzaj). W oparciu o iteracje działają pętle. Obok instrukcji wyboru i warunkowej jedna z podstawowych konstrukcji w programowaniu (strukturalnym). Są to cykliczne instrukcje, więc następują w ramach nich powtórzenia, czyli zawierają one iteracje. I. rozpocznij II. liczba = 0 III. liczba = liczba + 1 IV. wypisz liczbę jeżeli liczba >100 zakończ V. VI. wróć do punktu II Po wykonaniu instrukcji III sprawdzany jest warunek. Bez niego instrukcja wykonywana będzie w nieskończoność za sprawą VI. Które linie stanowią w powyższej pętli iterację? 2. Prostym przykładem zastosowania pętli jest obliczenie pewnej skończonej ilości wartości zadanej funkcji. Weźmy funkcję: y = (n+1)/n. Oblicz kilka pierwszych wartości podstawiając n = 1, 2, 3 itd. Następnie skonstruuj algorytm obliczający 30 pierwszych wartości. Zapisz go słownie. Kolejnym krokiem niech będzie obliczenie wszystkich trzydziestu wartości w programie ELI 2.0. 3. Zapisz algorytm z punktu 2 w pseudokodzie, pseudokodzie następnie w postaci programu w języku Pascal (użyj kompilatora Free Pascal). Pętla FOR: for i = 1 to n do instrukcje (zawierające zmienną i) Przykład: for i = 1 to 10 begin write(‘Część Wojtek’); end; Efektem będzie 10 – krotne wypisanie tekstu. 4. Zapisz program dokonujący sumowania określonej ilości liczb naturalnych. Być może inne pętle byłyby właściwsze, ale my używamy pętli FOR: 5. Zadanie: Liczby Fibonacciego generowane są następująco: L1 = 1 L2 = 1 Ln = Ln-1 + Ln-2 Napiszemy w schemacie blokowym algorytm który wypisze wszystkie liczby Fibonacciego w podanym zakresie. Uważaj, aby nie podawać zbyt dużych argumentów, gdyż wartości przekroczą wtedy zakres przeznaczony dla typu Integer PROGRAM CiagFibon; USES Crt; VAR licznik, pierwsza, druga, c: LONGINT; BEGIN ClrScr; pierwsza:=1; druga:=1; Writeln; Writeln (‘podaj zakres większy od 1 '); Read(n); Writeln(‘Szukane liczby to ‘); Writeln(‘1’); Writeln(‘1’); FOR licznik:= 1 TO n-2 DO BEGIN c:= pierwsza + druga; pierwsza:= druga; druga:= c; Writeln (druga); END; readkey; END. 6. Zrealizuj powyższy program w kompilatorze Free Pascal. Zwróć uwagę na iterację.