Podstawy informatyki 4 wykad 15 godz wiczenia 15

  • Slides: 37
Download presentation
Podstawy informatyki (4) wykład : 15 godz. ćwiczenia : 15 godz. Prowadzący: dr inż.

Podstawy informatyki (4) wykład : 15 godz. ćwiczenia : 15 godz. Prowadzący: dr inż. Jacek Piątkowski 1

C++ Wyrażenia i operatory v Wyrażenie składa się z jednej lub wielu operacji. v

C++ Wyrażenia i operatory v Wyrażenie składa się z jednej lub wielu operacji. v Operacje reprezentuje się za pomocą operatorów. Obiekty, na których wykonuje się operacje są argumentami operacji. v Operatory - jednoargumentowe – działają na jednym argumencie, - dwuargumentowe – działają na dwóch argumentach. Przykład : *wsk jednoargumentowy operator wyłuskania przekazuje wartość pamiętaną pod adresem przechowywanym przez obiekt wsk ob 1 * ob 2 dwuargumentowy operator mnożenia określa iloczyn dwóch argumentów - ob 1 oraz ob 2. 2

C++ Wyrażenia i operatory v Obliczenie wyrażenia polega na wykonaniu jednej lub wielu operacji

C++ Wyrażenia i operatory v Obliczenie wyrażenia polega na wykonaniu jednej lub wielu operacji i uzyskaniu wyniku tych operacji. v Wyrażenie złożone jest wówczas, gdy występują w nim co najmniej dwa operatory. Kolejność wykonywanych operacji określają reguły pierwszeństwa. Przykład: 2. 71, "START" dzielna Wartością wyrażenia 2. 71 jest liczba 2. 71 typu double. Wartością napisu START jest adres pierwszego znaku napisu (typu char* ). Wartością zmiennej dzielna jest jej p-wartość. 3

C++ Wyrażenia i operatory v Operator przypisania = powoduje zapamiętanie nowej wartości w pamięci

C++ Wyrażenia i operatory v Operator przypisania = powoduje zapamiętanie nowej wartości w pamięci przyporządkowanej argumentowi po lewej stronie operatora. ? Argument występujący po lewej musi być l-wartością ? Typ danych wyniku operacji przypisania jest taki sam, jak typ argumentu po lewej stronie operatora przypisania. int i; int* wi; wi = &i; ? Operatory przypisania można składać pod warunkiem, że wszystkie argumenty tych operatorów są tego samego typu. int i, j; i = j = 0; 4

C++ Wyrażenia i operatory v Operatory arytmetyczne operator operacja Zastosowanie * mnożenie wyrażenie *

C++ Wyrażenia i operatory v Operatory arytmetyczne operator operacja Zastosowanie * mnożenie wyrażenie * wyrażenie / dzielenie wyrażenie / wyrażenie % dzielenie modulo ( reszta z dzielenia ) wyrażenie % wyrażenie + dodawanie wyrażenie + wyrażenie - odejmowanie wyrażenie - wyrażenie ? Wynik dzielenia liczb całkowitych jest całkowity. ? Operator % może być stosowany wyłącznie do liczb całkowitych. 5

C++. Wyrażenia i operatory. Operatory arytmetyczne Przykład: #include <iostream> using namespace std; int main()

C++. Wyrażenia i operatory. Operatory arytmetyczne Przykład: #include <iostream> using namespace std; int main() { int i 1=3, i 2=5; double d 1=2. 5, d 2=7. 5; cout << i 1/i 2 << "t" << cout << i 1%i 2 << "t" << cout << d 2/d 1 << "t" << cout << d 2/i 1 << "t" << // d 2%d 1 ; błąd // d 2%i 1 ; błąd // i 2%d 1 ; błąd return 0; } Wynik: i 2/i 1 i 2%i 1 d 1/d 2 i 2/d 1 << << endl; 0 1 3 2 3 0. 333333 2. 5 2 6

C++. Wyrażenia i operatory. Przykład. Najprostsza postać programu w C++ #include <iostream> using namespace

