Pętla for. Wynik działania programu:

Podobne dokumenty
Informatyka I. Wykład 3. Sterowanie wykonaniem programu. Instrukcje warunkowe Instrukcje pętli. Dr inż. Andrzej Czerepicki

7. Pętle for. Przykłady

Pętle. for, while, do... while, foreach. Materiał pomocniczy do kursu Podstawy programowania Autor: Grzegorz Góralski ggoralski.

Podstawy programowania. Wykład: 4. Instrukcje sterujące, operatory. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

PODSTAWY INFORMATYKI 1 PRACOWNIA NR 6

Język JAVA podstawy. Wykład 3, część 3. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

Jak zawsze wyjdziemy od terminologii. While oznacza dopóki, podczas gdy. Pętla while jest

Pętle i tablice. Spotkanie 3. Pętle: for, while, do while. Tablice. Przykłady

Instrukcje cykliczne (pętle) WHILE...END WHILE

Instrukcje sterujące. wer. 11 z drobnymi modyfikacjami! Wojciech Myszka :53:

Podstawy Programowania C++

Wstęp do programowania

WHILE (wyrażenie) instrukcja;

WHILE (wyrażenie) instrukcja;

Programowanie - instrukcje sterujące

dr inż. Jarosław Forenc

Java Podstawy. Michał Bereta

Pętle. Dodał Administrator niedziela, 14 marzec :27

Programowanie w C++ Wykład 2. Katarzyna Grzelak. 4 marca K.Grzelak (Wykład 1) Programowanie w C++ 1 / 44

KURS C/C++ WYKŁAD 2. char znak; znak = a ; Program 2 #include<stdio.h> void main() { char znak; while( (znak = getchar() )!= t ) putchar(znak); }

Struktura pliku projektu Console Application

do instrukcja while (wyrażenie);

Programowanie proceduralne w języku C++ Pętle, tablice

Tablice. Monika Wrzosek (IM UG) Podstawy Programowania 96 / 119

Wstęp do informatyki- wykład 7

Instrukcje warunkowe i skoku. Spotkanie 2. Wyrażenia i operatory logiczne. Instrukcje warunkowe: if else, switch.

Ą Ę Ł Ą Ż

ź Ć Ż

ć ć ć

Ą ŚĆ Ś Ś Ę ć

ś ś ś ź ć ś ś

Ż ź Ł

Ę Ż ż Ł ź ż ż ż ż

ź Ź Ź ć ć ć ź ć ć ć ć ć Ź

ć Ę ć Ę ź Ę

Ę

Ł

ś ś ś ś ś ś ś ś ś ś ć ś Ż Ż ć ś ś Ż ć

Instrukcje sterujące

ś ść ść ś ść ść ś ś ś ś ść ś ś ś ść ść

for (i=0; i<10; i=i+1) instrukcja; instrukcja zostanie wykonana 10 razy for (inicjalizacja; test; aktualizacja) instrukcja;

Podstawy programowania skrót z wykładów:

Podstawy Informatyki. Kompilacja. Historia. Metalurgia, I rok. Kompilatory C++ Pierwszy program. Dyrektywy preprocesora. Darmowe:

Podstawy Programowania Podstawowa składnia języka C++

Instrukcja wyboru, pętle. 2 wykład. Podstawy programowania - Paskal

Podstawy Informatyki. Metalurgia, I rok. Wykład 6 Krótki kurs C++

Programowanie - wykład 4

Programowanie w C++ Wykład 2. Katarzyna Grzelak. 5 marca K.Grzelak (Wykład 1) Programowanie w C++ 1 / 41

W języku C dostępne są trzy instrukcje, umożliwiające tworzenie pętli: for, while oraz do. for (w1;w2;w3) instrukcja

Podstawowe elementy proceduralne w C++ Program i wyjście. Zmienne i arytmetyka. Wskaźniki i tablice. Testy i pętle. Funkcje.

ALGORYTMY. 1. Podstawowe definicje Schemat blokowy

Opis zagadnieo 1-3. Iteracja, rekurencja i ich realizacja

Wstęp do programowania

