PODSTAWY INFORMATYKI 1 PRACOWNIA NR 6

Podobne dokumenty
dr inż. Jarosław Forenc

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

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

Politechnika Białostocka

Spis treści JĘZYK C - INSTRUKCJE ITERACYJNE FOR, WHILE I DO WHILE, ZAGNIEŻDŻANIE PĘTLI FOR, INSTRUKCJE CONTINUE, BREAK, I GOTO.

while (test) instrukcja; int i=0; while (i<10) i++; dopóki test prawdziwy wykonuj instrukcję Wykonano: 35% / \ fałsz test prawda instrukcja

BHP JĘZYK C - INSTRUKCJE ITERACYJNE

Język C zajęcia nr 5

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

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

Pętla for. Wynik działania programu:

while (test) instrukcja; int i=0; while (i<10) i++; dopóki test prawdziwy wykonuj instrukcję Wykonano: 35% / \ fałsz test prawda instrukcja

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

Instrukcje sterujące. Programowanie Proceduralne 1

dr inż. Jarosław Forenc

Podstawy programowania. Wykład Pętle. Tablice. Krzysztof Banaś Podstawy programowania 1

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); }

Wprowadzenie do programowania w języku C

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

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

Wstęp do programowania

Wykład 3. Instrukcje powtarzające

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

Część XV C++ Ćwiczenie 1

Kontrola przebiegu programu

Wstęp do programowania

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

Pętle instrukcje powtórzeo

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

Wstęp do programowania

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

Instrukcje sterujące

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

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

JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM. Laboratorium 3. Instrukcje wyboru

Języki C i C++ Wykład: 2. Wstęp Instrukcje sterujące. dr Artur Bartoszewski - Języki C i C++, sem. 1I- WYKŁAD

if (warunek) instrukcja1; if (warunek) instrukcja1; else instrukcja2; a > b - a większe od b if (warunek) instrukcja1; a <= b - a mniejsze lub równe b

do instrukcja while (wyrażenie);

Laboratorium 2: Pętle i instrukcje warunkowe. mgr inż. Leszek Ciopiński dr inż. Arkadiusz Chrobot dr inż. Grzegorz Łukawski

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

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

Konstrukcje warunkowe Pętle

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

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

METODY KOMPUTEROWE W OBLICZENIACH INŻYNIERSKICH

Programowanie I C / C++ laboratorium 02 Składnia pętli, typy zmiennych, operatory

Dr inż. Grażyna KRUPIŃSKA. D-10 pokój 227 WYKŁAD 8 WSTĘP DO INFORMATYKI

Podstawy Programowania C++

7. Pętle for. Przykłady

Wstęp do programowania

Programowanie - wykład 4

WYKŁAD 8. Funkcje i algorytmy rekurencyjne Proste przykłady. Programy: c3_1.c..., c3_6.c. Tomasz Zieliński

1 Podstawy c++ w pigułce.

znajdowały się różne instrukcje) to tak naprawdę definicja funkcji main.

Wstęp do Programowania, laboratorium 02

Wykład 15. Literatura. Kompilatory. Elementarne różnice. Preprocesor. Słowa kluczowe

METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02

Wstęp do informatyki- wykład 7

Podstawy programowania. Wykład: 5. Instrukcje sterujące c.d. Stałe, Typy zmiennych c.d. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

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

Stuck in the loop. Sterowanie. Marcin Makowski. 29 października Zak lad Chemii Teoretycznej UJ

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

Termin Egzaminu (Język C): !!! >> CZWARTEK, 7 LUTEGO << GODZ

Iteracje. Algorytm z iteracją to taki, w którym trzeba wielokrotnie powtarzać instrukcję, aby warunek został spełniony.

Podstawowe elementy programowania strukturalnego. Wbudowane typy danych w C++

Programowanie w C/C++ Instrukcje - konstrukcje powtórka. LABORKA Piotr Ciskowski

Warunek wielokrotnego wyboru switch... case

Wstęp do informatyki- wykład 9 Funkcje

dr inż. Jarosław Forenc

Podstawy programowania Laboratorium. Ćwiczenie 2 Programowanie strukturalne podstawowe rodzaje instrukcji

TABLICE W JĘZYKU C/C++ typ_elementu nazwa_tablicy [wymiar_1][wymiar_2]... [wymiar_n] ;

WHILE (wyrażenie) instrukcja;

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

main( ) main( void ) main( int argc, char argv[ ] ) int MAX ( int liczba_1, liczba_2, liczba_3 ) źle!

Wstęp do programowania

Struktura pliku projektu Console Application

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

Programowanie komputerowe. Zajęcia 2

W przeciwnym wypadku wykonaj instrukcję z bloku drugiego. Ćwiczenie 1 utworzyć program dzielący przez siebie dwie liczby

tablica: dane_liczbowe

