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

Wielkość: px
Rozpocząć pokaz od strony:

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

Transkrypt

1 Programowanie proceduralne w języku C++ Pętle, tablice Mirosław Głowacki 1 1 Akademia Górniczo-Hutnicza im. Stanisława Staszica w Ktrakowie Wydział Inżynierii Metali i Informatyki Stosowanej Katedra Informatyki Stosowanej i Modelowania Wrzesień 2015 Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

2 Spis treści 1 Pętle 2 Pętla do... while 3 Pętla while 4 Pętla for 5 Instrukcje break and continue 6 Jednowymiarowe tablice statyczne 7 Jednowymiarowe tablice dynamiczne Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

3 Spis treści 1 Pętle 2 Pętla do... while 3 Pętla while 4 Pętla for 5 Instrukcje break and continue 6 Jednowymiarowe tablice statyczne 7 Jednowymiarowe tablice dynamiczne Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

4 Przeznaczenie pętli Pętla w największym uproszczeniu służy do powtarzania ciągu instrukcji. Pozwala to na wykonanie fragmentu kodu więcej niż raz bez konieczności ich wielokrotnego pisania. Operacja powtarzania wielokrotnego wybranych fragmentów kodu jest do tego stopnia istotna w programowaniu, że język C++ udostępnia nam aż trzy rodzaje pętli: pętla do... while, pętla while, pętla for. Pętle, które poznamy niebawem różnią się szczegółami, jednak ich idea jest ta sama - powtarzać wybrane fragmenty kodu. Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

5 Spis treści 1 Pętle 2 Pętla do... while 3 Pętla while 4 Pętla for 5 Instrukcje break and continue 6 Jednowymiarowe tablice statyczne 7 Jednowymiarowe tablice dynamiczne Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

6 Pętla do... while Pętle są potężnym narzędziem w ręku programisty. Dzięki pętlom możemy pisać kod krótszy, czytelniejszy i łatwiejszy w utrzymaniu. Zobaczmy jak wygląda pierwszy z wymienionych rodzajów pętli: C++: do... while do instrukcja; // lub {...blok instrukcji... } while ( warunek konczacy ); pętla do... while rozpoczyna się słowem kluczowym do, po nim następuje blok instrukcji, które mają być wielokrotnie powtarzane, na koniec słowo kluczowe while poprzedzające umieszczony w nawiasach okrągłych warunek zakończenia pętli. Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

7 Pętla do... while Liczba powtórzeń instrukcji umieszczonych w bloku pętli jest zależna od warunku kończącego pętlę. Pętla do... while zakończy się gdy warunek umieszczony w nawiasach zaokrąglonych zwróci wartość false. Istotną cechą tej pętli jest fakt, że kod zawarty między słowami kluczowymi do... while wykona się co najmniej jeden raz, np.: #include <iostream> int main() { int ilerazy; std::cout << "Ile razy? "; std::cin >> ilerazy; do { std::cout << "ilerazy = " << ilerazy << std::endl; ilerazy--; } while( ilerazy > 0 ); return 0; } Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

8 Pętla while Jeśli zmienna ilerazy przyjmie wartość 3, to na ekranie komputera pojawi się tekst: Okno konsoli Ile razy? 3 ilerazy = 3 ilerazy = 2 ilerazy = 1 Natomiast jeśli ilerazy przyjmie warość początkową 0: Okno konsoli Ile razy? -3 ilerazy = -3 Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

9 Spis treści 1 Pętle 2 Pętla do... while 3 Pętla while 4 Pętla for 5 Instrukcje break and continue 6 Jednowymiarowe tablice statyczne 7 Jednowymiarowe tablice dynamiczne Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

10 Pętla while Dobrym punktem wyjściowym będzie zapoznanie się ze składnią pętli while : C++: while while( warunek konczacy petle ) { powtarzany blok instrukcji } pętla ta w przeciwieństwie do do... while rozpoczyna się słowem kluczowym while wraz z umieszczonym po nim w nawiasach okrągłych warunkiem zakończenia pętli. następnie następuje blok instrukcji, które mają być wielokrotnie powtarzane, zamiast bloku instrukcji może być oczywiście umieszczona pojedyncza instrukcja. Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

11 Pętla while Podobnie jak dla do... while liczba powtórzeń instrukcji bloku pętli jest zależna od warunku kończącego pętlę. Tym jednak razem warunek może być fałszywy na wstępie i pętla while nie zostanie wykonana ani raz. Jest to w sumie jedyna, ale istotna różnica w stosunku do pętli do... while. Przykładowo: #include <iostream> int main() { int ilerazy; std::cout << "Ile razy? "; std::cin >> ilerazy; while( ilerazy > 0 ) { std::cout << "ilerazy = " << ilerazy << std::endl; ilerazy--; } return 0; } Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

12 Pętla while Co prawda jeśli tym razem zmienna ilerazy przyjmie wartość 3, to na ekranie komputera pojawi się tekst identyczny z tym jaki wygenerowała pętla do... while : Okno konsoli Ile razy? 3 ilerazy = 3 ilerazy = 2 ilerazy = 1 Ale jeśli ilerazy przyjmie warość początkową 0, to strumień wyjściowy będzie następujący: Okno konsoli Ile razy? 0 i nic więcej. Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

13 Zastosowanie pętli while w praktyce Pętlę while w praktyce stosuje się zawsze tam, gdzie mamy potrzebę przetwarzania nieokreślonej z góry liczby danych, np: należy wczytać dane do tablicy, ale ich liczbę podaje np. użytkownik programu; należy zakończyć pętlę gdy tylko zostanie wciśnięty określony klawisz klawiatury, itp. Podsumowując, while nie jest w niczym lepsza od innych pętli - w praktyce można sprawnie używać każdej z nich, jednak różnorodność narzędzi pozwala pisać kod krótszy i czytelniejszy. Przykład pętli o nieznanej z góry liczbie iteracji. Wyznaczyć taką najmniejszą liczbę naturalną, że suma liczb od niej mniejszych i podzielnych przez 7 jest większa od założonej wartości. Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

14 Przykład działania pętli while int main() { int var, varmin; cout << "Podaj liczbe "; cin >> varmin; int suma = 0; int i = 1; while (suma < varmin){ if (i % 7 == 0) { suma += i; var = i; cout << "Dodaje do sumy liczbe = " << i << endl; } i++; } cout << "Wyznaczona liczba = " << ++var << endl; cout << "Suma = " << suma << endl; return 0; } Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

15 Przykład działania pętli while Widoczne w kodzie programie zastosowanie instrukcji while jest typowe i charakterystyczne dla tej pętli. Zamiast while można użyć oczywiście do... while. W wyniku działania programu otrzymano strumień wyjściowy: Podaj liczbe 40 Dodaje do sumy liczbe = 7 Dodaje do sumy liczbe = 14 Dodaje do sumy liczbe = 21 Wyznaczona liczba = 22 Suma = 42 Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

16 Spis treści 1 Pętle 2 Pętla do... while 3 Pętla while 4 Pętla for 5 Instrukcje break and continue 6 Jednowymiarowe tablice statyczne 7 Jednowymiarowe tablice dynamiczne Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

17 Pętla for Składnia pętli for jest następująca: C++: for for( inicjalizacja licznika; warunek; zmiana licznika ) instrukcja; // lub {... blok instrukcji... } inicjalizacja licznika, to zdefiniowanie zmiennej sterującej pętlą for - jest to typowa deklaracja zmiennej typu liczbowego i jej inicjalizacja. warunek to typowe wyrażenie logiczne, podobnie jak dla innych pętli - jego brak oznacza pętlę nieskończoną zmiana licznika oznacza inkrementację (lub dekrementację) licznika lub inną metodę jego zmiany. blok instrukcji jest wykonywany w każdej iteracji pętli - może to być pojedyncza instrukcja. Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