Język C, instrukcje sterujące (laboratorium)

Pętla for. Matematyka dla ciekawych świata -19- Scilab. for i=1:10... end. for k=4:-1:1... end. k=3 k=4. k=1. k=2

Konstrukcje warunkowe Pętle

1 Podstawy c++ w pigułce.

Wykresy i interfejsy użytkownika

METODY KOMPUTEROWE W OBLICZENIACH INŻYNIERSKICH

Programowanie komputerowe. Zajęcia 1

Wstęp do programowania

6. Pętle while. Przykłady

1 Wielokrotne powtarzanie tych samych operacji

Język C część 2. Podejmowanie decyzji w programie. if else. switch

Opis: Instrukcja warunkowa Składnia: IF [NOT] warunek [AND [NOT] warunek] [OR [NOT] warunek].

Każde wykonanie bloku instrukcji nazywamy pojedynczym przebiegiem lub iteracją pętli.

Programowanie komputerowe. Zajęcia 3

Wstęp do programowania

ALGORYTMY. 1. Podstawowe definicje Schemat blokowy

Ś Ę Ą Ł Ś Ł Ł Ł Ł Ł Ś Ś Ł Ł Ł Ą Ł Ł Ł Ł Ł Ą Ą Ł

Algorytmy i struktury danych

Ą Ł ć Ę ć Ę ć

ć ć Ł ć Ź ć Ł ź ć Ś ć ć Ż Ł Ż ć ż ć

Ę Ż Ż Ż ś ż Ż

ć Ą Ą Ł Ą

ć

Laboratorium Wstawianie skryptu na stroną: 2. Komentarze: 3. Deklaracja zmiennych

ż ć

Ł ż

ć ż ż ż ź

Ś

ź Ą Ę Ę ć Ł ć ć ć ć ć ć ć

ć ć ć ć ć Ł

Ż ź Ś Ż

ć ż ż ć Ą ż ż Ł ć Ż ż Ż Ż Ż Ż

Programowanie komputerowe. Zajęcia 2

Ą Ó Ś ź Ś

Ć ć ć Ś ć

ć Ś Ś Ść


C e l e m c z ę ś c i d y s k u s y j n e j j e s t u ś w i a d o m i e n i e s o b i e, w o p a r c i u o r o z w a ż a n i a P i s m a Ś w.

Ś Ę ŚĆ Ę ź ź ź Ś Ś Ś ć ź Ś ź Ę Ś Ą ź ź ź Ś Ś Ę ź ź

ś ś ś Ł ś

ć Ę ż Ł ź ż ź Ś Ś ź ć Ć ż Ś ż Ś

ć ć Ą ć Ęć Ó Ą ź ć ć ć ć ź ź Ą ć Ę ć ź ć ć ć ź ć ź ć ć ć Ś Ź ź

ć ć ż ć ź ż ż ź ź ŚĆ Ź ź ć Ź ź ź ź ź Ś Ą Ć Ć ć Ź ź

for (inicjacja_warunkow_poczatkowych; wyrazenie_warunkowe; wyrazenie_zwiekszajace) { blok instrukcji; }

ż ż ź ć ć ć ć ż

ć

ź Ś Ó Ó Ż

Transkrypt:

Pętla for i n t i ; for (i=0; i<5; i++) cout << "C++ zna pętle." << endl; cout << "C++ wie, k i e d y p r z e s t a ć. " << e n d l ; r e t u r n 0 ; Wynik działania programu: C++ zna pę t l e. C++ zna pę t l e. C++ zna pę t l e. C++ zna pę t l e. C++ zna pę t l e. C++ wie, k i e d y p r z e s t a ć. Monika Wrzosek (IM UG) Podstawy Programowania 37 / 119