Wstęp do informatyki- wykład 7

JAVAScript w dokumentach HTML (2)

Java Podstawy. Michał Bereta

Tablice wielowymiarowe. Przykład tablica 2-wymiarowa. Przykład. Przykład 3-wymiarowy. Tak naprawdę nie istnieją w C! Rozważmy tablicę o rozmiarze 3x2

. Podstawy Programowania 1. Instrukcje sterujące. Arkadiusz Chrobot. 21 października 2015

Podstawy informatyki. Informatyka stosowana - studia niestacjonarne. Grzegorz Smyk

5 Przygotował: mgr inż. Maciej Lasota

Podstawy programowania w języku C

Programowanie strukturalne i obiektowe

Programowanie Obiektowe i C++

WHILE (wyrażenie) instrukcja;

Język C zajęcia nr 7. Uwagi dotyczące stylu programowania

int tab[5]; tab[1]; ciągły obszar pamięci, w którym umieszczone są elementy tego samego typu macierz [ ] - dwuargumentowy operator indeksowania

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

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

Autor: mgr inż. Sławomir Samolej. Zagadnienie 1. (instrukcja wyboru: switch)

Języki programowania - podstawy

Skrypty i funkcje Zapisywane są w m-plikach Wywoływane są przez nazwę m-pliku, w którym są zapisane (bez rozszerzenia) M-pliki mogą zawierać

do instrukcja while(wyrażenie);

Wykład 1_2 Algorytmy sortowania tablic Sortowanie bąbelkowe

Transkrypt:

PODSTAWY INFORMATYKI 1 PRACOWNIA NR 6 TEMAT: Programowanie w języku C/C++: instrukcje iteracyjne for, while, do while Ogólna postać instrukcji for for (wyr1; wyr2; wyr3) Instrukcja for twory pętlę działającą w następujący sposób: 1. Wyliczane jest wyr1 (jeśli występuje). 2. Wyliczane jest wyr2. Jeśli jego wartością jest zero, to instrukcja for kończy działanie, w przeciwnym razie działanie instrukcji for jest kontynuowane (krok 3). 3. Wykonywana jest instrukcja. 4. Wyliczana jest wartość wyr3. Działanie jest wznawiane od kroku 2. TAK START oblicz wyr1 oblicz wyr2 wyr2 == 0 NIE wykonaj instrukcję Każde z trzech wyrażeń w nawiasach jest opcjonalne (może ich nie być), ale nawiasy i średniki są obowiązkowe. Jako instrukcja może wystąpić instrukcja złożona (blok). Działanie instrukcji for może zostać przerwane instrukcjami: break, goto lub return (zakończenie całej funkcji). oblicz wyr3 KONIEC Po nawiasie w instrukcji for nie stawia się średnika. Konstrukcja ze średnikiem na końcu: for (i=0; i<10; i++); jest poprawna (kompilator nie zasygnalizuje błędu), ale oznacza wielokrotne wykonanie instrukcji pustej (w podanym przykładzie - 10 razy). Natomiast instrukcja zostanie wykonana tylko raz. Jeśli w instrukcji for nie jest podane wyr2, to przyjmuje się, że jest ono zawsze prawdziwe. Zatem w prosty sposób można skonstruować pętlę nieskończoną: for ( ; ; ) - 1 -

Przykład 1 #include <stdio.h> int main() int i,x; float suma = 0.0; for (i=0; i<10; i++) printf("podaj liczbe nr %d: \n",i+1); scanf("%d",&x); suma = suma + x; printf("srednia: %.3f\n",suma/10); return(0); program przedstawia jedno z częstszych zastosowań instrukcji for czyli organizację pętli iteracyjnej, wyr1 inicjalizuje licznik (i=0), wyr2 kontroluje granice licznika (i<10), wyr3 zmienia bieżącą wartość licznika (i++). Zagnieżdżanie pętli for Jako instrukcja w pętli for może występować kolejna pętla for. Przykład 2 (tabliczka mnożenia) #include <stdio.h> int main() int i,j; for (i=1; i<11; i++) for (j=1;j<11;j++) printf("%2d ",i*j); printf("\n"); return 0; Wynik działania programu: 1 2 3 4 5 6 7 8 9 10 2 4 6 8 10 12 14 16 18 20 3 6 9 12 15 18 21 24 27 30 4 8 12 16 20 24 28 32 36 40 5 10 15 20 25 30 35 40 45 50 6 12 18 24 30 36 42 48 54 60 7 14 21 28 35 42 49 56 63 70 8 16 24 32 40 48 56 64 72 80 9 18 27 36 45 54 63 72 81 90 10 20 30 40 50 60 70 80 90 100-2 -