18 Pętla for Przykładowy program wykorzystujący pętlę for : C++: for #include <iostream> using namespace std; int main() { int maxrazy; cout << "Ile razy? "; cin >> maxrazy; for (int ilerazy = maxrazy; ilerazy > 0 ; ilerazy--) cout << "ilerazy = " << ilerazy << endl; return 0; } Tym razem zmienna ilerazy pełni rolę zmiennej sterującej pętlą. Natomiast zmienna maxrazy wyznacza z góry znaną liczbę iteracji. Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

19 Pętla for I tym razem jeśli zmienna ilerazy przyjmie wartość początkową 3, to na ekranie komputera pojawi się tekst identyczny z tymi jakie generowały pętle do... while i while : Ile razy? 3 ilerazy = 3 ilerazy = 2 ilerazy = 1 Jeśli natomiast ilerazy przyjmie warość początkową 0, to strumień wyjściowy będzie taki sam jak dla pętli while, a nie taki jak dla pętli do... while : Ile razy? 0 Oznacza to, że pętla nie została wykonana nawet jeden raz. Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

20 Zastosowanie pętli for w praktyce Pętlę for stosuje się zawsze tam, gdy znamy liczbę iteracji, np: znamy liczbę danych, jaką należy wczytać, wypisać lub zmienić, chcemy policzyć średnią z określonej liczby danych, mamy za zadanie wczytać znaną liczbę danych z pliku lub wypisać określoną liczbę danych na ekran, itd. Należy zauważyć, że w języku C++ możliwe jest utworzenie tymczasowej zmiennej, która będzie widoczna tylko i wyłącznie wewnątrz pętli for tak, jak zmienna ilerazy z naszego przykładu. Wspomniana własność jest bardzo wygodna dla programisty i korzystanie z niej jest praktycznie rzecz biorąc na porządku dziennym. Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

21 Silnia - przykład działania pętli for #include <iostream> using namespace std; int main() { int nsil; cout << "Podaj liczbe "; cin >> nsil; int silnia = 1; for (int i = 2; i <= nsil ; i++){ cout << "Mnoze zmienna silnia przez = " << i << endl; silnia *= i; } cout << "Silnia liczby " << nsil << " wynosi: " << silnia << endl; return 0; } Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

22 Silnia - przykład działania pętli for Przedstawione w programie zastosowanie instrukcji for jest typowe i charakterystyczne. Zamiast for można użyć każdego innego rodzaju pętli, ale for jest w tym przypadku bardzo wygodna. W wyniku działania programu otrzymano strumień wyjściowy: Podaj liczbe 5 Mnoze zmienna silnia przez = 2 Mnoze zmienna silnia przez = 3 Mnoze zmienna silnia przez = 4 Mnoze zmienna silnia przez = 5 Silnia liczby 5 wynosi: 120 Takie operacje jak sumowanie czy obliczanie silni to jedne z najczęściej używanych zastosowań pętli for. Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

23 Spis treści 1 Pętle 2 Pętla do... while 3 Pętla while 4 Pętla for 5 Instrukcje break and continue 6 Jednowymiarowe tablice statyczne 7 Jednowymiarowe tablice dynamiczne Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

24 Instrukcje break i continue W pętlach, instrukcja break kończy wykonywanie najbliższej otaczającej instrukcji do, for lub while. Jak już wiemy dotyczy ona także instrukcji switch. Sterowanie przechodzi do instrukcji następującej po zakończonej pętli, jeśli taka istnieje. W obrębie zagnieżdżonych pętli, instrukcja break kończy tylko tę pętlę, która bezpośrednio ją obejmuje. Podobnie działa instrukcja continue, ale tylko dla pętli. Nie kończy ona jednak wykonywania najbliższej otaczającej pętli, a jedynie bieżącą iterację. W przypadku pętli do lub while następna iteracja rozpoczyna się od ponownej oceny warunku kontrolującego instrukcji. W przypadku pętli for wykonywane są: aktualizacja licznika, ponowne sprawdzenie warunku oraz, w zależności od wyniku, przejście do kolejnej iteracji. Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

25 Przykład działania instrukcji continue #include <iostream> using namespace std; int main() { int zakrmin, zakrmax; cout << "Podaj zakres liczb " << endl; cout << "od: "; cin >> zakrmin; cout << "do: "; cin >> zakrmax; int suma = 0; for (int i = zakrmin; i <= zakrmax ; i++){ if (i % 2!= 0) continue; cout << "Dodaje do sumy liczbe = " << i << endl; suma += i; } cout << "Suma liczb parzystych = " << suma << endl; return 0; } Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

26 Przykład działania instrukcji continue Zastosowanie instrukcji continue oraz dzielenia i % 2, jako warunku w pętli if spowodowało sumowanie jedynie liczb parzystych. W wyniku działania programu otrzymano strumień wyjściowy: Podaj zakres liczb od: 1 do: 7 Dodaje do sumy liczbe = 2 Dodaje do sumy liczbe = 4 Dodaje do sumy liczbe = 6 Suma liczb parzystych = 12 Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

27 Przykład działania instrukcji break #include <iostream> using namespace std; int main() { int var, varmin; cout << "Podaj liczbe "; cin >> varmin; int suma = 0; for(int i = 1;;i++) if (i % 7 == 0) { suma += i; var = i; cout << "Dodaje do sumy liczbe = " << i << endl; if (suma>varmin) break; } cout << "Wyznaczona liczba = " << ++var << endl; cout << "Suma = " << suma << endl; return 0; } Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

28 Przykład działania instrukcji break W wyniku działania programu otrzymano strumień wyjściowy identyczny z tym jaki wygenerował program używający pętli while : Podaj liczbe 40 Dodaje do sumy liczbe = 7 Dodaje do sumy liczbe = 14 Dodaje do sumy liczbe = 21 Wyznaczona liczba = 22 Suma = 42 Konieczne było jednak zastosowanie pętli nieskończonej for(int i = 1; ;i++) i instrukcji break. Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

29 Instrukcje break and continue Podsumowanie działania instrukcji break i continue można przedstawić w następującej tablicy: Instrukcja Zastosowanie Działanie break continue do while for switch do while for Pętla jest natychmiast przerywana, a sterowanie przechodzi do instrukcji występującej bezpośrednio za pętlą. Instrukcja break powoduje opuszczenie jedynie pętli ją zawierającej. Wymusza wykonanie kolejnej iteracji z pominięciem fragmentu programu między instrukcją, a warunkiem testującym. Dalsze działanie pętli powoduje przejście do kolejnej iteracji pętli. Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

30 Spis treści 1 Pętle 2 Pętla do... while 3 Pętla while 4 Pętla for 5 Instrukcje break and continue 6 Jednowymiarowe tablice statyczne 7 Jednowymiarowe tablice dynamiczne Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

31 Tablice Do tej pory mówiąc o zmiennych stwierdziliśmy, że każda zmienna ma swoją nazwę. Zastanówmy się jednak na dwoma pytaniami: Dlaczego wprowadzono tablice zmiennych? Co powoduje, że pojęcie tablicy jest zbieżne z pojęciem pętli? Aby odpowiedzieć na powyższe pytania rozważmy problem tworzenia listy studentów: każdy student może być określony za pomocą imienia i nazwiska, ale student może być określony również za pomoca numeru albumu co jest bardziej jednoznaczne - w grupie może być np. dwóch Janów Kowalskich Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

32 Tablice Grupa studentów może liczyć nawet kilkaset osób i wpisywanie ich na listę kolejno nie ma większego sensu. Kod programu: int main() { string im1, nazw1; int nralb1; cout << " Imie studenta nr 1: "; cin >> im1; cout << " Nazwisko studenta nr 1: "; cin >> nazw1; cout << "Nr albumu studenta nr 1: "; cin >> nralb1; string im2, nazw2; int nralb2; cout << " Imie studenta nr 2: "; cin >> im2; cout << " Nazwisko studenta nr 2: "; cin >> nazw2; cout << "Nr albumu studenta nr 2: "; cin >> nralb2; return 0; } Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