Pętla for i n t i ; f o r (i = 0; i < 5; i = i + 1) cout << "C++ zna pę t l e. " << e n d l ; cout << "C++ wie, k i e d y p r z e s t a ć. " << e n d l ; r e t u r n 0 ; Inicjalizacja pętli. Pętla zaczyna się od ustawienia liczby całkowitej i na 0: i=0;. Instrukcja ta wykonuje się tylko raz. Warunek pętli. Program sprawdza, czy i jest mniejsze od 5: i<5; Treść pętli. Jeżeli tak, program wykonuje następną instrukcję: cout << "C++ zna pętle." << endl; Krok pętli. Po zakończeniu treści pętli program zwiększa i o 1: i=i+1, co kończy pierwszy cykl pętli. Następnie pętla zaczyna drugi cykl od porównania nowej wartości zmiennej i z 5. Nowa wartość, 1, jest również mniejsza niż 5, więc pokazywany jest kolejny napis i cykl kończy się zwiększeniem i. Kolejne etapy cyklu powtarzają się, aż i osiągnie wartość 5. Wtedy sprawdzenie warunku daje fałsz, więc program przechodzi do instrukcji znajdującej się za pętlą. Monika Wrzosek (IM UG) Podstawy Programowania 38 / 119

Pętla for Składnia for (inicjalizacja; warunek_pętli; krok_pętli) treść Zwykle pętla for obejmuje następujące działania: 1. Ustawienie wartości początkowych (inicjalizacja). 2. Wykonanie testu w celu sprawdzenia, czy pętla ma być dalej wykonywana (warunek pętli). 3. Wykonanie działań objętych pętlą (treść pętli). 4. Aktualizacja wartości używanej (lub używanych) w teście (krok pętli). Monika Wrzosek (IM UG) Podstawy Programowania 39 / 119

Pętla for i n t l i m i t, i ; cout << " Podaj warto ś ć pocz ą tkow ą o d l i c z a n i a : " ; c i n >> l i m i t ; f o r ( i = l i m i t ; i ; i = i 1) cout << " i = " << i << e n d l ; cout << " Gotowe, bo j u ż i = " << i << e n d l ; r e t u r n 0 ; Przykładowy wynik działania programu: Podaj warto ś ć pocz ą tkow ą o d l i c z a n i a : 4 i = 4 i = 3 i = 2 i = 1 Gotowe, bo j u ż i = 0 Monika Wrzosek (IM UG) Podstawy Programowania 40 / 119

Pętla for i n t l i m i t, i ; cout << " Podaj warto ś ć pocz ą tkow ą o d l i c z a n i a : " ; c i n >> l i m i t ; f o r ( i = l i m i t ; i; i = i 1) cout << " i = " << i << e n d l ; cout << " Gotowe, bo j u ż i = " << i << e n d l ; r e t u r n 0 ; - Warunkiem pętli jest wyrażenie: i; - W C++ każda wartość zmiennej i różna od zera będzie prawdą, a wartość zero - fałszem. - Pętla zakończy się zatem w chwili, gdy i przyjmie wartość 0. Monika Wrzosek (IM UG) Podstawy Programowania 41 / 119

Pętla for i n t l i m i t, i ; cout << " Podaj warto ś ć pocz ą tkow ą o d l i c z a n i a : " ; c i n >> l i m i t ; f o r ( i = l i m i t ; i ; i = i 1) cout << " i = " << i << e n d l ; cout << " Gotowe, bo j u ż i = " << i << e n d l ; r e t u r n 0 ; - Pętla for to pętla z uprzednim sprawdzeniem warunku, co oznacza, że warunek pętli jest sprawdzany przed każdym cyklem pętli. Jeśli warunek już na samym początku nie będzie spełniony, pętla nie wykona się ani razu. - Wynik działania programu, gdy użytkownik wprowadzi wartość 0: Podaj warto ś ć pocz ą tkow ą o d l i c z a n i a : 0 Gotowe, bo j u ż i = 0 Monika Wrzosek (IM UG) Podstawy Programowania 42 / 119

Pętla for W pętli for możliwa jest deklaracja zmiennej. Zmienna taka będzie jednak istniała tylko w tej pętli. Zatem kiedy program zakończy wykonywanie pętli, zmienna zostanie usunięta. Poniższy program zakończy się błędem kompilacji. f o r (int i = 0; i < 5 ; i = i + 1) cout << "C++ zna pę t l e. " << e n d l ; cout << i; r e t u r n 0 ; Instrukcję i = i + 1 można zastąpić operatorem inkrementacji i++. Instrukcję i = i - 1 można zastąpić operatorem dekrementacji i--. Monika Wrzosek (IM UG) Podstawy Programowania 43 / 119

