Docsity
Docsity

Przygotuj się do egzaminów
Przygotuj się do egzaminów

Studiuj dzięki licznym zasobom udostępnionym na Docsity


Otrzymaj punkty, aby pobrać
Otrzymaj punkty, aby pobrać

Zdobywaj punkty, pomagając innym studentom lub wykup je w ramach planu Premium


Informacje i wskazówki
Informacje i wskazówki

Pętla,referat - Notatki - Programowanie, Notatki z Informatyka

Informatyka: notatki z zakresu programowania dotyczące pętli. Istota i rodzaje pętel. Referat.

Typologia: Notatki

2012/2013
W promocji
30 Punkty
Discount

Promocja ograniczona w czasie


Załadowany 12.04.2013

Norbert_88
Norbert_88 🇵🇱

4.5

(30)

322 dokumenty

Podgląd częściowego tekstu

Pobierz Pętla,referat - Notatki - Programowanie i więcej Notatki w PDF z Informatyka tylko na Docsity! Co to jest pętla i do czego służy? Pętla jest to instrukcja lub zestaw instrukcji do wykonania przez program pod określonym warunkiem. Jak sama nazwa wskazuje powtarza pewną czynność określoną ilość razy, działa dopóki warunek nie zostanie spełniony, bądź działa dopóki warunek jest. spełniany. Używamy jej przy czynnościach, które wymagają wielokrotnego powtarzania do określonego warunkiem momentu. Jakie wyróżniamy rodzaje pętli? W Pascalu są trzy rodzaje pętli: Repeat – Until, While – Do i For to do. Każda pętla różni się kilkoma rzeczami, ale tak naprawdę robi to samo. 1. Pętla Repeat – Until Budowa pętli REPEAT – UNTIL: "REPEAT (instrukcje – oddzielone średnikami) UNTIL (warunek) " – (powtarzaj); Po słowie "REPEAT" wpisujemy instrukcje jakie mają być wykonywane przez program. Warunek zakończenia pętli jest podany na końcu po słowie "UNTIL", co oznacza że w chwili spełnienia warunku pętla skończy pracę. Wykonywane są w tej pętli wszystkie instrukcje między słowami "REPEAT" i "UNTIL". Taka konstrukcja pętli powoduje, że nawet gdy chcemy, aby w pętli wykonywało się kilka instrukcji, to nie musimy używać instrukcji grupującej (czyli "begin...end;"). Na przykład napiszmy coś takiego: "Witam cię po raz 1, witam cię po raz 2 ... " i tak dalej, aż do załóżmy 100. Chcemy, aby program wypisał 100 razy ten sam tekst z ciągle zwiększającą się liczbą o jeden. W takim przypadku trzeba zastosować pętle: Program witaj; USES CRT; VAR licznik:longint; BEGIN clrscr; licznik:=0; REPEAT licznik:=licznik+1; writeln('Witam cie po raz ',licznik); UNTIL licznik=100 readln; END. A teraz wyjaśnienie. Na początku zdeklarowaliśmy zmienną o nazwie "licznik". Zaraz po "BEGIN" czyścimy cały ekran i zerujemy licznik (przypisujemy wartość 0). Zaczynamy pętle. Od tego momentu, zatem, wszystko będzie powtarzane. Licznik przyjmuje wartość "licznik+1". Licznik miał wartość 0, zatem 0+1 jest jeden. Licznik, więc ma wartość 1. Program rozkazuje napisać tekst i wstawić wartość licznika. Pętla się kończy, program sprawdza czy warunek jest spełniony. Aby pętla się zakończyła, wartość licznika musi wynosić 100. Nasz licznik aktualnie ma wartość 1. Zatem warunek nie został spełniony - program wraca do słowa "REPEAT". I znowu - licznik zwiększa swoją wartość o 1, czyli ma już 2. Rozkazuje napisać tekst i wstawić licznik. Sprawdza warunek - warunek nie jest spełniony - i znowu "REPEAT" Licznik podnosi swoją wartość do 3 i tak dalej. Pętla się zakończy gdy wartość licznika będzie równa 100. Gdy pętla się zakończy, program wykonuje dalsze instrukcje (w tym wypadku jest to "READLN"), po czym zakańcza pracę. 2. Pętla For to Do Budowa pętli FOR to DO: "FOR zmienna:=wartość początkowa TO wartość końcowa DO instrukcja" – (dla); Pierwsze słowo "FOR" to słowo kluczowe sygnalizujące, że w tym miejscu będzie pętla. Po nim następuje od razu inicjacja zmiennej sterującej pętlą "for". Każda pętla for ma swoją zmienną sterującą, czyli licznik wykonywanych pętli. Przedtem taką zmienną trzeba zadeklarować, musi to być zmienną całkowita. Pętla "for" ma to do siebie, że w każdym cyklu jej wykonania zmienna sterująca zostaje automatycznie zwiększona o 1. Po wartości początkowej pętli stawiamy słowo kluczowe "TO" a po nim liczbę będącą ogranicznikiem pętli, czyli wartość końcową. Po ograniczniku stawiamy słowo kluczowe "DO" (ang. wykonuj) i następnie jedną instrukcję, która będzie wykonywana w pętli. Oczywiście może być ich parę połączonych w jednym bloku (instrukcja złożona) stosując po słowie "DO" BEGIN i END koniecznie ze średnikiem na końcu instrukcji. Możemy użyć pętli także do odliczania w dół przez wpisanie słowa DOWNTO zamiast TO, wtedy program będzie liczył „od końca”, a wartość początkowa będzie większa od końcowej, odwrotnie niż w przypadku odliczania „od początku”. program petla1; uses crt; var a:byte; begin for a:=1 to 10 do begin write('PETLA'); end; end. program petla2; uses crt; var a:byte; begin for a:=10 downto 1 do begin write('PETLA'); end; end. begin clrscr; s:=0; for i:=1 to 100 do s:=s+i; writeln('suma=',s:8:2); readln; end. program suma; 2 uses crt; var i,s:real; begin clrscr; s:=0; i:=1; repeat s:=s+i; i:=i+1; until i>100; writeln('suma=',s:6:2); readln; end. program suma; 3 uses crt; var i,s:real; begin clrscr; s:=0; i:=1; while i<=100 do begin s:=s+i; i:=i+1; end; writeln('suma=',s:6:2); readln; end. Powyższe programy obliczają sumę liczb od 1 do 100 z zastosowaniem trzech różnych pętli. Na podstawie tych programów pokażę niektóre różnice wypisane we wcześniejszym pytaniu. Program 1: Po wpisaniu modułu ekranowego deklaruję zmienną "i" oraz nasze "s" – czyli wynik końcowy. Rozpoczynamy program od wyczyszczenia ekranu. Następnie tworzymy sumę początkową czyli "s" staje się 0. Podajemy wartość początkową równą 1 i wartość końcową równą 100 (bo chcemy obliczyć sumę 1-100). Tworzymy nową sumę dodając starą sumę (czyli 0) do wartości początkowej zmiennej sterującej (czyli 1). Po zakończeniu pracy pętli program wyświetli naszą sumę "s" (zgodnie z formatem), zatrzyma ekran i zakończy pracę. Program 2: Po wpisaniu modułu ekranowego deklaruję zmienną krokową "i" oraz nasze "s", czyli wynik końcowy. Rozpoczynamy program od wyczyszczenia ekranu. Następnie tworzymy sumę początkową czyli "s" staje się 0, po czym tak samo tworzymy zmienną krokową "i" z tym, że dajemy jej wartość 1 bo zaczynamy liczyć od 1. Po znaczniku początku pętli (słowo REPEAT) tworzymy instrukcje, nowe "s" staje się stare "s" plus "i" (czyli stara suma 0 plus i równe 1), następnie tworzymy nowe "i", które staje się stare "i" plus 1 (bo liczymy po kolei 1,2.. itd.). Na końcu pętli umieszczamy warunek który nasza zmienna "i" musi spełnić by pętla zakończyła działanie. Po zakończeniu pracy pętli program wyświetli naszą sumę "s" (zgodnie z formatem), zatrzyma ekran i zakończy pracę. Program 3: Po wpisaniu modułu ekranowego deklaruję zmienną krokową "i" oraz nasze "s", czyli wynik końcowy. Rozpoczynamy program od wyczyszczenia ekranu. Następnie tworzymy sumę początkową czyli "s" staje się 0, po czym tak samo tworzymy zmienną krokową "i" z tym, że dajemy jej wartość 1 bo zaczynamy liczyć od 1. Pętle zaczynamy od postawienia zmiennej "i" warunku działania pętli (nie zakończenia jej jak w przypadku repeat) czyli "i" musi być co najwyżej równe 100 aby pętla raz jeszcze zadziałała i zakończyła pracę. Otwieramy instrukcje pętli tworząc: nowe "s" staje się stare "s" plus "i" (czyli stara suma 0 plus i równe 1), następnie tworzymy nowe "i", które staje się stare "i" plus 1 (bo liczymy po kolei 1,2.. itd.), po czym stawiamy zakończenie instrukcji pętli end; (ze średnikiem). Po zakończeniu pracy pętli program wyświetli naszą sumę "s" (zgodnie z formatem), zatrzyma ekran i zakończy pracę. 6
Docsity logo


Copyright © 2024 Ladybird Srl - Via Leonardo da Vinci 16, 10126, Torino, Italy - VAT 10816460017 - All rights reserved