33 Tablice Dostarcza strumienia wyjściowego: Imie studenta nr 1: Jan Nazwisko studenta nr 1: Kowalski Nr albumu studenta nr 1: Imie studenta nr 2: Anna Nazwisko studenta nr 2: Nowak Nr albumu studenta nr 2: Zapewnia on wczytanie jedynie dwóch pierwszych osób. Wczytane dana zostały umieszczone w sześciu różnych zmiennych. Dla dziesięciu osób kod programu byłby już mało czytelny. Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

34 Tablice Rozwiązaniem, które samo się nasuwa jesta zastosowanie pętli i instrukcji switch. Kod programu mógłby tym razem wyglądać następująco: int main() { string im1, nazw1, im2, nazw2; int nralb1, nralb2; for (int i = 1; i <= 2; i++) switch (i) { case 1: cout << " Imie studenta nr 1: "; cin >> im1; cout << " Nazwisko studenta nr 1: "; cin >> nazw1; cout << "Nr albumu studenta nr 1: "; cin >> nralb1; break; Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

35 Tablice case 2: cout << " Imie studenta nr 2: "; cin >> im2; cout << " Nazwisko studenta nr 2: "; cin >> nazw2; cout << "Nr albumu studenta nr 2: "; cin >> nralb2; break; } return 0; } Rozwiązanie okazało się niesatysfakcjonujące. Kod został rozbudowany, a instrukcji przybyło. Wina leży tu bowiem po stronie samych zmiennych gromadzących dane. I tu z pomocą przychodzą tablice jednowymiarowe Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

36 Tablice Tablice to po prostu indeksowane zmienne. W znaczący sposób potrafią ulepszyć kody programów: int main() { string im[4], nazw[4]; int nralb[4]; for (int i = 0; i < 4; i++){ cout << " Imie studenta nr " << i+1 << ": "; cin >> im[i]; cout << " Nazwisko studenta nr " << i+1 << ": "; cin >> nazw[i]; cout << "Nr albumu studenta nr " << i+1 << ": "; cin >> nralb[i]; } return 0; } Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

37 Tablice Przykładowy strumień wyjściowy dla przedstawionego kodu: Imie studenta nr 1: Jan Nazwisko studenta nr 1: Kowalski Nr albumu studenta nr 1: Imie studenta nr 2: Anna Nazwisko studenta nr 2: Nowak Nr albumu studenta nr 2: Imie studenta nr 3: Marek Nazwisko studenta nr 3: Malinowski Nr albumu studenta nr 3: Imie studenta nr 4: Marcin Nazwisko studenta nr 4: Kowalski Nr albumu studenta nr 4: Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

38 Jednowymiarowe tablice zmiennych Z przedstawionego przykładu jasno wynika, że tworzenie jednowymiarowych tablic zmiennych jest bardzo proste. Wystarczy, że za deklaracją zwykłej zmiennej podamy liczbę jej elementów ujętą w nawiasy kwadratowe: typ nazwa [ rozmiar ] Tworząc tablicę za pomocą powyższego zapisu - tzw. tablice statyczne - należy pamiętać, że: rozmiar musi być wartością stałą, musi być ona znana w chwili kompilacji programu. Oznacza to, że użytkownik nie może określać rozmiaru tablicy statycznej w trakcie działania aplikacji. cin >> rozm; double dbl[rozm]; Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

39 Tablice, a stabilność aplikacji UWAGA Indeks pierwszego element tablicy w języku C++ wynosi 0, natomiast ostatni element ma indeks rozmiar - 1 Najczęstszym błędem, jaki jest popełniany przez początkujących programistów (również i tych bardziej doświadczonych) jest wychodzenie poza zakres tablicy. Przykładowo: double dbl[10]; dbl[10] = 1.23; // Odwolanie do 11 elementu tablicy Może to spowodować przykre konsekwencje - modyfikacji ulegają wartości innych zmiennych lub kodu maszynowego. W efekcie może również nastąpić uszkodzenie programu co prowadzi do błędu krytycznego. Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

40 Przykład użycia tablicy Programy z użyciem tablic i pętli są zwięzłe: int main() { int in[15]; for (int i = 0; i < 15; i++) in[i] = i; cout << "Suma liczb: "; for (int i = 0; i < 15; i++) cout << in[i] << " "; int suma = 0; for (int i = 0; i < 15; i++) suma += in[i]; cout << endl << " wynosi: " << suma; return 0; } Suma liczb: wynosi: 105 Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

41 Spis treści 1 Pętle 2 Pętla do... while 3 Pętla while 4 Pętla for 5 Instrukcje break and continue 6 Jednowymiarowe tablice statyczne 7 Jednowymiarowe tablice dynamiczne Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

42 Jednowymiarowe tablice dynamiczne Istnieje również możliwość tworzenie jednowymiarowych tablic dynamicznych, o których rozmiarze można zadecydować w trakcie wykonywania programu Używamy do tego celu instrukcji: new. typ *nazwa = new typ [ rozmiar ] Gdy przestaje być potrzebna tablica taka powinna być kasowana instrukcją delete : delete [ ] nazwa Pozwala to uniknąć tzw. wycieków pamięci. Na razie nie będziemy rozwijać tematu - do instrukcji new będziemy jeszcze wracać. Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