Pętla for Program umożliwia obliczenie silni liczby n dla (0 n 7). i n t n, s, i ; cout << " Podaj l i c z b ę n (0 <= n <= 7 ) : " ; c i n >> n ; s = 1 ; f o r ( i = 1 ; i <= n ; i ++) s = s i ; cout << " S i l n i a l i c z b y " << n << " j e s t r ówna : " << s ; r e t u r n 0 ; Wynik działania programu dla n = 5. Podaj l i c z b ę n (0 <= n <= 7 ) : 5 S i l n i a l i c z b y 5 j e s t r ówna 120 Monika Wrzosek (IM UG) Podstawy Programowania 44 / 119

i n t k, s =0; cout << " Podaj l i c z b ę ca ł k o wit ą : " ; c i n >> k ; cout << " Z l i c z a n i e co " << k << e n d l ; f o r ( i n t i = 0 ; i < 1 0 0 ; i = i + k ) cout << i << e n d l ; s = s + i ; cout << "Suma j e s t r ówna : " << s ; Podaj l i c z b ę ca ł kowit ą 30 Z l i c z a n i e co 3 0 : 0 30 60 90 Suma j e s t r ówna 180 Monika Wrzosek (IM UG) Podstawy Programowania 45 / 119

Pętla while Składnia while (warunek_pętli) treść Najpierw program wyznacza wartość wyrażenia warunek_pętli ujętego w nawiasy. Jeśli wynikiem jest true, wykonywane są instrukcje z treści pętli. Po zakończeniu treści pętli, program ponownie wyznacza wartość warunku pętli. Proces trwa tak długo, dopóki warunek nie przyjmie wartości false. Monika Wrzosek (IM UG) Podstawy Programowania 46 / 119

Pętla for i pętla while f o r (int i = 0 ; i < 5 ; i++) cout << "C++ zna pę t l e. " << e n d l ; cout << "C++ wie, k i e d y p r z e s t a ć. " << e n d l ; int i = 0 ; w h i l e (i < 5) cout << "C++ zna pę t l e. " << e n d l ; i++ ; cout << "C++ wie, k i e d y p r z e s t a ć. " << e n d l ; Monika Wrzosek (IM UG) Podstawy Programowania 47 / 119

Pętla for i pętla while Pętla for w postaci: for (inicjalizacja; warunek_pętli; aktualizacja) instrukcje może zostać zapisana następująco: inicjalizacja; while (warunek_pętli) instrukcje aktualizacja Monika Wrzosek (IM UG) Podstawy Programowania 48 / 119

Pętla for i pętla while Podobnie pętla while w postaci: while (warunek_pętli) treść może zostać zapisana następująco: for ( ; warunek_pętli; ) treść Pętla for wymaga trzech wyrażeń, ale mogą być to wyrażenia puste, obowiązkowe są tylko średniki. Brak warunku pętli for jest traktowany jako wyrażenie stałe true, więc następująca pętla będzie pętlą nieskończoną: for ( ; ; ) treść Pętle while są używane zwykle wtedy, kiedy trudno z góry przewidzieć, ile razy pętla powinna się wykonać. Monika Wrzosek (IM UG) Podstawy Programowania 49 / 119

Podaj l i c z b ę : 5 Podaj l i c z b ę : 2 Podaj l i c z b ę : 6 Podaj l i c z b ę : 0 Suma j e s t r ówna : 13 Monika Wrzosek (IM UG) Podstawy Programowania 50 / 119 Program sumuje liczby całkowite do momentu wprowadzenia 0. i n t x, s ; cout << " Podaj l i c z b ę : " ; c i n >> x ; s = x ; w h i l e ( x!= 0) cout << " Podaj l i c z b ę : " ; c i n >> x ; s = s + x ; cout << "Suma j e s t r ówna : " << s ;