C++. Wyrażenia i operatory. Przykład. Najprostsza postać programu w C++ #include <iostream> using namespace std; int main() { cout << "ABC" ; return 0; } • Każdy program napisany w C++ musi posiadać funkcję main • Pomiędzy nawiasami { } jest umieszczana treść (ciało) tej, jak i każdej innej funkcji. • Wartość zwracana przez instrukcję return jest wartością, która zostaje przekazana do systemu operacyjnego po zakończeniu działania programu. #include <iostream> - dyrektywa preprocesora powodująca wstawienie do naszego programu zawartości pliku nagłówkowego iostream using namespace std; - dyrektywa używania przestrzeni nazw std , umożliwia odwoływanie się w programie do wszystkich składowych przestrzeni nazw bez posługiwania się nazwą kwalifikowaną np. std: : cout << "ABC" ; - instrukcja powodująca wyprowadzenie do standardowego urządzenia wyjściowego (w tym wypadku na ekran monitora) napisu ABC 7

C++. Wyrażenia i operatory. Operatory arytmetyczne v Arytmetyczne sytuacje wyjątkowe – sytuacje, w których

C++. Wyrażenia i operatory. Operatory arytmetyczne v Arytmetyczne sytuacje wyjątkowe – sytuacje, w których wartość wyrażenia jest niepoprawna lub niezdefiniowana (np. dzielenie przez zero, problem przepełnienia). #include <iostream> using namespace std; int main(){ unsigned char uc 1=225, uc 2=32; int i 1=1, i 2=8; short s 1=16384; double d 1=512; uc 1=uc 1+uc 2; // przepełnienie uc 2=uc 2*i 2; // przepełnienie s 1=s 1+s 1; // przepełnienie cout << i 1*uc 1 << endl; cout << i 1*uc 2 << endl; cout << s 1 << endl; cout << d 1/uc 2 << endl; return 0; } Wynik: 1 0 -32768 inf 8

C++ Wyrażenia i operatory v Operatory porównania relacji oraz logiczne. operator == operacja równe

C++ Wyrażenia i operatory v Operatory porównania relacji oraz logiczne. operator == operacja równe zastosowanie wyrażenie == wyrażenie != nierówne wyrażenie != wyrażenie < mniejsze niż wyrażenie <= mniejsze lub równe wyrażenie <= wyrażenie > większe niż wyrażenie >= większe lub równe wyrażenie >= wyrażenie ! negacja logiczna !wyrażenie && iloczyn logiczny wyrażenie && wyrażenie || suma logiczna wyrażenie || wyrażenie § Operatory porównania i relacji służą do obliczania wartości „prawda” lub „fałsz” ( true - 1, false - 0 ). 9

C++. Wyrażenia i operatory. Operatory porównania relacji oraz logiczne § Operator negacji logicznej !