43 Przykład użycia tablicy dynamicznej Programy z użyciem tablic i pętli są zwięzłe: int main() { int rozm; cout << "Rozmiar tablicy: "; cin >> rozm; int *in = new int[rozm]; // Utworzenie tablicy for (int i = 0; i < rozm; i++) in[i] = i; cout << "Suma liczb: "; for (int i = 0; i < rozm; i++) cout << in[i] << " "; int suma = 0; for (int i = 0; i < rozm; i++) suma += in[i]; cout << endl << "wynosi: " << suma; delete [] in; // Zwolnienie pamieci return 0; } Rozmiar tablicy: 12 Suma liczb: wynosi: 66 Mirosław Głowacki (AGH, UJK) Programowanie w języku C / 43

Programowanie Obiektowo Zorientowane w języku c++ Przestrzenie nazw

Programowanie Obiektowo Zorientowane w języku c++ Przestrzenie nazw Programowanie Obiektowo Zorientowane w języku c++ Przestrzenie nazw Mirosław Głowacki 1 1 Akademia Górniczo-Hutnicza im. Stanisława Staszica w Ktrakowie Wydział Inżynierii Metali i Informatyki Stosowanej

Bardziej szczegółowo

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

Pętle i tablice. Spotkanie 3. Pętle: for, while, do while. Tablice. Przykłady Pętle i tablice. Spotkanie 3 Dr inż. Dariusz JĘDRZEJCZYK Pętle: for, while, do while Tablice Przykłady 11/26/2016 AGH, Katedra Informatyki Stosowanej i Modelowania 2 Pętla w największym uproszczeniu służy

Bardziej szczegółowo

1 Podstawy c++ w pigułce.

1 Podstawy c++ w pigułce. 1 Podstawy c++ w pigułce. 1.1 Struktura dokumentu. Kod programu c++ jest zwykłym tekstem napisanym w dowolnym edytorze. Plikowi takiemu nadaje się zwykle rozszerzenie.cpp i kompiluje za pomocą kompilatora,

Bardziej szczegółowo

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

Podstawy Programowania Podstawowa składnia języka C++ Podstawy Programowania Podstawowa składnia języka C++ Katedra Analizy Nieliniowej, WMiI UŁ Łódź, 3 października 2013 r. Szablon programu w C++ Najprostszy program w C++ ma postać: #include #include

Bardziej szczegółowo

Wstęp do programowania

Wstęp do programowania wykład 3 Agata Półrola Wydział Matematyki i Informatyki UŁ sem. zimowy 2017/2018 Instrukcja wielokrotnego wyboru Instrukcja wielokrotnego wyboru switch umożliwia podejmowanie decyzji na podstawie wartości

Bardziej szczegółowo

8. Wektory. Przykłady Napisz program, który pobierze od użytkownika 10 liczb, a następnie wypisze je w kolejności odwrotnej niż podana.

8. Wektory. Przykłady Napisz program, który pobierze od użytkownika 10 liczb, a następnie wypisze je w kolejności odwrotnej niż podana. 8. Wektory Przykłady 8.1. Napisz program, który pobierze od użytkownika 10 liczb, a następnie wypisze je w kolejności odwrotnej niż podana. Uwaga! Kod poniżej. To zadanie można rozwiązać przy użyciu wiedzy

Bardziej szczegółowo

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

Podstawy programowania skrót z wykładów: Podstawy programowania skrót z wykładów: // komentarz jednowierszowy. /* */ komentarz wielowierszowy. # include dyrektywa preprocesora, załączająca biblioteki (pliki nagłówkowe). using namespace

Bardziej szczegółowo

Programowanie Obiektowew języku C++ Zadania L2

Programowanie Obiektowew języku C++ Zadania L2 Programowanie Obiektowew języku C++ Zadania L2 Mirosław Głowacki 1,2 1 Akademia Górniczo-Hutnicza im. Stanisława Staszica w Ktrakowie Wydział Inżynierii Metali i Informatyki Stosowanej Katedra Informatyki

Bardziej szczegółowo

Wstęp do programowania

Wstęp do programowania wykład 4 Agata Półrola Wydział Matematyki i Informatyki UŁ sem. zimowy 2017/2018 Pętle wykonujące się podaną liczbę razy Jeśli chcemy wykonać pewien fragment programu określoną liczbę razy, możemy użyć

Bardziej szczegółowo

Podstawy Programowania C++

Podstawy Programowania C++ Wykład 3 - podstawowe konstrukcje Instytut Automatyki i Robotyki Warszawa, 2014 Wstęp Plan wykładu Struktura programu, instrukcja przypisania, podstawowe typy danych, zapis i odczyt danych, wyrażenia:

Bardziej szczegółowo

Podstawy programowania w języku C++ Zadania

Podstawy programowania w języku C++ Zadania Podstawy programowania w języku C++ Zadania Mirosław Głowacki 1,2 1 Akademia Górniczo-Hutnicza im. Stanisława Staszica w Ktrakowie Wydział Inżynierii Metali i Informatyki Stosowanej Katedra Informatyki

Bardziej szczegółowo

Wstęp do programowania

Wstęp do programowania wykład 5 Agata Półrola Wydział Matematyki i Informatyki UŁ sem. zimowy 2016/2017 Zadanie o kotach z poprzedniego wykładu # include < iostream > using namespace std ; int main (){ int rozmiar_ rodzinki,

Bardziej szczegółowo

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

Pętle. Dodał Administrator niedziela, 14 marzec :27 Pętlami nazywamy konstrukcje języka, które pozwalają na wielokrotne wykonywanie powtarzających się instrukcji. Przykładowo, jeśli trzeba 10 razy wyświetlić na ekranie pewien napis, to można wykorzystać

Bardziej szczegółowo

Materiał Typy zmiennych Instrukcje warunkowe Pętle Tablice statyczne Wskaźniki Tablice dynamiczne Referencje Funkcje

Materiał Typy zmiennych Instrukcje warunkowe Pętle Tablice statyczne Wskaźniki Tablice dynamiczne Referencje Funkcje Podstawy informatyki Informatyka stosowana - studia niestacjonarne - Zajęcia nr 4 Grzegorz Smyk Wydział Inżynierii Metali i Informatyki Przemysłowej Akademia Górniczo Hutnicza im. Stanisława Staszica w

Bardziej szczegółowo

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

Programowanie w C++ Wykład 2. Katarzyna Grzelak. 4 marca K.Grzelak (Wykład 1) Programowanie w C++ 1 / 44 Programowanie w C++ Wykład 2 Katarzyna Grzelak 4 marca 2019 K.Grzelak (Wykład 1) Programowanie w C++ 1 / 44 Na poprzednim wykładzie podstawy C++ Każdy program w C++ musi mieć funkcję o nazwie main Wcięcia

Bardziej szczegółowo

Zajęcia nr 1 Podstawy programowania. dr inż. Łukasz Graczykowski mgr inż. Leszek Kosarzewski Wydział Fizyki Politechniki Warszawskiej

Zajęcia nr 1 Podstawy programowania. dr inż. Łukasz Graczykowski mgr inż. Leszek Kosarzewski Wydział Fizyki Politechniki Warszawskiej Zajęcia nr 1 Podstawy programowania dr inż. Łukasz Graczykowski mgr inż. Leszek Kosarzewski Wydział Fizyki Politechniki Warszawskiej Ramowy program warsztatów 1. Pierwsze: Podstawy programowania 2. Drugie:

Bardziej szczegółowo

7. Pętle for. Przykłady

7. Pętle for. Przykłady . Pętle for Przykłady.1. Bez użycia pętli while ani rekurencji, napisz program, który wypisze na ekran kolejne liczby naturalne od 0 do pewnego danego n. 5 int n; 6 cin >> n; 8 for (int i = 0; i

Bardziej szczegółowo

1 Podstawy c++ w pigułce.

1 Podstawy c++ w pigułce. 1 Podstawy c++ w pigułce. 1.1 Struktura dokumentu. Kod programu c++ jest zwykłym tekstem napisanym w dowolnym edytorze. Plikowi takiemu nadaje się zwykle rozszerzenie.cpp i kompiluje za pomocą kompilatora,

Bardziej szczegółowo

Instrukcje sterujące

Instrukcje sterujące Podstawy programowania w C++ Bibliografia: Instrukcje sterujące Nauka programowania dla początkujących; A. Struzińska-Walczak / K. Walczak CPA: PROGRAMMING ESSENTIALS IN C++ https://www.netacad.com Opracował:

Bardziej szczegółowo

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

for (inicjacja_warunkow_poczatkowych; wyrazenie_warunkowe; wyrazenie_zwiekszajace) { blok instrukcji; } Pętle Pętle (ang. loops), zwane też instrukcjami iteracyjnymi, stanowią podstawę prawie wszystkich algorytmów. Lwia część zadań wykonywanych przez programy komputerowe opiera się w całości lub częściowo

Bardziej szczegółowo

Część 4 życie programu

Część 4 życie programu 1. Struktura programu c++ Ogólna struktura programu w C++ składa się z kilku części: część 1 część 2 część 3 część 4 #include int main(int argc, char *argv[]) /* instrukcje funkcji main */ Część

Bardziej szczegółowo

Programowanie proceduralne w języku C++ Pojęcia podstawowe - kod źródłowy

Programowanie proceduralne w języku C++ Pojęcia podstawowe - kod źródłowy Programowanie proceduralne w języku C++ Pojęcia podstawowe - kod źródłowy Mirosław Głowacki 1 1 Akademia Górniczo-Hutnicza im. Stanisława Staszica w Ktrakowie Wydział Inżynierii Metali i Informatyki Stosowanej

Bardziej szczegółowo

Programowanie - instrukcje sterujące

Programowanie - instrukcje sterujące Instytut Informatyki Uniwersytetu Śląskiego Laborki środowisko NetBeans, tworzenie nowego projektu; okno projekty; główne okno programu; package - budowanie paczek z klas; public class JavaApplication

Bardziej szczegółowo

Podstawy informatyki. Informatyka stosowana - studia niestacjonarne. Grzegorz Smyk

Podstawy informatyki. Informatyka stosowana - studia niestacjonarne. Grzegorz Smyk Podstawy informatyki Informatyka stosowana - studia niestacjonarne Grzegorz Smyk Wydział Inżynierii Metali i Informatyki Przemysłowej Akademia Górniczo Hutnicza im. Stanisława Staszica w Krakowie, Materiał

Bardziej szczegółowo

for (inicjacja_warunkow_poczatkowych(końcowych); wyrazenie_warunkowe; wyrazenie_zwiekszajace(zmniejszające)) { blok instrukcji; }

for (inicjacja_warunkow_poczatkowych(końcowych); wyrazenie_warunkowe; wyrazenie_zwiekszajace(zmniejszające)) { blok instrukcji; } Pętle Pętle (ang. loops), zwane też instrukcjami iteracyjnymi, stanowią podstawę prawie wszystkich algorytmów. Lwia część zadań wykonywanych przez programy komputerowe opiera się w całości lub częściowo

Bardziej szczegółowo

Programowanie - wykład 4

Programowanie - wykład 4 Programowanie - wykład 4 Filip Sośnicki Wydział Fizyki Uniwersytet Warszawski 20.03.2019 Przypomnienie Prosty program liczący i wyświeltający wartość silni dla wprowadzonej z klawiatury liczby: 1 # include

Bardziej szczegółowo

INFORMATYKA Z MERMIDONEM. Programowanie. Moduł 5 / Notatki

INFORMATYKA Z MERMIDONEM. Programowanie. Moduł 5 / Notatki INFORMATYKA Z MERMIDONEM Programowanie Moduł 5 / Notatki Projekt współfinansowany ze środków Unii Europejskiej w ramach Europejskiego Funduszu Społecznego. Realizator projektu: Opracowano w ramach projektu

Bardziej szczegółowo

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

Podstawy Informatyki. Kompilacja. Historia. Metalurgia, I rok. Kompilatory C++ Pierwszy program. Dyrektywy preprocesora. Darmowe: Podstawy Informatyki Metalurgia, I rok Historia Lata 0-te XX w język C (do pisania systemów operacyjnych) "The C programming language" B. Kernighan, D. Ritchie pierwszy standard Koniec lat 80 standard

Bardziej szczegółowo

Podstawy języka C++ Maciej Trzebiński. Instytut Fizyki Jądrowej Polskiej Akademii Nauk. Praktyki studenckie na LHC IVedycja,2016r.

Podstawy języka C++ Maciej Trzebiński. Instytut Fizyki Jądrowej Polskiej Akademii Nauk. Praktyki studenckie na LHC IVedycja,2016r. M. Trzebiński C++ 1/14 Podstawy języka C++ Maciej Trzebiński Instytut Fizyki Jądrowej Polskiej Akademii Nauk Praktyki studenckie na LHC IVedycja,2016r. IFJ PAN Przygotowanie środowiska pracy Niniejsza

Bardziej szczegółowo

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

Podstawy programowania. Wykład: 4. Instrukcje sterujące, operatory. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD programowania Wykład: 4 Instrukcje sterujące, operatory 1 programowania w C++ Instrukcje sterujące 2 Pętla for for ( instrukcja_ini ; wyrazenie_warunkowe ; instrukcja_krok ) tresc_petli ; instrukcja_ini

Bardziej szczegółowo

Ok. Rozbijmy to na czynniki pierwsze, pomijając fragmenty, które już znamy:

Ok. Rozbijmy to na czynniki pierwsze, pomijając fragmenty, które już znamy: Kurs C++ częśd II Podstawowa obsługa konsoli + zmienne. Autor: Dawid Chróścielski. Wprowadzanie i wyprowadzanie danych z/do konsoli. Jak wyprowadzad dane dowiedzieliśmy się już wcześniej (metoda cout z

Bardziej szczegółowo

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

Jak zawsze wyjdziemy od terminologii. While oznacza dopóki, podczas gdy. Pętla while jest Pętle Pętla to pewien fragment kodu, który jest wykonywany wielokrotnie. Wyobraź sobie taką sytuację. Piszesz program do szyfrowania danych. Dane są szyfrowane kolejno bajt po bajcie. Załóżmy, że plik

Bardziej szczegółowo

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

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

Bardziej szczegółowo

Podstawy informatyki. Informatyka stosowana - studia niestacjonarne. Grzegorz Smyk. Wydział Inżynierii Metali i Informatyki Przemysłowej

Podstawy informatyki. Informatyka stosowana - studia niestacjonarne. Grzegorz Smyk. Wydział Inżynierii Metali i Informatyki Przemysłowej Podstawy informatyki Informatyka stosowana - studia niestacjonarne Grzegorz Smyk Wydział Inżynierii Metali i Informatyki Przemysłowej Akademia Górniczo Hutnicza im. Stanisława Staszica w Krakowie, rok

Bardziej szczegółowo

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

Podstawy Informatyki. Metalurgia, I rok. Wykład 6 Krótki kurs C++ Podstawy Informatyki Metalurgia, I rok Wykład 6 Krótki kurs C++ Historia Lata 70-te XX w język C (do pisania systemów operacyjnych) "The C programming language" B. Kernighan, D. Ritchie pierwszy standard

Bardziej szczegółowo

Programowanie Obiektowew języku C++ Zadania L2

Programowanie Obiektowew języku C++ Zadania L2 Programowanie Obiektowew języku C++ Zadania L2 Mirosław Głowacki 1,2 1 Akademia Górniczo-Hutnicza im. Stanisława Staszica w Ktrakowie Wydział Inżynierii Metali i Informatyki Stosowanej Katedra Informatyki

Bardziej szczegółowo

do instrukcja while (wyrażenie);

do instrukcja while (wyrażenie); Instrukcje pętli -ćwiczenia Instrukcja while Pętla while (póki) powoduje powtarzanie zawartej w niej sekwencji instrukcji tak długo, jak długo zaczynające pętlę wyrażenie pozostaje prawdziwe. while ( wyrażenie

Bardziej szczegółowo

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

Język JAVA podstawy. Wykład 3, część 3. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna Język JAVA podstawy Wykład 3, część 3 1 Język JAVA podstawy Plan wykładu: 1. Konstrukcja kodu programów w Javie 2. Identyfikatory, zmienne 3. Typy danych 4. Operatory, instrukcje sterujące instrukcja warunkowe,

Bardziej szczegółowo

Programowanie komputerowe. Zajęcia 1

Programowanie komputerowe. Zajęcia 1 Programowanie komputerowe Zajęcia 1 Code::Blocks - tworzenie projektu Create New Project Console Application -> C++ Wybierz nazwę projektu Stworzy się nowy projekt z wpisaną funkcją main Wpisz swój program

Bardziej szczegółowo

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

znajdowały się różne instrukcje) to tak naprawdę definicja funkcji main. Część XVI C++ Funkcje Jeśli nasz program rozrósł się już do kilkudziesięciu linijek, warto pomyśleć o jego podziale na mniejsze części. Poznajmy więc funkcje. Szybko się przekonamy, że funkcja to bardzo

Bardziej szczegółowo

PODSTAWY INFORMATYKI 1 PRACOWNIA NR 6

PODSTAWY INFORMATYKI 1 PRACOWNIA NR 6 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ą

Bardziej szczegółowo

Struktura pliku projektu Console Application

Struktura pliku projektu Console Application Struktura pliku projektu Console Application #include #include using namespace std; int main(int argc, char *argv[]) // to jest komentarz system("pause"); return EXIT_SUCCESS; Na początku

Bardziej szczegółowo

Podczas dziedziczenia obiekt klasy pochodnej może być wskazywany przez wskaźnik typu klasy bazowej.

Podczas dziedziczenia obiekt klasy pochodnej może być wskazywany przez wskaźnik typu klasy bazowej. Polimorfizm jest filarem programowania obiektowego, nie tylko jeżeli chodzi o język C++. Daje on programiście dużą elastyczność podczas pisania programu. Polimorfizm jest ściśle związany z metodami wirtualnymi.

Bardziej szczegółowo

DYNAMICZNE PRZYDZIELANIE PAMIECI

DYNAMICZNE PRZYDZIELANIE PAMIECI DYNAMICZNE PRZYDZIELANIE PAMIECI Pamięć komputera, dostępna dla programu, dzieli się na cztery obszary: kod programu, dane statyczne ( np. stałe i zmienne globalne programu), dane automatyczne zmienne

Bardziej szczegółowo

Zajęcia nr 2 Programowanie strukturalne. dr inż. Łukasz Graczykowski mgr inż. Leszek Kosarzewski Wydział Fizyki Politechniki Warszawskiej

Zajęcia nr 2 Programowanie strukturalne. dr inż. Łukasz Graczykowski mgr inż. Leszek Kosarzewski Wydział Fizyki Politechniki Warszawskiej Zajęcia nr 2 Programowanie strukturalne dr inż. Łukasz Graczykowski mgr inż. Leszek Kosarzewski Wydział Fizyki Politechniki Warszawskiej Pętla while #include using namespace std; int main ()

Bardziej szczegółowo

Konstrukcje warunkowe Pętle

Konstrukcje warunkowe Pętle * Konstrukcje warunkowe Pętle *Instrukcja if sposób na sprawdzanie warunków *Konstrukcja: if(warunek) else { instrukcje gdy warunek spełniony} {instrukcje gdy warunek NIE spełniony} * 1. Wylicz całkowity

Bardziej szczegółowo

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

Tablice. Monika Wrzosek (IM UG) Podstawy Programowania 96 / 119 Tablice Tablica to struktura danych, która może przechowywać wiele wartości tego samego typu. Na przykład tablica może zawierać: 10 wartości typu int opisujących liczbę studentów przyjętych na kierunek

Bardziej szczegółowo

Podstawy programowania w C++

Podstawy programowania w C++ Podstawy programowania w C++ Strumienie wejścia cin>> i wyjścia cout

Bardziej szczegółowo

Wstęp do informatyki- wykład 7

Wstęp do informatyki- wykład 7 1 Wstęp do informatyki- wykład 7 Operatory przypisania, złożone operatory przypisania, Pętla while i do..while Treści prezentowane w wykładzie zostały oparte o: S. Prata, Język C++. Szkoła programowania.

Bardziej szczegółowo

Wstęp do programowania

Wstęp do programowania wykład 8 Agata Półrola Wydział Matematyki i Informatyki UŁ semestr zimowy 2018/2019 Podprogramy Czasami wygodnie jest wyodrębnić jakiś fragment programu jako pewną odrębną całość umożliwiają to podprogramy.

Bardziej szczegółowo

Programowanie Obiektowew języku C++ Zadania L4

Programowanie Obiektowew języku C++ Zadania L4 Programowanie Obiektowew języku C++ Zadania L4 Mirosław Głowacki 1,2 1 Akademia Górniczo-Hutnicza im. Stanisława Staszica w Ktrakowie Wydział Inżynierii Metali i Informatyki Stosowanej Katedra Informatyki

Bardziej szczegółowo

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

METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02 METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE Wykład 02 NAJPROSTSZY PROGRAM /* (Prawie) najprostszy przykład programu w C */ /*==================*/ /* Między tymi znaczkami można pisać, co się

Bardziej szczegółowo

Podstawy Programowania

Podstawy Programowania Podstawy Programowania Monika Wrzosek Instytut Matematyki Uniwersytet Gdański Matematyka 2017/18 Monika Wrzosek (IM UG) Podstawy Programowania 1 / 119 Sprawy organizacyjne E-mail: mwrzosek@mat.ug.edu.pl

Bardziej szczegółowo

Wstęp do informatyki- wykład 9 Funkcje

Wstęp do informatyki- wykład 9 Funkcje 1 Wstęp do informatyki- wykład 9 Funkcje Treści prezentowane w wykładzie zostały oparte o: S. Prata, Język C++. Szkoła programowania. Wydanie VI, Helion, 2012 www.cplusplus.com Jerzy Grębosz, Opus magnum

Bardziej szczegółowo

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

JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM. Laboratorium 3. Instrukcje wyboru JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM Laboratorium 3 Instrukcje wyboru 1 INSTRUKCJE WYBORU Instrukcje sterujące to takie instrukcje, które sterują przebiegiem programu w zależności od spełnienia

Bardziej szczegółowo

Część XV C++ Ćwiczenie 1

Część XV C++ Ćwiczenie 1 Część XV C++ Instrukcja break przerywa działanie tylko tej pętli, w ciele której została wywołana. Jeśli więc wywołamy break w pętli zagnieżdżonej w innej pętli, zostanie przerwane działanie tylko tej

Bardziej szczegółowo

Informacje wstępne #include <nazwa> - derektywa procesora umożliwiająca włączenie do programu pliku o podanej nazwie. Typy danych: char, signed char

Informacje wstępne #include <nazwa> - derektywa procesora umożliwiająca włączenie do programu pliku o podanej nazwie. Typy danych: char, signed char Programowanie C++ Informacje wstępne #include - derektywa procesora umożliwiająca włączenie do programu pliku o podanej nazwie. Typy danych: char, signed char = -128 do 127, unsigned char = od

Bardziej szczegółowo

6. Pętle while. Przykłady

6. Pętle while. Przykłady 6. Pętle while Przykłady 6.1. Napisz program, który, bez użycia rekurencji, wypisze na ekran liczby naturalne od pewnego danego n do 0 włącznie, w kolejności malejącej, po jednej liczbie na linię. Uwaga!

Bardziej szczegółowo

Materiał. Typy zmiennych Instrukcje warunkowe Pętle Tablice statyczne Funkcje Wskaźniki Referencje Tablice dynamiczne Typ string Przeładowania funkcji

Materiał. Typy zmiennych Instrukcje warunkowe Pętle Tablice statyczne Funkcje Wskaźniki Referencje Tablice dynamiczne Typ string Przeładowania funkcji Podstawy informatyki Informatyka stosowana - studia niestacjonarne - Zajęcia nr 5 Grzegorz Smyk Wydział Inżynierii Metali i Informatyki Przemysłowej Akademia Górniczo Hutnicza im. Stanisława Staszica w

Bardziej szczegółowo

Podstawy Informatyki. Inżynieria Ciepła, I rok. Wykład 10 Kurs C++

Podstawy Informatyki. Inżynieria Ciepła, I rok. Wykład 10 Kurs C++ Podstawy Informatyki Inżynieria Ciepła, I rok Wykład 10 Kurs C++ Historia Lata 70-te XX w język C (do pisania systemów operacyjnych) "The C programming language" B. Kernighan, D. Ritchie pierwszy standard

Bardziej szczegółowo

tablica: dane_liczbowe

tablica: dane_liczbowe TABLICE W JĘZYKU C/C++ tablica: dane_liczbowe float dane_liczbowe[5]; dane_liczbowe[0]=12.5; dane_liczbowe[1]=-0.2; dane_liczbowe[2]= 8.0;... 12.5-0.2 8.0...... 0 1 2 3 4 indeksy/numery elementów Tablica

Bardziej szczegółowo

Po uruchomieniu programu nasza litera zostanie wyświetlona na ekranie

Po uruchomieniu programu nasza litera zostanie wyświetlona na ekranie Część X C++ Typ znakowy służy do reprezentacji pojedynczych znaków ASCII, czyli liter, cyfr, znaków przestankowych i innych specjalnych znaków widocznych na naszej klawiaturze (oraz wielu innych, których

Bardziej szczegółowo

Wstęp do informatyki- wykład 6

Wstęp do informatyki- wykład 6 1 Wstęp do informatyki- wykład 6 Operatory przypisania, złożone operatory przypisania, operator przecinkowy Pętla while i do..while Treści prezentowane w wykładzie zostały oparte o: S. Prata, Język C++.

Bardziej szczegółowo

Programowanie C++ Wykład 2 - podstawy języka C++ dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

Programowanie C++ Wykład 2 - podstawy języka C++ dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki Wykład 2 - podstawy języka C++ Instytut Automatyki i Robotyki Warszawa, 2014 Wstęp Plan wykładu Struktura programu. Zmienne i ich nazwy, podstawowe typy: całkowite, rzeczywiste, znakowe i napisowe. Instrukcje:

Bardziej szczegółowo

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

Opis zagadnieo 1-3. Iteracja, rekurencja i ich realizacja Opis zagadnieo 1-3 Iteracja, rekurencja i ich realizacja Iteracja Iteracja to czynnośd powtarzania (najczęściej wielokrotnego) tej samej instrukcji (albo wielu instrukcji) w pętli. Mianem iteracji określa

Bardziej szczegółowo

Programowanie komputerowe. Zajęcia 3

Programowanie komputerowe. Zajęcia 3 Programowanie komputerowe Zajęcia 3 Instrukcje przypisania Poza zwykłą instrukcją przypisania, powodującą ustawienie wartości zmiennej na podane wyrażenie, istnieje wiele innych, np. += dodaj, a+=b jest

Bardziej szczegółowo

Programowanie Obiektowew języku C++ Zadania L9

Programowanie Obiektowew języku C++ Zadania L9 Programowanie Obiektowew języku C++ Zadania L9 Mirosław Głowacki 1,2 1 Akademia Górniczo-Hutnicza im. Stanisława Staszica w Ktrakowie Wydział Inżynierii Metali i Informatyki Stosowanej Katedra Informatyki

Bardziej szczegółowo

Wstęp do informatyki- wykład 11 Funkcje

Wstęp do informatyki- wykład 11 Funkcje 1 Wstęp do informatyki- wykład 11 Funkcje Treści prezentowane w wykładzie zostały oparte o: S. Prata, Język C++. Szkoła programowania. Wydanie VI, Helion, 2012 www.cplusplus.com Jerzy Grębosz, Opus magnum

Bardziej szczegółowo

Zadeklarowanie tablicy przypomina analogiczną operację dla zwykłych (skalarnych) zmiennych. Może zatem wyglądać na przykład tak:

Zadeklarowanie tablicy przypomina analogiczną operację dla zwykłych (skalarnych) zmiennych. Może zatem wyglądać na przykład tak: Tablice Tablice jednowymiarowe Jeżeli nasz zestaw danych składa się z wielu drobnych elementów tego samego rodzaju, jego najbardziej naturalnym ekwiwalentem w programowaniu będzie tablica. Tablica (ang.

Bardziej szczegółowo

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

Podstawy programowania. Wykład Pętle. Tablice. Krzysztof Banaś Podstawy programowania 1 Podstawy programowania. Wykład Pętle. Tablice. Krzysztof Banaś Podstawy programowania 1 Pętle Pętla jest konstrukcją sterującą stosowaną w celu wielokrotnego wykonania tego samego zestawu instrukcji jednokrotne

Bardziej szczegółowo

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

Podstawowe elementy proceduralne w C++ Program i wyjście. Zmienne i arytmetyka. Wskaźniki i tablice. Testy i pętle. Funkcje. Podstawowe elementy proceduralne w C++ Program i wyjście Zmienne i arytmetyka Wskaźniki i tablice Testy i pętle Funkcje Pierwszy program // Niezbędne zaklęcia przygotowawcze ;-) #include using

Bardziej szczegółowo

Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach?

Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach? Część XVIII C++ Funkcje Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach? Umiemy już podzielić nasz

Bardziej szczegółowo

Programowanie w C++ Wykład 5. Katarzyna Grzelak. 16 kwietnia K.Grzelak (Wykład 1) Programowanie w C++ 1 / 27

Programowanie w C++ Wykład 5. Katarzyna Grzelak. 16 kwietnia K.Grzelak (Wykład 1) Programowanie w C++ 1 / 27 Programowanie w C++ Wykład 5 Katarzyna Grzelak 16 kwietnia 2018 K.Grzelak (Wykład 1) Programowanie w C++ 1 / 27 Pojęcia z poprzednich wykładów Tablica to ciag obiektów tego samego typu, zajmujacy ciagły

Bardziej szczegółowo

Programowanie Obiektowew języku C++ Zadania L4

Programowanie Obiektowew języku C++ Zadania L4 Programowanie Obiektowew języku C++ Zadania L4 Mirosław Głowacki 1,2 1 Akademia Górniczo-Hutnicza im. Stanisława Staszica w Ktrakowie Wydział Inżynierii Metali i Informatyki Stosowanej Katedra Informatyki

Bardziej szczegółowo

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

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 programowania Wykład: 5 Instrukcje sterujące c.d. Stałe, Typy zmiennych c.d. 1 dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD programowania w C++ Instrukcje sterujące 2 dr Artur Bartoszewski

Bardziej szczegółowo

2. Zmienne i stałe. Przykłady Napisz program, który wypisze na ekran wynik dzielenia 281 i 117 w postaci liczby mieszanej (tj. 2 47/117).

2. Zmienne i stałe. Przykłady Napisz program, który wypisze na ekran wynik dzielenia 281 i 117 w postaci liczby mieszanej (tj. 2 47/117). 2. Zmienne i stałe Przykłady 2.1. Napisz program, który wypisze na ekran wynik dzielenia 281 i 117 w postaci liczby mieszanej (tj. 2 47/117). 5 int a = 281; int b = 117; 7 8 cout

Bardziej szczegółowo

lekcja 8a Gry komputerowe MasterMind

lekcja 8a Gry komputerowe MasterMind lekcja 8a Gry komputerowe MasterMind Posiadamy już elementarną wiedzę w zakresie programowania. Pora więc zabrać się za rozwiązywanie problemów bardziej złożonych, które wymagają zastosowania typowych

Bardziej szczegółowo

ZASADY PROGRAMOWANIA KOMPUTERÓW

ZASADY PROGRAMOWANIA KOMPUTERÓW POLITECHNIKA WARSZAWSKA Instytut Automatyki i i Robotyki ZASADY PROGRAMOWANIA KOMPUTERÓW Język Język programowania: C/C++ Środowisko programistyczne: C++Builder 6 Wykład 9.. Wskaźniki i i zmienne dynamiczne.

Bardziej szczegółowo

Programowanie strukturalne i obiektowe. Funkcje

Programowanie strukturalne i obiektowe. Funkcje Funkcje Często w programach spotykamy się z sytuacją, kiedy chcemy wykonać określoną czynność kilka razy np. dodać dwie liczby w trzech miejscach w programie. Oczywiście moglibyśmy to zrobić pisząc trzy

Bardziej szczegółowo

Podstawy informatyki. Elektrotechnika I rok. Język C++ Operacje na danych - wskaźniki Instrukcja do ćwiczenia

Podstawy informatyki. Elektrotechnika I rok. Język C++ Operacje na danych - wskaźniki Instrukcja do ćwiczenia Podstawy informatyki Elektrotechnika I rok Język C++ Operacje na danych - wskaźniki Instrukcja do ćwiczenia Katedra Energoelektroniki i Automatyki Systemów Przetwarzania Energii AGH Kraków 2017 Tematyka

Bardziej szczegółowo

Nazwa implementacji: Nauka języka Python pętla for. Autor: Piotr Fiorek

Nazwa implementacji: Nauka języka Python pętla for. Autor: Piotr Fiorek Nazwa implementacji: Nauka języka Python pętla for Autor: Piotr Fiorek Opis implementacji: Poznanie innego rodzaju pętli, jaką jest pętla for w języku Python. Składnia pętli for jest następująca: for

Bardziej szczegółowo

Podstawy programowania w języku C++ Zadania - dziedziczenie i polimorfizm

Podstawy programowania w języku C++ Zadania - dziedziczenie i polimorfizm Podstawy programowania w języku C++ Zadania - dziedziczenie i polimorfizm Mirosław Głowacki 1,2 1 Akademia Górniczo-Hutnicza im. Stanisława Staszica w Ktrakowie Wydział Inżynierii Metali i Informatyki

Bardziej szczegółowo

Liczby losowe i pętla while w języku Python

Liczby losowe i pętla while w języku Python Liczby losowe i pętla while w języku Python Mateusz Miotk 17 stycznia 2017 Instytut Informatyki UG 1 Generowanie liczb losowych Na ogół programy są spójne i prowadzą do przewidywanych wyników. Czasem jednak

Bardziej szczegółowo

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

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 Języki C i C++ Wykład: 2 Wstęp Instrukcje sterujące 1 dr Artur Bartoszewski - Języki C i C++, sem. 1I- WYKŁAD programowania w C++ Instrukcje sterujące 2 Pętla for for ( instrukcja_ini ; wyrazenie_warunkowe

Bardziej szczegółowo

Proste programy w C++ zadania

Proste programy w C++ zadania Proste programy w C++ zadania Zbiór zadao do samodzielnego rozwiązania stanowiący powtórzenie materiału. Podstawy C++ Budowa programu w C++ Dyrektywy preprocesora Usunięcie dublujących się nazw Częśd główna

Bardziej szczegółowo

Kontrola przebiegu programu

Kontrola przebiegu programu Kontrola przebiegu programu Wykład 9 Instrukcje sterujące: pętle rozgałęzienia skoki PRZYPOMINAJKA Zadanie : Zaprojektuj rekurencyjny przepis na wyznaczenie największej takiej liczby m, że 2 m jest podzielnikiem

Bardziej szczegółowo

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

Instrukcje warunkowe i skoku. Spotkanie 2. Wyrażenia i operatory logiczne. Instrukcje warunkowe: if else, switch. Instrukcje warunkowe i skoku. Spotkanie 2 Dr inż. Dariusz JĘDRZEJCZYK Wyrażenia i operatory logiczne Instrukcje warunkowe: if else, switch Przykłady 11/3/2016 AGH, Katedra Informatyki Stosowanej i Modelowania

Bardziej szczegółowo

Niezwykłe tablice Poznane typy danych pozwalają przechowywać pojedyncze liczby. Dzięki tablicom zgromadzimy wiele wartości w jednym miejscu.

Niezwykłe tablice Poznane typy danych pozwalają przechowywać pojedyncze liczby. Dzięki tablicom zgromadzimy wiele wartości w jednym miejscu. Część XIX C++ w Każda poznana do tej pory zmienna może przechowywać jedną liczbę. Jeśli zaczniemy pisać bardziej rozbudowane programy, okaże się to niewystarczające. Warto więc poznać zmienne, które mogą

Bardziej szczegółowo

Komentarze w PHP (niewykonywane fragmenty tekstowe, będące informacją dla programisty)

Komentarze w PHP (niewykonywane fragmenty tekstowe, będące informacją dla programisty) Komentarze w PHP (niewykonywane fragmenty tekstowe, będące informacją dla programisty) // to jest pojedynczy komentarz (1-linijkowy) to jest wielolinijkowy komentarz Budowa "czystego" skryptu PHP (tak

Bardziej szczegółowo

Podstawy języka C++ Maciej Trzebiński. Praktyki studenckie na LHC IFJ PAN. Instytut Fizyki Jądrowej Polskiej Akademii Nauk. M. Trzebiński C++ 1/16

Podstawy języka C++ Maciej Trzebiński. Praktyki studenckie na LHC IFJ PAN. Instytut Fizyki Jądrowej Polskiej Akademii Nauk. M. Trzebiński C++ 1/16 M. Trzebiński C++ 1/16 Podstawy języka C++ Maciej Trzebiński Instytut Fizyki Jądrowej Polskiej Akademii Nauk Praktyki studenckie na LHC IFJ PAN 6lipca2015 Uruchomienie maszyny w CC1 M. Trzebiński C++ 2/16

Bardziej szczegółowo

Wstęp do informatyki- wykład 7

Wstęp do informatyki- wykład 7 1 Wstęp do informatyki- wykład 7 Operatory operator przecinkowy, operator zasięgu Pętla for Instrukcja break i continue Treści prezentowane w wykładzie zostały oparte o: S. Prata, Język C++. Szkoła programowania.

Bardziej szczegółowo

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

Informatyka I. Wykład 3. Sterowanie wykonaniem programu. Instrukcje warunkowe Instrukcje pętli. Dr inż. Andrzej Czerepicki Informatyka I Wykład 3. Sterowanie wykonaniem programu. Instrukcje warunkowe Instrukcje pętli Dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2018 Operacje relacji (porównania) A

Bardziej szczegółowo

Wskaźniki i dynamiczna alokacja pamięci. Spotkanie 4. Wskaźniki. Dynamiczna alokacja pamięci. Przykłady

Wskaźniki i dynamiczna alokacja pamięci. Spotkanie 4. Wskaźniki. Dynamiczna alokacja pamięci. Przykłady Wskaźniki i dynamiczna alokacja pamięci. Spotkanie 4 Dr inż. Dariusz JĘDRZEJCZYK Wskaźniki Dynamiczna alokacja pamięci Przykłady 11/3/2016 AGH, Katedra Informatyki Stosowanej i Modelowania 2 Wskaźnik to

Bardziej szczegółowo

4. Funkcje. Przykłady

4. Funkcje. Przykłady 4. Funkcje Przykłady 4.1. Napisz funkcję kwadrat, która przyjmuje jeden argument: długość boku kwadratu i zwraca pole jego powierzchni. Używając tej funkcji napisz program, który obliczy pole powierzchni

Bardziej szczegółowo

Programowanie obiektowe W3

Programowanie obiektowe W3 Programowanie obiektowe W3 Przegląd typów strukturalnych w C++ : tablice statyczne i dynamiczne Dr hab. inż. Lucyna Leniowska, prof. UR Zakład Mechatroniki, Automatyki i Optoelektroniki Typy złożone: tablice

Bardziej szczegółowo

Lekcja : Tablice + pętle

Lekcja : Tablice + pętle Lekcja : Tablice + pętle Wprowadzenie Oczywiście wiesz już jak dużo można osiągnąć za pomocą tablic oraz jak dużo można osiągnąć za pomocą pętli, jednak tak naprawdę prawdziwe możliwości daje połączenie

Bardziej szczegółowo

3. Instrukcje warunkowe

3. Instrukcje warunkowe . Instrukcje warunkowe Przykłady.1. Napisz program, który pobierze od użytkownika liczbę i wypisze na ekran słowo ujemna lub nieujemna, w zależności od tego czy dana liczba jest ujemna czy nie. 1 #include

Bardziej szczegółowo

Podstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1

Podstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1 Podstawy programowania. Wykład Funkcje Krzysztof Banaś Podstawy programowania 1 Programowanie proceduralne Pojęcie procedury (funkcji) programowanie proceduralne realizacja określonego zadania specyfikacja

Bardziej szczegółowo