Pętla do while Pętla do while istotnie różni się od pętli for i while, gdyż warunek jest w niej sprawdzany po wykonaniu treści. Wobec tego pętla do while wykona się zawsze co najmniej raz, niezależnie od spełnienia (bądź niespełnienia) warunku. Składnia do treść while (warunek_pętli) Monika Wrzosek (IM UG) Podstawy Programowania 51 / 119

i n t x, s =0; cout << " Podaj l i c z b ę : " ; c i n >> x ; while ( x!= 0) cout << " Podaj l i c z b ę : " ; c i n >> x ; s = s + x ; cout << "Suma j e s t r ówna : " << s ; i n t x, s =0; do cout << " Podaj l i c z b ę : " ; c i n >> x ; s = s + x ; while ( x!= 0 ) ; cout << "Suma j e s t r ówna : " << s ; Monika Wrzosek (IM UG) Podstawy Programowania 52 / 119

Pętla do while Program wykonuje sumowanie liczb całkowitych. Sumowanie zostaje zakończone, gdy suma składników przekroczy wartość 100. i n t x, s, l i c z n i k ; s = 0 ; l i c z n i k = 0 ; do cout << " Podaj l i c z b ę : " ; c i n >> x ; s = s + x ; l i c z n i k ++; w h i l e ( s <= 1 0 0 ) ; cout << "Suma j e s t r ówna : " << s << e n d l ; cout << " L i c z b a sk ł a d n i k ów: " << l i c z n i k ; Monika Wrzosek (IM UG) Podstawy Programowania 53 / 119

i n t x, s =0, l i c z n i k =0; do cout << " Podaj l i c z b ę : " ; c i n >> x ; s = s + x ; l i c z n i k ++; w h i l e ( s <= 1 0 0 ) ; cout << "Suma j e s t r ówna : " << s << e n d l ; cout << " L i c z b a sk ł a d n i k ów: " << l i c z n i k ; Podaj l i c z b ę : 30 Podaj l i c z b ę : 25 Podaj l i c z b ę : 40 Podaj l i c z b ę : 8 Suma j e s t r ówna : 103 L i c z b a sk ł a d n i k ów: 4 Monika Wrzosek (IM UG) Podstawy Programowania 54 / 119

Instrukcje break i continue Instrukcje break i continue umożliwiają programowi pomijanie części kodu. Instrukcja break Oprócz instrukcji switch może być użyta wewnątrz dowolnej pętli. Powoduje natychmiastowe przerwanie wykonywania pętli. Jeśli mamy do czynienia z pętlami zagnieżdżonymi, instrukcja break powoduje przerwanie tylko tej pętli, w której została bezpośrednio użyta. Jest to więc przerwanie z wyjściem o jeden poziom wyżej. Instrukcja continue Znajduje zastosowanie w pętlach. Powoduje, że program pomija resztę treści pętli i zaczyna nowy cykl pętli. W odróżnieniu od instrukcji break sama pętla nie zostaje przerwana. Przerwany jest tylko bieżący obieg pętli. Monika Wrzosek (IM UG) Podstawy Programowania 55 / 119

Instrukcja break i n t i = 7 ; w h i l e ( 1 ) cout << "Pę t l a, i = " << i << e n d l ; i = i 1 ; i f ( i < 5) cout << " P r z e r w a n i e pę t l i. " ; break ; Pę t l a, i = 7 Pę t l a, i = 6 Pę t l a, i = 5 P r z e r w a n i e pę t l i. Monika Wrzosek (IM UG) Podstawy Programowania 56 / 119

Instrukcja continue i n t k ; f o r ( k = 0 ; k < 1 2 ; k = k+1) cout << "A" ; i f ( k > 1) continue ; cout << "b" << e n d l ; Ab Ab AAAAAAAAAA Monika Wrzosek (IM UG) Podstawy Programowania 57 / 119

Zagnieżdżenie pętli f o r ( i n t i = 1 ; i <= 7 ; i ++) f o r ( i n t j = 1 ; j <= i ; j ++) cout << " " ; cout << e n d l ; Monika Wrzosek (IM UG) Podstawy Programowania 58 / 119