Instrukcja break Instrukcja break umożliwia wcześniejsze zakończenie pętli for. Powoduje ona natychmiastowe opuszczenie pętli i przejście do instrukcji znajdującej się bezpośrednio po pętli for. W przypadku pętli zagnieżdżonych przerywane jest działanie tylko najbardziej wewnętrznej z nich. Instrukcja skoku: goto Instrukcja ta w postaci: goto label; przekazuje sterowanie do miejsca w programie oznaczonego etykietą o nazwie label. Etykietą można oznaczać tylko całe instrukcje. Skok może odbywać się tylko w ramach tej samej funkcji. Przykład: goto xxx; xxx: printf( Tekst\n ); Wystąpienie w powyższym fragmencie programu instrukcji skoku powoduje przeniesienie sterowania do instrukcji rozpoczynającej się od etykiety xxx. Instrukcja kontynuacji: continue Instrukcja kontynuacji używana jest wewnątrz pętli for i ma postać: continue; Instrukcja ta powoduje bezwarunkowe przejście na początek pętli (do następnej iteracji) z pominięciem instrukcji znajdujących się poniżej instrukcji continue. Dokładniej mówiąc powoduje przejście do wyliczania wartości wyr3. - 3 -

Instrukcja while Instrukcja while służy do tworzenia pętli w języku C. Jej składnia jest następująca: while (wyr) Zasada działania instrukcji jest następująca: 1. Obliczana jest wartość wyr. 2. Jeśli wartość wyr jest różna od zera (czyli wyrażenie jest prawdziwe) to wykonywana jest instrukcja, a następnie powracamy do pkt. 1 (obliczanie wartości wyr). Jeśli wartość wyr jest równa zeru (nie jest ono prawdziwe), to pętla while kończy działanie. START oblicz wyr wyr 0 Działanie pętli while można opisać także w następujący sposób: dopóki wyrażenie w nawiasach jest prawdziwe wykonuj instrukcję. TAK Wyrażenie (wyr) po słowie kluczowym while musi być wykonaj instrukcję koniecznie umieszczone w nawiasach zwykłych. Jako instrukcja może wystąpić instrukcja złożona (blok) czyli kilka instrukcji ograniczonych nawiasami klamrowymi: i. KONIEC Działanie pętli while może zostać przerwane instrukcjami: break (opuszczenie pętli), goto (skok do etykiety) lub return (zakończenie całej funkcji). W pętli while można zastosować instrukcję continue. Spowoduje ona przerwanie bieżącego kroku pętli i przejście do sprawdzenia wartości wyr. Poprawne zakończenie pętli while wymaga, aby w jej wnętrzu następowały zmiany (np. modyfikacje wartości zmiennych) wpływające na wartość wyrażenia w nawiasach (wyr). Po nawiasie w instrukcji while nie stawia się średnika. Konstrukcja ze średnikiem na końcu: while (wyr); jest poprawna składniowo (kompilator nie zasygnalizuje błędu), ale oznacza wykonanie instrukcji pustej. Natomiast instrukcja zostanie wykonana tylko raz. NIE - 4 -

Przykład 3 (program sprawdzający ile kolejnych liczb całkowitych należy dodać do siebie, aby otrzymać największą wartość nie przekraczającą MAX) #include <stdio.h> #define MAX 100 int main() int suma, n; suma = n = 0; while (suma<max) n++; suma = suma + n; suma = suma - n; n--; printf("ilosc liczb: %d\nsuma liczb: return 0; %d\n",n,suma); Wykorzystując instrukcję while można stworzyć pętlę nieskończoną. W takim przypadku jej opuszczenie musi nastąpić poprzez użycie instrukcji break, goto lub return, np. while (1) Opuszczenie pętli można zrealizować wykorzystując tzw. zmienną kontrolną, np. int stop = 0; while (!stop) if () stop = 1; Pętlę while można wykorzystać do zastąpienia pętli for: for (wyr1; wyr2; wyr3) jest równoważne wyr1; while (wyr2) wyr3; - 5 -

Instrukcja do while Zasada działania pętli do while jest taka sama jak instrukcji while, ale z tą różnicą, że warunek (wartość wyr) sprawdzany jest po wykonaniu instrukcji. Składnia instrukcji do while jest następująca: do while (wyr); Zasada działania instrukcji jest następująca: 1. Wykonywana jest instrukcja. 2. Obliczana jest wartość wyr. Jeśli wartość wyr jest różna od zera (czyli wyrażenie jest prawdziwe) to powracamy do pkt. 1 (wykonanie instrukcji). Jeśli wartość wyr jest równa zeru (czyli wyrażenie nie jest prawdziwe), to pętla do while kończy działanie. START wykonaj instrukcję oblicz wyr Pozostałe uwagi są takie same jak dla pętli while. W pętli while instrukcja może nie być ani razu wykonana, natomiast w pętli do while jest wykonywana przynajmniej jeden raz. NIE wyr 0 TAK KONIEC - 6 -