C++. Wyrażenia i operatory. Operatory porównania relacji oraz logiczne § Operator negacji logicznej ! daje w wyniku wartość true , jeżeli argument ma wartość 0; w przypadku odwrotnym wynikiem jest false. § Wynikiem operatora iloczynu logicznego && jest prawda wtedy i tylko wtedy, gdy oba argumenty są prawdziwe. § Wynikiem operatora sumy logicznej || jest prawda wówczas, gdy którykolwiek z argumentów jest prawdziwy. § Wartości argumentów oblicza się w kolejności od lewej do prawej strony wyrażenia. while( wsk!=0 && *wsk < wart_graniczna && !koniec ) { //. . . } 10

C++ Wyrażenia i operatory v Operatory inkrementacji ++ i dekrementacji - pozwalają na zwarty

C++ Wyrażenia i operatory v Operatory inkrementacji ++ i dekrementacji - pozwalają na zwarty zapis dodawania i odejmowania liczby 1, ( i++; tj. i=i+1; ) posiadają postać przyrostkową i przedrostkową. #include <iostream> using namespace std; int main() { int i = 0; int j = 0; cout << ++i cout << j++ cout << --i cout << j-return 0; } Wynik: << << endl; // inkrementacja przedrostkowa // inkrementacja przyrostkowa // dekrementacja przedrostkowa // dekrementacja przyrostkowa 1 0 0 1 11

C++ Wyrażenia i operatory v Operatory bitowe - działają na argumentach tak jak na

C++ Wyrażenia i operatory v Operatory bitowe - działają na argumentach tak jak na uporządkowanych zbiorach bitów, - mogą być stosowane wyłącznie wobec argumentów typu całkowitego. operator ~ operacja zastosowanie negacja bitowa << przesuwanie w lewo ~wyrażenie << wyrażenie >> przesuwanie w prawo wyrażenie >> wyrażenie & koniunkcja bitowa wyrażenie & wyrażenie | alternatywa bitowa wyrażenie | wyrażenie ^ różnica symetryczna wyrażenie ^ wyrażenie ? W przypadku operatorów bitowych zaleca się stosowanie argumentów bez wyróżnionego bitu znaku. 12

C++. Wyrażenia i operatory. Operatory bitowe § Operator negacji bitowej ~ realizuje operację NOT

C++. Wyrażenia i operatory. Operatory bitowe § Operator negacji bitowej ~ realizuje operację NOT unsigned char uc=151; 1 0 0 1 1 1 uc = ~uc; 0 1 1 0 0 0 § Operatory przesuwania << , >> powodują przesunięcie zawartości bitów lewego argumentu operatora o określoną liczbę pozycji ( w lewo lub prawo ). unsigned char uc=3; 0 0 0 1 1 uc << 1; 0 0 0 1 1 0 uc << 2; 0 0 0 1 1 0 0 0 uc >> 3; 0 0 0 1 1 13

C++. Wyrażenia i operatory. Operatory bitowe § Operatory: koniunkcji bitowej & , alternatywy bitowej

C++. Wyrażenia i operatory. Operatory bitowe § Operatory: koniunkcji bitowej & , alternatywy bitowej | oraz różnicy syme- trycznej ^ realizują dla odpowiadających sobie pozycją bitów obydwu argumentów operacje AND, OR oraz XOR. unsigned char uc 1=101; 0 1 1 0 0 1 unsigned char uc 2=170; 1 0 1 0 wynik = uc 1 & uc 2; 0 0 1 0 0 0 wynik = uc 1 | uc 2; 1 1 1 0 1 1 wynik = uc 1 ^ uc 2; 1 1 0 0 1 1 unsigned char wynik; 14

C++ Wyrażenia i operatory v Złożone operatory przypisania : +=, -=, *=, /=, %=,

C++ Wyrażenia i operatory v Złożone operatory przypisania : +=, -=, *=, /=, %=, <<=, >>=, &=, ^=, |=. pozwalają na bardziej zwarty zapis wyrażenia. x = x + y; x += y; x = x * y; x *= y; . . . 15

C++ Wyrażenia i operatory v Operator arytmetyczny if. wyrażenie 1 ? wyrażenie 2 :

C++ Wyrażenia i operatory v Operator arytmetyczny if. wyrażenie 1 ? wyrażenie 2 : wyrażenie 3; Jeżeli wyrażenie 1 daje wartość true to wyznaczana jest wartość wyrażenia 2 , która staje się zarazem wartością zwracaną przez cały operator; w przeciwnym przypadku wyznaczana jest wartość wyrażenia 3 i to ona staje się wartością zwracaną przez operator. 16

Operator arytmetyczny if C++. Wyrażenia i operatory. #include <iostream> using namespace std; int main(){

Operator arytmetyczny if C++. Wyrażenia i operatory. #include <iostream> using namespace std; int main(){ int i=5, j=10, k=15; cout << "liczbą większą spośród " << i << " oraz " << j << " jest " << ( i > j ? i : j ) << endl; cout << "liczbą największą spośród " << i << ", " << j << " oraz " << j << " jest " << ( i > j ? ( i > k ? i : k ) : ( j > k ? j : k ) ) << endl; return 0; } 17

C++ Wyrażenia i operatory v Operator przecinkowy - jest używany jako operator oddzielający od

C++ Wyrażenia i operatory v Operator przecinkowy - jest używany jako operator oddzielający od siebie wyrażenia w ciągu wyrażeń; - wynikiem wyrażenia przecinkowego ( obliczanego kolejno od strony lewej do prawej ) jest wartość ostatniego z wyrażeń. #include <iostream> using namespace std; int main() { int a 1 = 0, a 2 = 0; int b = 1, c = 2, d = 3, e = 4; a 1 = (++b, ++c, ++d, ++e); a 2 = ++b, ++c, ++d, ++e ; cout << "a 1 = " << a 1 << endl; cout << "a 2 = " << a 2 << endl; return 0 } Wynik: a 1 = 5 a 2 = 3 18

C++ Wyrażenia i operatory v Operator sizeof - przekazuje liczbę bajtów będącą rozmiarem specyfikatora

C++ Wyrażenia i operatory v Operator sizeof - przekazuje liczbę bajtów będącą rozmiarem specyfikatora typu lub wyrażenia; - może występować w jednej z dwóch postaci: sizeof (specyfikator_typu); sizeof wyrażenie; #include <iostream> using namespace std; int main() { cout << "short : " cout << "int : " cout << "double: " cout << " 'z' : " cout << " 3. 14 : " cout << ""ALA" : return 0; } Wynik: << sizeof(short) << endl; << sizeof(int) << endl; << sizeof(double) << endl; << sizeof 'z' << endl; << sizeof 3. 14 << endl; " << sizeof "ALA" << endl; short : 2 int : 4 double : 8 ‘z’ : 1 3. 14 : 8 ”ALA” : 4 19

C++ Wyrażenia i operatory v Pierwszeństwo i łączność operatorów Poziom 14 L 13 L

C++ Wyrażenia i operatory v Pierwszeństwo i łączność operatorów Poziom 14 L 13 L 12 L Operator ->* , . * * , / , % + , - 11 L << , >> 10 L 9 L 8 L 7 L 6 L 5 L 4 L 3 L < , <= , >= == , != & ^ | && || ? : = , *= , /= , %= , += , -= <<= , >>= , &= , |= , ^= , 2 P 1 L Operacja Wskaźnikowe selektory składowych Operacje mnożenia i dzielenia Dodawanie odejmowanie Przesuwanie bitów Operacje relacji Równość , nierówność Koniunkcja bitowa Różnica symetryczna Alternatywa bitowa Iloczyn logiczny Suma logiczna If arytmetyczne Operacje przypisania Przecinek 2 P – poziom 2 , łączność od prawej do lewej ( x = a=b=c=0; ) 13 L – poziom 13, łączność lewej do prawej ( x = a*b*c*d; ) 20

C++ Wyrażenia i operatory v Pierwszeństwo i łączność operatorów Poziom 17 P 17 L

C++ Wyrażenia i operatory v Pierwszeństwo i łączność operatorów Poziom 17 P 17 L 16 L 15 P Operator : : -> , . [] () () sizeof ++ , -~ ! + , * , & () new delete Operacja Zasięg globalny (jednoargumentowy) Zasięg klasy (dwuargumentowy) Selektory składowych Indeksowanie tablicy Wywołanie funkcji Konstrukcja typu Rozmiar w bajtach Inkrementacja , dekrementacja Negacja bitowa Negacja logiczna Plus, minus (jednoargumentowe) Wyłuskanie, pobranie adresu Przekształcenie typu (rzutowanie) Zarządzanie pamięcią przydzielaną dynamicznie 21

C++. Wyrażenia i operatory. Pierwszeństwo i łączność operatorów ? Im wyższy poziom tym większe

C++. Wyrażenia i operatory. Pierwszeństwo i łączność operatorów ? Im wyższy poziom tym większe pierwszeństwo danego operatora. ? Operatory na tym samym poziomie pierwszeństwa wykonywane są od lewej do prawej strony wyrażenia. ? Reguły pierwszeństwa można pominąć stosując nawiasy wyodrębniające podwyrażenia. ? Obliczanie podwyrażeń zaczyna się od tych, które zawarte są w naj bardziej wewnętrznych parach nawiasów. Każde podwyrażenie zastępowane jest jego wynikiem, po czym wykonywane są dalsze obliczenia. //. . . cout << 4 * 5 + 7 * 2 << endl; cout << 4 * ( 5 + 7 * 2 ) << endl; cout << 4 * ( ( 5 + 7 ) * 2 ) << endl; 34 76 96 22

C++ Instrukcje v Instrukcje – są najmniejszymi wykonywalnymi jednostkami programu w języku C++ ;

C++ Instrukcje v Instrukcje – są najmniejszymi wykonywalnymi jednostkami programu w języku C++ ; każda instrukcja jest zakończona średnikiem. int i ; i = 10 ; ; float f ; ; // instrukcja deklaracji – jedyna, która może być // określona na zewnątrz funkcji // instrukcja wyrażenia // instrukcja pusta // dwie instrukcje v Instrukcja złożona – ciąg instrukcji ujęty w parę nawiasów klamrowych. { b += i; x = x % b; ? jest traktowana jak instrukcja pojedyncza. } ? Instrukcja złożona zawierająca instrukcje deklaracji jest blokiem. 23

C++ Instrukcje v Instrukcje iteracyjne ( while , do-while, for ) – pozwalają na

C++ Instrukcje v Instrukcje iteracyjne ( while , do-while, for ) – pozwalają na cykliczne wykonywanie pewnej części kodu programu (sterują pętlami). Pętla kończy się z chwilą gdy warunek sterowania pętlą okaże się fałszywy ( wyrażenie kontrolne zwróci wartość false ). v Instrukcje warunkowe ( if , swith ) – pozwalają na sterowanie wykonywaniem programu, poprzez sprawdzanie określonego warunku. Gdy warunek ten jest spełniony wykonywana jest pewna czynność lub ciąg czynności. W przeciwnym wypadku czynności te są omijane. 24

C++ Instrukcje v Instrukcja iteracyjna while ( wyrażenie ) instrukcja ; – dopóki wyrażenie

C++ Instrukcje v Instrukcja iteracyjna while ( wyrażenie ) instrukcja ; – dopóki wyrażenie warunku sterowania pętlą ma wartość różną od zera wykonywana jest odpowiednia instrukcja. #include <iostream> using namespace std; int main() { char znak; cout << " wprowadź znak : " ; while(cin >> znak && znak!='@' ) cout << "( " << znak << " )n wprowadź znak : " ; cout << "( " << znak << " ) n byen" ; return 0; } 25

C++ Instrukcje v Instrukcja iteracyjna do-while. do instrukcja ; while ( wyrażenie ) –

C++ Instrukcje v Instrukcja iteracyjna do-while. do instrukcja ; while ( wyrażenie ) – wartość wyrażenia warunku sterowania pętlą jest sprawdzana po wykonaniu instrukcji. #include <iostream> using namespace std; int main() { char znak; do { cout << " wprowadź znak : " ; cin >> znak ; cout << "( " << znak << " )n"; } while (znak!='@'); cout << " byen" ; return 0; } 26

C++ Instrukcje v Instrukcja iteracyjna for (instrukcja_ini ; wyrażenie_s ; wyrażenie_z ) instrukcja_w ;

C++ Instrukcje v Instrukcja iteracyjna for (instrukcja_ini ; wyrażenie_s ; wyrażenie_z ) instrukcja_w ; • instrukcja_ini – służy do inicjowania lub przypisywania wartości jednej lub wielu zmiennym, – może być instrukcją pustą. – jest wykonywana tylko jeden raz przed rozpoczęciem pętli. • wyrażenie_s – steruje wykonywaniem pętli; instrukcja_w oraz wyrażenie_z będą wykonywane tyle razy, ile prawdziwym będzie wynik obliczenia wyrażenia_s. • wyrażenie_z – służy głównie do zmieniania wartości zmiennych, którym instrukcja_ini nadała wartości początkowe – może być ( podobnie jak instrukcja_ini ) instrukcją złożoną. ? jeden cykl pętli to : wyrażenie_s - instrukcja_w - wyrażenie_z 27

Instrukcja for C++. Instrukcje. #include <iostream> using namespace std; int main() { for (int

Instrukcja for C++. Instrukcje. #include <iostream> using namespace std; int main() { for (int i=0; i < 128 ; ++i ) cout << i<< " : " << char(i) << endl; return 0; } #include <iostream> using namespace std; int main() { int i=0; for ( ; i < 128 ; ++i ) cout << i<< " : " << char(i) << endl; return 0; } 28

C++ Instrukcje v Instrukcja warunkowa if. if ( wyrażenie ) instrukcja ; – wynik

C++ Instrukcje v Instrukcja warunkowa if. if ( wyrażenie ) instrukcja ; – wynik wyrażenia różny od zera oznacza, że warunek jest spełniony , a instrukcja będzie wykonywana. if ( wyrażenie ) instrukcja 1 ; else instrukcja 2 ; – jeżeli wyrażenie ma wartość różną od zera, to wykonywana będzie instrukcja 1, w przeciwnym zaś wypadku instrukcja 2. 29

Instrukcja warunkowa if C++. Instrukcje. //. . . int main() { int wrt; unsigned

Instrukcja warunkowa if C++. Instrukcje. //. . . int main() { int wrt; unsigned char a; cout << "Podaj liczbę dodatnią mniejszą od 256: n a = " ; cin >> wrt; if( wrt>0 && wrt<256 ) { // treść instrukcji złożonej } else { cout << "Liczba spoza przedziału"; if(wrt<0) cout << " i do tego jeszcze ujemna !!" << endl; else cout << ", o " << wrt - 255 << " za duża !" << endl; } return 0; } 30

Instrukcja warunkowa if C++. Instrukcje. { // treść instrukcji złożonej a=wrt; cout << "a

Instrukcja warunkowa if C++. Instrukcje. { // treść instrukcji złożonej a=wrt; cout << "a binarnie to : "; for(int i = 7; i >= 0; i--) if(a & (1 << i)) cout << '1' ; else cout << '0'; cout << endl; } //. . . 31

C++ Instrukcje v Instrukcja switch wybiera jeden z fragmentów kodu na podstawie wartości wyrażenia

C++ Instrukcje v Instrukcja switch wybiera jeden z fragmentów kodu na podstawie wartości wyrażenia całkowitego. switch(selector) { case całkowita 1 : instrukcja; break; case całkowita 2 : instrukcja; break; case całkowita 3 : instrukcja; break; case całkowita 4 : instrukcja; break; (. . . ) default : instrukcja; } 32

Instrukcja switch C++. Instrukcje. switch(selector) { case całk_1 : instr 1; break; case całk_2

Instrukcja switch C++. Instrukcje. switch(selector) { case całk_1 : instr 1; break; case całk_2 : instr 2; break; case całk_3 : instr 3; break; (. . . ) default : instrukcja; • Selektor musi być wyrażeniem dającym wartość całkowitą. • Wartość selektora jest porównywana z każdą z wartości całkowitych za słowem case. • Jeżeli znaleziona zostanie odpowie dnia wartość, to wykonywana jest właściwa instrukcja. • Jeżeli żadna wartość całkowita nie odpowiada war tości selektora, to wykonywana jest instrukcja po słowie } kluczowym default. Słowo to, oraz odpowiadająca mu instrukcja ( alternatywna do pozostałych ) nie jest konstrukcją obowiązkową dla instrukcji switch. • Instrukcja break, wykonywana w następstwie wybranej instrukcji kończy wykonywanie instrukcji switch. ? Użycie instrukcji break jest jednak opcjonalne. Jeśli nie występuje, to po wykonaniu właściwej instrukcji kolejne instrukcje też będą wykonane. 33

Instrukcja switch C++. Instrukcje. #include <iostream> using namespace std; int main() { char znak;

Instrukcja switch C++. Instrukcje. #include <iostream> using namespace std; int main() { char znak; bool koniec = false; while(koniec == false) { cout << "t - tak , n - nie, k - koniec: "; cin >> znak; switch(znak) { case 't' : cout << " wybrano TAK " << endl; break; case 'n' : cout << " wybrano NIE " << endl; break; case 'k' : cout << " koniec " << endl; koniec = true; break; default : cout << "Użyj proszę t, n, lub k !„ << endl; } } return 0; } 34

Instrukcja switch //. . . switch(znak) { case 'T' : case 't' : cout

Instrukcja switch //. . . switch(znak) { case 'T' : case 't' : cout << break; case 'N' : case 'n' : cout << break; case 'K' : case 'k' : cout << break; default : cout << } //. . . C++. Instrukcje. " wybrano TAK " << endl; " wybrano NIE " << endl; " koniec " << endl; koniec = true; "Uzyj prosze t, n, lub k !" << endl; 35

C++ Instrukcje v Instrukcja break powoduje zakończenie wykonywania zawierającej ją pętli while, do-while, lub

C++ Instrukcje v Instrukcja break powoduje zakończenie wykonywania zawierającej ją pętli while, do-while, lub for. Wykonywanie programu rozpoczyna się od instrukcji znajdującej się bezpośrednio po zakończonej instrukcji. v Instrukcja continue powoduje zakończenie bieżącej iteracji pętli while, do-while, lub for , nie przerywa jednak wykonywania pętli jak ma to miejsce w przypadku instrukcji break. 36

Instrukcje break , continue C++. Instrukcje. #include <iostream> using namespace std; int main() {

Instrukcje break , continue C++. Instrukcje. #include <iostream> using namespace std; int main() { char znak; do { cout << " wprowadź znak : " ; cin >> znak ; if (znak =='Q') break; if (znak =='q') continue; cout << "( " << znak << " )n"; } while (znak!='@'); cout << " byen" ; return 0; } 37