Tablice. Monika Wrzosek (IM UG) Podstawy Programowania 96 / 119
|
|
- Krystian Wrona
- 5 lat temu
- Przeglądów:
Transkrypt
1 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 matematyka w latach wartości typu short opisujących liczbę dni w kolejnych miesiącach. 365 wartości typu float mówiących o wydatkach na jedzenie w ciągu kolejnych dni roku. Każda wartość jest zapisywana w osobnym elemencie tablicy, a komputer wszystkie te elementy umieszcza w pamięci jeden za drugim. Tablica jest przykładem typu pochodnego. Aby utworzyć tablicę, używa się deklaracji. Deklaracja tablicy powinna zawierać trzy elementy: typ wartości poszczególnych elementów, nazwę tablicy, liczbę elementów tablicy. Monika Wrzosek (IM UG) Podstawy Programowania 96 / 119
2 Tablice Deklaracja s h o r t m i e s i a c e [ 1 2 ] ; tworzy tablicę o nazwie miesiace mającą 12 elementów/komórek, z których każda zawiera wartość typu short. Deklaracja tablicy nazwatypu nazwatablicy[wielkośćtablicy] Wyrażenie wielkośćtablicy, określające liczbę elementów, może być jedną z poniższych wielkości: stałą całkowitą większą od zera (np. 12), wartością const, wyrażeniem stałym (np. 5*sizeof(int)), w którym wszystkie wartości są znane w chwili kompilacji. W szczególności wielkośćtablicy nie może być zmienną, której wartość jest ustawiana w trakcie działania programu. Monika Wrzosek (IM UG) Podstawy Programowania 97 / 119
3 Rozmiar tablicy Kompilator musi wiedzieć, ile miejsca ma zarezerwować na daną tablicę. Poniższy kod jest nieprawidłowy. i n t n ; cout << " Podaj r o z m i a r t a b l i c y : " ; c i n >> n ; i n t tab [ n ] ; Błąd! Wartość n nie jest znana w trakcie kompilacji. Znana jest dopiero w trakcie działania programu (gdy użytkownik wprowadzi ją z klawiatury). Uwaga: Niektóre kompilatory posiadają rozszerzenia umożliwiające skompilowanie i poprawne działanie powyższego przykładu. Z takich kompilatorów korzysta m.in. Dev C++. Kompilator Microsoft Visual Studio zgłosi jednak błąd. Warto mieć jednak świadomość, że tablice o zmiennym rozmiarze (VLA - variable length arrays) nie są częścią standardu C++11. Monika Wrzosek (IM UG) Podstawy Programowania 98 / 119
4 Rozmiar tablicy Zaletą tablic statycznych (tablic o stałym rozmiarze) jest łatwość ich użycia, natomiast dużą wadą jest brak możliwości sterowania ich rozmiarem. Z programu, w którym zdefiniujemy tablicę i n t tab [ ] ; nie skorzysta użytkownik, który zechce wprowadzić 101 liczb. Standard C++11 umożliwia tworzenie tablic do przechowywania danych, których liczby nie jesteśmy w stanie dokładnie przewidzieć w trakcie pisania programu. Jest to tzw. dynamiczna alokacja tablicy. To użytkownik, a nie kompilator, samodzielnie przydziela potrzebny obszar pamięci na tablicę, a na koniec zwalnia go. Aby utworzyć tablicę dynamiczną potrzebne są wskaźniki (o czym będzie później). Uwaga: Inny sposób to użycie bibliotecznej klasy kontenerowej vector. Monika Wrzosek (IM UG) Podstawy Programowania 99 / 119
5 Tablice Do każdego elementu tablicy odwołujemy się z osobna. Służą do tego indeksy pozwalające ponumerować elementy. Elementy indeksujemy zawsze od zera. Indeks podaje się w nawiasach kwadratowych; np. miesiace[0] to pierwszy element tablicy miesiace, a miesiace[11] to element ostatni. Jak widać, indeks ostatniego elementu jest o jeden mniejszy od liczby elementów w tablicy. Wobec tego deklaracja tablicy umożliwia utworzenie wielu zmiennych w jednej deklaracji; za pomocą indeksu można później wskazywać poszczególne elementy. Kompilator nie sprawdza, czy użyto prawidłowych indeksów; np. kompilator nie zgłosi błędu, jeśli odwołamy się do nieistniejącego elementu miesiace[100]. Jednak przypisanie takiemu elementowi wartości może spowodować kłopoty, w szczególności uszkodzić dane lub kod i ewentualnie zawiesić program. Monika Wrzosek (IM UG) Podstawy Programowania 100 / 119
6 Tablice Przykład prawidłowej deklaracji tablicy i ustawienia jej wartości: i n t tab [ 2 ] ; tab [ 0 ] = 5 ; tab [ 1 ] = 3 ; Przykład nieprawidłowego wypełnienia tablicy: i n t tab [ 2 ] ; tab [ 0 ] = 5 ; tab [ 1 ] = 3 ; tab [ 2 ] = 6 ; Błąd! Element tab[2] nie istnieje. Kompilator nie zgłosi błędu, jednak instrukcja tab[2] = 6; może zniszczyć w pamięci ważną daną. Monika Wrzosek (IM UG) Podstawy Programowania 101 / 119
7 #i n c l u d e <i o s t r e a m > using namespace s t d ; i n t main ( ) i n t cena [ 3 ] ; cena [ 0 ] = 6 ; cena [ 1 ] = 8 ; cena [ 2 ] = 5 ; cout << " T a b l i c a cena z a w i e r a warto ś c i : " << cena [ 0 ] << ", " << cena [ 1 ] << " i " << cena [ 2 ] << e n d l ; i n t i l e [ 3 ] = 2, 1, 2 ; i n t k o s z t = cena [ 0 ] i l e [ 0 ] + cena [ 1 ] i l e [ 1 ] + cena [ 2 ] i l e [ 2 ] ; cout << "Wydano " << k o s z t << " z ł. " << e n d l ; cout << " Rozmiar t a b l i c y i l e : " << s i z e o f ( i l e ) << " b a j t ów" ; cout << " \ nrozmiar j e d n e g o elementu : " << s i z e o f ( i l e [ 0 ] ) ; T a b l i c a cena z a w i e r a warto ś c i : 6, 8 i 5 Wydano 30 z ł. Rozmiar t a b l i c y i l e : 12 b a j t ów. Rozmiar j e d n e g o elementu : 4 Monika Wrzosek (IM UG) Podstawy Programowania 102 / 119
8 Tablice Program najpierw tworzy trójelementową tablicę cena; jej elementy mają indeksy 0, 1 i 2. Pierwszy element tablicy (tzn. element o indeksie 0) ma wartość 6, drugi (o indeksie 1) ma wartość 8, ostatni trzeci (o indeksie 2) wartość 5: cena [ 0 ] = 6 ; cena [ 1 ] = 8 ; cena [ 2 ] = 5 ; Każdy element tej tablicy to liczba typu int ze wszystkimi jej cechami, zatem program może przypisywać elementom wartości, dodawać elementy, mnożyć je i wyświetlać ich wartości. Tablicę można też wypełnić wartościami w chwili jej tworzenia (inicjalizacja): i n t i l e [ 3 ] = 2, 1, 2 ; Monika Wrzosek (IM UG) Podstawy Programowania 103 / 119
9 Tablice Tablice można inicjalizować tylko podczas definiowania tablicy; nie można tego zrobić później: i n t A [ 4 ] ; A [ 4 ] = 2, 2, 3, 2 ; nieprawidłowo i n t A [ 4 ] = 2, 2, 3, 2 ; prawidłowo Nie można przypisać jednej tablicy w całości do innej tablicy: i n t A [ 4 ] = 2, 2, 3, 2 ; i n t B [ 4 ] = A ; nieprawidłowo i n t A [ 4 ] = 2, 2, 3, 2 ; i n t B [ 4 ] ; B = A nieprawidłowo Monika Wrzosek (IM UG) Podstawy Programowania 104 / 119
10 Tablice Podczas inicjalizacji tablicy można podać mniej wartości niż ma tablica: i n t A [ 5 ] = 3, 2 ; Wtedy dwa pierwsze elementy otrzymają wartości kolejno 3 i 2, a pozostałe kompilator wypełni zerami. Powyższa inicjalizacja jest równoważna następującej: i n t A [ 5 ] = 3, 2, 0, 0, 0 ; Inicjalizacja i n t A [ 5 ] = 3, 2, 6, 0, 1, 2 ; zakończy się błędem: na liście jest 6 liczb, a tablica ma rozmiar 5. Jeśli w inicjalizacji tablicy nawiasy kwadratowe pozostawimy puste, kompilator policzy elementy inicjalizujące i ustawi odpowiednią wielkość tablicy: i n t A [ ] = 1, 5, 2, 1, 1, 4 ; Kompilator utworzy 6-elementową tablicę A. Monika Wrzosek (IM UG) Podstawy Programowania 105 / 119
11 Wypełnianie tablicy w pętli (1) #i n c l u d e <i o s t r e a m > using namespace s t d ; i n t main ( ) i n t tab [ ], n ; cout << " Podaj r o z m i a r t a b l i c y ( n i e wi ę k s z y n i ż ) : " ; c i n >> n ; //Wype ł n i e n i e t a b l i c y warto ś c i a m i z k l a w i a t u r y cout << " Podaj e l e m e n t y t a b l i c y : " << e n d l ; f o r ( i n t i = 0 ; i <= n 1; i ++) cout << " tab [ " << i << " ]= " ; c i n >> tab [ i ] ; //Wyś w i e t l e n i e zawarto ś c i t a b l i c y cout << " Oto e l e m e n t y t a b l i c y : " << e n d l ; f o r ( i n t i = 0 ; i < n ; i ++) cout << tab [ i ] << " " ; Monika Wrzosek (IM UG) Podstawy Programowania 106 / 119
12 Wypełnianie tablicy w pętli (1) Przykładowy wynik działania programu: Podaj r o z m i a r t a b l i c y ( n i e wi ę k s z y n i ż ) : 5 Podaj e l e m e n t y t a b l i c y : tab [0]= 2 tab [1]= 3 tab [2]= 1 tab [3]= 1 tab [4]= 3 Oto e l e m e n t y t a b l i c y : W programie utworzono tablicę 100-elementową, użytkownik nie musi jednak wykorzystać jej w całości. W tym celu wprowadza rzeczywisty rozmiar n (nie większy niż maksymalny = 100). Kolejne operacje wykonywane są na fragmencie tablicy wskazanym przez użytkownika, np: f o r ( i n t i = 0 ; i < n ; i ++) zamiast f o r ( i n t i = 0 ; i < 100 ; i ++) Monika Wrzosek (IM UG) Podstawy Programowania 107 / 119
13 Wypełnianie tablicy w pętli (2) #i n c l u d e <i o s t r e a m > #i n c l u d e <c s t d l i b > #i n c l u d e <ctime> using namespace s t d ; i n t main ( ) i n t tab [ ], a, b, n ; cout << " Podaj k o l e j n o pocz ą t e k i k o n i e c p r z e d z i a ł u : \n" ; c i n >> a >> b ; cout << " Podaj r o z m i a r t a b l i c y ( n i e wi ę k s z y n i ż ) : " ; c i n >> n ; //Wype ł n i e n i e t a b l i c y l i c z b a m i losowymi z p r z e d z i a ł u [ a, b ] s r a n d ( time (NULL ) ) ; f o r ( i n t i = 0 ; i <= n 1; i ++) tab [ i ] = rand ()%( b a + 1) + a ; cout << " Oto e l e m e n t y t a b l i c y : " << e n d l ; f o r ( i n t i = 0 ; i < n ; i ++) cout << tab [ i ] << " " ; Monika Wrzosek (IM UG) Podstawy Programowania 108 / 119
14 Wypełnianie tablicy w pętli (2) Przykładowy wynik działania programu: Podaj k o l e j n o pocz ą t e k i k o n i e c p r z e d z i a ł u : 0 9 Podaj r o z m i a r t a b l i c y ( n i e wi ę k s z y n i ż ) : 10 Oto e l e m e n t y t a b l i c y : Monika Wrzosek (IM UG) Podstawy Programowania 109 / 119
15 Program zlicza jedynki w n-elementowym ciągu binarnym. #i n c l u d e <i o s t r e a m > #i n c l u d e <c s t d l i b > #i n c l u d e <ctime> using namespace s t d ; i n t main ( ) i n t b i n [ ], n, i l e =0; cout << " Podaj r o z m i a r t a b l i c y ( n i e wi ę k s z y n i ż ) : " ; c i n >> n ; s r a n d ( time (NULL ) ) ; f o r ( i n t i = 0 ; i < n ; i ++) b i n [ i ] = rand ()%2; cout << " Oto e l e m e n t y t a b l i c y : " << e n d l ; f o r ( i n t i = 0 ; i < n ; i ++) cout << b i n [ i ] << " " ; f o r ( i n t i = 0 ; i < n ; i ++) i f ( b i n [ i ] == 1) i l e ++; cout << " \ n L i c z b a j e d y n e k w wylosowanym c i ągu to : " << i l e ; Monika Wrzosek (IM UG) Podstawy Programowania 110 / 119
16 Przykładowy wynik działania programu: Podaj r o z m i a r t a b l i c y ( n i e wi ę k s z y n i ż ) : 10 Oto e l e m e n t y t a b l i c y : L i c z b a j e d y n e k w wylosowanym c i ągu to : 4 Monika Wrzosek (IM UG) Podstawy Programowania 111 / 119
17 Tablice znakowe Definicja char tab [ 3 ] ; oznacza, że tab jest tablicą 3 elementów, będących znakami. #i n c l u d e <i o s t r e a m > using namespace s t d ; i n t main ( ) char tab [ 3 ] ; tab [ 0 ] = C ; tab [ 1 ] = + ; tab [ 2 ] = + ; f o r ( i n t i = 0 ; i < 3 ; i ++) cout << tab [ i ] ; C++ Monika Wrzosek (IM UG) Podstawy Programowania 112 / 119
18 Tablice znakowe W tablicy znakowej można również umieścić tekst. Wtedy po ciągu liter (a właściwie ich kodów liczbowych) następuję znak o kodzie 0 (NULL). Jest on po to, aby oznaczyć, gdzie kończy się ciąg liter. Na taki ciąg liter zakończony znakiem NULL mówimy string (łańcuch). #i n c l u d e <i o s t r e a m > using namespace s t d ; i n t main ( ) char tab1 [ ] = " kot a l i " ; char tab2 [ ] = k, o, t,, a, l, i ; cout << " Rozmiar tab1 : " << s i z e o f ( tab1 ) << e n d l ; cout << " Rozmiar tab2 : " << s i z e o f ( tab2 ) ; Rozmiar tab 1 : 8 Rozmiar tab 2 : 7 Monika Wrzosek (IM UG) Podstawy Programowania 113 / 119
19 Program sprawdza, czy wprowadzony wyraz jest palindromem. #i n c l u d e <i o s t r e a m > using namespace s t d ; i n t main ( ) char tab [ ] ; cout << " Podaj wyraz : " ; c i n >> tab ; i n t n = 0 ; w h i l e ( tab [ n ]!= NULL) n++; // o b l i c z e n i e d ł ugo ś c i wyrazu i n t i = 0, j = n 1; w h i l e ( i < n /2) i f ( tab [ i ]!= tab [ j ] ) break ; i ++; j ; i f ( i < j ) cout << " Wyraz n i e j e s t palindromem. " ; e l s e cout << " Wyraz j e s t palindromem. " ; Monika Wrzosek (IM UG) Podstawy Programowania 114 / 119
20 Przykładowe wyniki działania programu: Podaj wyraz : k a j a k Wyraz j e s t palindromem. Podaj wyraz : owocowo Wyraz j e s t palindromem. Podaj wyraz : anna Wyraz j e s t palindromem. Podaj wyraz : programowanie Wyraz n i e j e s t palindromem. Monika Wrzosek (IM UG) Podstawy Programowania 115 / 119
21 Tablice dwuwymiarowe Definicja i n t tab [ 3 ] [ 5 ] ; oznacza, że tab jest tablicą 3-elementową, a każdy z tych elementów jest 5-elementową tablicą int. Pierwszy element tab[0], to tab[0][0] i jest to już liczba typu int. Aby zatem sięgnąć po element typu int, potrzebujemy dwóch indeksów. O pierwszym indeksie można myśleć jak o wyborze wiersza, o drugim jak o wyborze kolumny. Tablicę tab można widzieć jako macierz o 3 wierszach i 5 kolumnach. Poszczególne jej elementy to: tab[0][0] tab[0][1] tab[0][2] tab[0][3] tab[0][4] tab[1][0] tab[1][1] tab[1][2] tab[1][3] tab[1][4] tab[2][0] tab[2][1] tab[2][2] tab[2][3] tab[2][4] Monika Wrzosek (IM UG) Podstawy Programowania 116 / 119
22 Tablice dwuwymiarowe Kiedy tworzymy tablicę dwuwymiarową, możemy zainicjalizować wszystkie jej elementy. Sposób inicjalizacji wynika ze sposobu inicjalizacji tablic jednowymiarowych. Przykład inicjalizacji tablicy jednowymiarowej: i n t A [ 5 ] = 2, 3, 1, 0, 1 ; W przypadku tablic dwuwymiarowych każdy element sam z siebie jest tablicą, więc inicjalizujemy go tak jak to pokazano powyżej. Wobec tego inicjalizacja będzie zawierała listę inicjalizacji tablic jednowymiarowych ujętą w nawiasy i rozdzieloną przecinkami: i n t tab [ 3 ] [ 5 ] = 2, 3, 1, 0, 1, // warto ś c i tab [ 0 ] 5, 7, 3, 6, 6, // warto ś c i tab [ 1 ] 4, 1, 2, 8, 3 // warto ś c i tab [ 2 ] ; Monika Wrzosek (IM UG) Podstawy Programowania 117 / 119
23 Tablice dwuwymiarowe Inicjalizację i n t tab [ 3 ] [ 5 ] = 2, 3, 1, 0, 1, 5, 7, 3, 6, 6, 4, 1, 2, 8, 3 ; można zapisać w skróconej formie i n t tab [ 3 ] [ 5 ] = 2, 3, 1, 0, 1, 5, 7, 3, 6, 6, 4, 1, 2, 8, 3 ; a nawet i n t tab [ ] [ 5 ] = 2, 3, 1, 0, 1, 5, 7, 3, 6, 6, 4, 1, 2, 8, 3 ; Elementy tablicy wielowymiarowej umieszczane są kolejno w pamięci komputera tak, że najszybciej zmienia się najbardziej skrajny prawy indeks. Oznacza to, że tablica przechowywana jest "rzędami". Monika Wrzosek (IM UG) Podstawy Programowania 118 / 119
24 #i n c l u d e <i o s t r e a m > #i n c l u d e <c s t d l i b > #i n c l u d e <ctime> using namespace s t d ; i n t main ( ) i n t tab [ 1 0 ] [ 1 0 ], n, m; cout << " Podaj l i c z b ę w i e r s z y ( n<=10): " ; c i n >> n ; cout << " Podaj l i c z b ę kolumn (m<=10): " ; c i n >> m; // wype ł n i e n i e m a c i e r z y l i c z b a m i losowymi 0 9 s r a n d ( time (NULL ) ) ; f o r ( i n t i = 0 ; i < n ; i ++) f o r ( i n t j = 0 ; j < m; j ++) tab [ i ] [ j ] = rand ()%10; //wy ś w i e t l e n i e m a c i e r z y f o r ( i n t i = 0 ; i < n ; i ++) f o r ( i n t j = 0 ; j < m; j ++) cout << tab [ i ] [ j ] << " " ; cout << e n d l ; Monika Wrzosek (IM UG) Podstawy Programowania 119 / 119
25 /************************************************/ /* Program sortuje tablicę liczb calkowitych */ /* w porządku niemalejącym. */ /* Algorytm sortowania przez wstawianie. */ /************************************************/ #include <iostream> using namespace std; int main() const int max_n = 100; int A[max_n], n; // wczytanie danych cout << "Ile liczb chcesz posortować? (max=100) "; cin >> n; cout << "Wprowadź liczby " << endl; for (int i = 0; i < n; i++) cout << "A[" << i << "] = "; cin >> A[i]; // wypisanie tabeli cout << "Tabela przed sortowaniem:" << endl; for (int i = 0; i < n; i++) cout << A[i] << " "; // sortowanie przez wstawianie int i, j, pom; for (i = 0; i < n-1; i++) j = i + 1; pom = A[j]; while ((j > 0) && (A[j-1] > pom)) A[j] = A[j-1]; j--; A[j] = pom; // wypisanie posortowanej tabeli cout << "\ntabela po sortowaniu:" << endl; for (i = 0; i < n; i++) cout << A[i] << " "; PRZYKŁAD DZIAŁANIA PROGRAMU: Ile liczb chcesz posortować? (max=100) 6 Wprowadź liczby A[0] = 5 A[1] = 2 A[2] = 8 A[3] = 0 A[4] = 3 A[5] = 6 Tabela przed sortowaniem: Tabela po sortowaniu:
26 /********************************************** */ /* Program sortuje tablicę liczb całkowitych */ /* w porządku niemalejącym. */ /* Algorytm sortowania bąbelkowego. */ /********************************************** */ #include <iostream> using namespace std; int main() const int max_n = 100; int A[max_n], n; // wczytanie danych cout << "Ile liczb chcesz posortować? (max=100) "; cin >> n; cout << "Wprowadź liczby " << endl; for (int i = 0; i < n; i++) cout << "A[" << i << "] = "; cin >> A[i]; // wypisanie tabeli cout << "Tabela przed sortowaniem:" << endl; for (int i = 0; i < n; i++) cout << A[i] << " "; // sortowanie bąbelkowe int i, j, pom; for (i = 1; i <= n; i++) for (j = n-1; j >= i; j--) if (A[j] < A[j-1]) pom = A[j-1]; A[j-1] = A[j]; A[j] = pom; // wypisanie posortowanej tabeli cout << "\ntabela po sortowaniu:" << endl; for (i = 0; i < n; i++) cout << A[i] << " "; PRZYKŁAD DZIAŁANIA PROGRAMU: Ile liczb chcesz posortować? (max=100) 6 Wprowadź liczby A[0] = 5 A[1] = 2 A[2] = 8 A[3] = 0 A[4] = 3 A[5] = 6 Tabela przed sortowaniem: Tabela po sortowaniu:
27 /* Program zamienia miejscami elementy macierzy leżące po przeciwnej stronie */ /* prostej pionowej dzielącej macierz na dwie równe części. */ #include <iostream> #include <cstdlib> #include <ctime> using namespace std; int main () int A[10][10], n, m; int i, j, pom; cout << "Podaj liczbę wierszy (n<=10): "; cin >> n; cout << "Podaj liczbę kolumn (m<=10): "; cin >> m; //wypełnienie macierzy liczbami losowymi 0-9 srand(time(null)); for (int i = 0; i < n; i++) for (int j = 0; j < m; j++) A[i][j] = rand()%10; //wyświetlenie tablicy cout << "Wylosowana tablica:" << endl; for (int i = 0; i < n; i++) for (int j = 0; j < m; j++) cout << A[i][j] << " "; cout << endl; //zamiana elementów w tablicy for (i = 0; i < n; i++) for (j = 0; j < m/2; j++) pom = A[i][j]; A[i][j] = A[i][(m-1)-j]; A[i][(m-1)-j] = pom; //wyświetlenie tablicy zmodyfikowanej cout << "Tablica zmodyfikowana:" << endl; for (int i = 0; i < n; i++) for (int j = 0; j < m; j++) cout << A[i][j] << " "; cout << endl; PRZYKŁAD DZIAŁANIA PROGRAMU: Podaj liczbę wierszy (n<=10): 3 Podaj liczbę kolumn (m<=10): 7 Wylosowana tablica: Tablica zmodyfikowana:
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
Wstęp do programowania
wykład 7 Agata Półrola Wydział Matematyki i Informatyki UŁ sem. zimowy 2016/2017 Losowanie liczb całkowitych Dostępne biblioteki Najprostsze losowanie liczb całkowitych można wykonać za pomocą funkcji
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
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,
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
JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM. Wykład 5
JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM Wykład 5 1 SPECYFIKATOR const Specyfikator (przydomek) const: Umieszczenie przed nazwą zmiennej specyfikatora const w jej definicji informuje kompilator,
Tablice są typem pochodnym. Poniżej mamy przykłady deklaracji różnych tablic:
Tablice TEORIA Tablica to ciąg obiektów tego samego typu, które zajmują ciągły obszar w pamięci. Dzięki stosowaniu tablic, zamiast nazywania każdej z np. stu zmiennych osobno możemy zabudować tablicę 100-elementową,
Programowanie w C++ Wykład 5. Katarzyna Grzelak. 26 marca kwietnia K.Grzelak (Wykład 1) Programowanie w C++ 1 / 40
Programowanie w C++ Wykład 5 Katarzyna Grzelak 26 marca 2018 9 kwietnia 2018 K.Grzelak (Wykład 1) Programowanie w C++ 1 / 40 Pojęcia z poprzedniego wykładu Podział programu na funkcje podział na niezależne
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
Zmienne i struktury dynamiczne
Zmienne i struktury dynamiczne Zmienne dynamiczne są to zmienne, które tworzymy w trakcie działania programu za pomocą operatora new. Usuwa się je operatorem delete. Czas ich występowania w programie jest
Tablice mgr Tomasz Xięski, Instytut Informatyki, Uniwersytet Śląski Katowice, 2011
Tablice mgr Tomasz Xięski, Instytut Informatyki, Uniwersytet Śląski Katowice, 2011 Załóżmy, że uprawiamy jogging i chcemy monitorować swoje postępy. W tym celu napiszemy program, który zlicza, ile czasu
Podstawy algorytmiki i programowania - wykład 1 Tablice powtórzenie Tablice znaków Tablice dwuwymiarowe
Podstawy algorytmiki i programowania - wykład 1 Tablice powtórzenie Tablice znaków Tablice dwuwymiarowe Treści prezentowane w wykładzie zostały oparte o: S. Prata, Język C++. Szkoła programowania. Wydanie
Programowanie i struktury danych
Programowanie i struktury danych 1 / 30 STL Standard Template Library, STL (ang. = Standardowa Biblioteka Wzorców) biblioteka C++ zawierająca szablony (wzorce), które umożliwiają wielokrotne użycie. Główne
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
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
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
Wymiar musi być wyrażeniem stałym typu całkowitego, tzn. takim, które może obliczyć kompilator. Przykłady:
5 Tablice Tablica jest zestawem obiektów (zmiennych) tego samego typu, do których można się odwołać za pomocą wspólnej nazwy. Obiekty składowe tablicy noszą nazwę elementów tablicy. Dostęp do nich jest
Podstawy programowania. Wykład: 6. Tablice statyczne. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD
programowania Wykład: 6 Tablice statyczne 1 dr Artur Bartoszewski - programowania, sem 1 - WYKŁAD programowania Tablice 2 Tablice Klasyfikacja zmiennych statycznych prosty porządkowy rzeczywisty całkowity
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:
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ęść
TABLICE W JĘZYKU C/C++ typ_elementu nazwa_tablicy [wymiar_1][wymiar_2]... [wymiar_n] ;
Ogólna postać definicji tablicy: TABLICE W JĘZYKU C/C++ typ_elementu nazwa_tablicy [wymiar_1][wymiar_2]... [wymiar_n] ; np. int tablica [ 10 ]; // 10-cio elementowa tablica liczb całkowitych char tekst
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ą
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
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
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,
Wstęp do programowania
wykład 6 Agata Półrola Wydział Matematyki i Informatyki UŁ sem. zimowy 2017/2018 Losowanie liczb całkowitych Dostępne biblioteki Najprostsze losowanie liczb całkowitych można wykonać za pomocą funkcji
ZASADY PROGRAMOWANIA KOMPUTERÓW ZAP zima 2015
POLITECHNIKA WARSZAWSKA Instytut Automatyki i Robotyki ZASADY PROGRAMOWANIA KOMPUTERÓW ZAP zima 2015 Język programowania: Środowisko programistyczne: C/C++ Qt Wykład 4 : Napisy. Tablice dwuwymiarowe. Formaty
Wykład 1: Wskaźniki i zmienne dynamiczne
Programowanie obiektowe Wykład 1: Wskaźniki i zmienne dynamiczne 1 dr Artur Bartoszewski - Programowanie obiektowe, sem. 1I- WYKŁAD Podstawy programowania w C++ Wskaźniki 2 dr Artur Bartoszewski - Programowanie
typ y y p y z łoż o on o e n - tab a lice c e w iel e owym m ar a o r we, e stru r kt k ury
typy złożone- tablice wielowymiarowe, struktury Wykład 6 Deklarowanie wskaźników nazwa_typu * nazwa_wskaznika; WSKAŹNIKI: PRZYPOMNIENIE Przypisywanie wskaźnikom wartości double * pn = &zmienna_typu_double;
Programowanie w języku C++
Programowanie w języku C++ Część siódma Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót treści wykładu, lektura tych materiałów nie zastąpi
W języku C/C++ pomiędzy wskaźnikami a tablicami istnieje bardzo ścisły związek. Do onumerowania elementów w tablicy służą tzw. INDEKSY.
LEKCJA 12. Wskaźniki i tablice w C i C++. W czasie tej lekcji: 1. Dowiesz się więcej o zastosowaniu wskaźników. 2. Zrozumiesz, co mają wspólnego wskaźniki i tablice w języku C/C++. WSKAŹNIKI I TABLICE
Programowanie komputerowe. Zajęcia 5
Programowanie komputerowe Zajęcia 5 Tablice wielowymiarowe Tablicę dwuwymiarową możemy deklarować statycznie: typ nazwa[rozmiar1][rozmiar2]; Ma ona elementy nazwa[i][j] dla i=0,,rozmiar1-1, j=0,...,rozmiar2-1.
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 ()
O podstawowych operacjach na tablicach. Mateusz Ziółkowski, MBiU II
Wykład Ⅴ O podstawowych operacjach na tablicach Mateusz Ziółkowski, MBiU II Czym są tablice? Tablica (ang. array) to zespół równorzędnych zmiennych, posiadających wspólną nazwę. Jego poszczególne elementy
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
Pytania sprawdzające wiedzę z programowania C++
Pytania sprawdzające wiedzę z programowania C++ Wstęp 1. Zaprezentuj mechanikę tworzenia programu napisanego w języku C++. 2. Co to jest kompilacja? 3. Co to jest konsolidacja? 4. Co to jest kod wykonywalny?
Wskaźniki. nie są konieczne, ale dają językowi siłę i elastyczność są języki w których nie używa się wskaźników typ wskaźnikowy typ pochodny:
Wskaźniki nie są konieczne, ale dają językowi siłę i elastyczność są języki w których nie używa się wskaźników typ wskaźnikowy typ pochodny: typ nw; /* definicja zmiennej nw typu typ */ typ *w_nw; /* definicja
Język C++ zajęcia nr 2
Język C++ zajęcia nr 2 Inicjalizacja Definiowanie obiektu może być połączone z nadaniem mu wartości początkowej za pomocą inicjalizatora, który umieszczany jest po deklaratorze obiektu. W języku C++ inicjalizator
Ćwiczenie 7 z Podstaw programowania. Język C++, programy pisane w nieobiektowym stylu programowania. Zofia Kruczkiewicz
Ćwiczenie 7 z Podstaw programowania. Język C++, programy pisane w nieobiektowym stylu programowania Zofia Kruczkiewicz Zakres Funkcje przetwarzające teksty (biblioteka ) - tworzenie własnych
1 Wskaźniki. 1.1 Główne zastosowania wskaźników
1 Wskaźniki Wskaźnik (ang. pointer) jest obiektem (zmienną) przechowującym adres pamięci. Definiowanie wskaźników: typ *nazwa wskaznika; np.: int *wsk na x;, double *xxx;, char *znak;. Aby można było pracować
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
Podstawy programowania. Wykład: 8. Wskaźniki. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD
Podstawy programowania Wykład: 8 Wskaźniki 1 dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD Podstawy programowania w C++ Wskaźniki 2 Podstawy Pojęcie wskaźnika Wskaźnik na zmienną danego
MACIERZE. Sobiesiak Łukasz Wilczyńska Małgorzata
MACIERZE Sobiesiak Łukasz Wilczyńska Małgorzata Podstawowe pojęcia dotyczące macierzy Nie bez przyczyny zaczynamy od pojęcia macierzy, które jest niezwykle przydatne we wszystkich zastosowaniach, obliczeniach
1 Wskaźniki i zmienne dynamiczne, instrukcja przed zajęciami
1 Wskaźniki i zmienne dynamiczne, instrukcja przed zajęciami Celem tych zajęć jest zrozumienie i oswojenie z technikami programowania przy pomocy wskaźników w języku C++. Proszę przeczytać rozdział 8.
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
Programowanie Procedurale
Programowanie Procedurale Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 6 Bożena Woźna-Szcześniak (AJD) Programowanie Procedurale Wykład 6 1 / 27 Zbiór ctime zawiera deklarcję
int tab[5]; tab[1]; ciągły obszar pamięci, w którym umieszczone są elementy tego samego typu macierz [ ] - dwuargumentowy operator indeksowania
Rok akademicki 2013/2014, Pracownia nr 10 2/20 Informatyka 1 Tablica elementów ciągły obszar pamięci, w którym umieszczone są elementy tego samego typu Politechnika Białostocka - Wydział Elektryczny Elektrotechnika,
Typ użyty w deklaracji zmiennej decyduje o rodzaju informacji, a nazwa zmiennej symbolicznie opisuje wartość.
Typy danych Aby zapisać w komputerze jakąś daną, trzeba zapamiętać trzy jej podstawowe cechy: miejsce przechowywania informacji, przechowywaną wartość, rodzaj przechowywanej wartości. Typ użyty w deklaracji
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ł
Wstęp do Informatyki
Wstęp do Informatyki Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 11 Bożena Woźna-Szcześniak (AJD) Wstęp do Informatyki Wykład 11 1 / 52 Pętla for # i n c l u d e
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.
Podstawy algorytmiki i programowania - wykład 2 Tablice dwuwymiarowe cd Funkcje rekurencyjne
1 Podstawy algorytmiki i programowania - wykład 2 Tablice dwuwymiarowe cd Funkcje rekurencyjne Treści prezentowane w wykładzie zostały oparte o: S. Prata, Język C++. Szkoła programowania. Wydanie VI, Helion,
r. Tablice podstawowe operacje na tablicach
27.03.2014r. Tablice podstawowe operacje na tablicach Tablica - definicja Tablica (ang. array) lub wektor (ang. vector) jest złożoną strukturą danych (ang. compound data structure) zbudowaną z ciągu elementów
Laboratorium 3: Tablice, tablice znaków i funkcje operujące na ciągach znaków. dr inż. Arkadiusz Chrobot dr inż. Grzegorz Łukawski
Laboratorium 3: Tablice, tablice znaków i funkcje operujące na ciągach znaków dr inż. Arkadiusz Chrobot dr inż. Grzegorz Łukawski 7 kwietnia 2014 1. Wprowadzenie Pierwsza część instrukcji zawiera informacje
Tablice. int rozmiar; cout << Jaki ma być rozmiar tabeli? ; cin >> rozmiar; { int tablica[rozmiar]; /* TU JEST ŹLE */... }
Tablice grupa obiektów tego samego typu tablica tablica ciąg obiektów tego samego typu, zajmujący ciągły obszar w pamięci korzyść zamiast wielu definicji poszczególnych obiektów jedna wspólna; odniesienia
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
Tablice są typem pochodnym. Poniżej mamy przykłady deklaracji różnych tablic:
Tablice TEORIA Tablica to ciąg obiektów tego samego typu, które zajmują ciągły obszar w pamięci. Dzięki stosowaniu tablic, zamiast nazywania każdej z np. stu zmiennych osobno możemy zabudować tablicę 100-elementową,
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.
Lab 9 Podstawy Programowania
Lab 9 Podstawy Programowania (Kaja.Gutowska@cs.put.poznan.pl) Wszystkie kody/fragmenty kodów dostępne w osobnym pliku.txt. Materiały pomocnicze: Wskaźnik to specjalny rodzaj zmiennej, w której zapisany
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
Stałe, tablice dynamiczne i wielowymiarowe
Stałe, tablice dynamiczne i wielowymiarowe tylko do odczytu STAŁE - CONST tablice: const int dni_miesiaca[12]=31,28,31,30,31,30,31,31,30,31,30,31; const słowo kluczowe const sprawia, że wartość zmiennej
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
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
Wstęp do programowania INP001213Wcl rok akademicki 2018/19 semestr zimowy. Wykład 4. Karol Tarnowski A-1 p.
Wstęp do programowania INP001213Wcl rok akademicki 2018/19 semestr zimowy Wykład 4 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji Tablice Wskaźniki Adresy pamięci Operator adresu
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
Programowanie proceduralne w języku C++ Pętle, tablice
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
> C++ dynamiczna alokacja/rezerwacja/przydział pamięci. Dane: Iwona Polak. Uniwersytet Śląski Instytut Informatyki
> C++ dynamiczna alokacja/rezerwacja/przydział pamięci Dane: Iwona Polak iwona.polak@us.edu.pl Uniwersytet Śląski Instytut Informatyki 1429536600 > Dzisiejsze zajęcia sponsorują słówka: new oraz delete
Wstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy. Laboratorium 2. Karol Tarnowski A-1 p.
Wstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy Laboratorium 2 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji Komentarze Funkcja printf() Zmienne Łańcuchy
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
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
Wstęp do programowania. Wykład 1
Wstęp do programowania Wykład 1 1 / 49 Literatura Larry Ullman, Andreas Signer. Programowanie w języku C++. Walter Savitch, Kenrick Mock. Absolute C++. Jerzy Grębosz. Symfonia C++. Standard. Stephen Prata.
C-struktury wykład. Dorota Pylak
C-struktury wykład Dorota Pylak C-struktury W języku C++, jak w każdym języku obiektowym, mamy możliwość definiowania własnych typów danych, wraz z określeniem operacji, jakie na tych danych można wykonywać.
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
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
Podstawy programowania. Wykład: 9. Łańcuchy znaków. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD
Podstawy programowania Wykład: 9 Łańcuchy znaków 1 dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD Tablica znaków w językach C i C++ (oraz pochodnych) łańcuch znaków przechowywany jest jako
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
Języki programowania obiektowego Nieobiektowe elementy języka C++
Języki programowania obiektowego Nieobiektowe elementy języka C++ Roman Simiński roman.siminski@us.edu.pl www.programowanie.siminskionline.pl Przetwarzanie tablic znaków Łańcuchy znakowe jako tablice znaków
Języki i metodyka programowania. Wprowadzenie do języka C
Literatura: Brian W. Kernighan, Dennis M. Ritchie Język Ansi C, Wydawnictwa Naukowo - Techniczne, 2007 http://cm.bell-labs.com/cm/cs/cbook/index.html Scott E. Gimpel, Clovis L. Tondo Język Ansi C. Ćwiczenia
Co to jest sterta? Sterta (ang. heap) to obszar pamięci udostępniany przez system operacyjny wszystkim działającym programom (procesom).
Zarządzanie pamięcią Pamięć: stos i sterta Statyczny i dynamiczny przydział pamięci Funkcje ANSI C do zarządzania pamięcią Przykłady: Dynamiczna tablica jednowymiarowa Dynamiczna tablica dwuwymiarowa 154
//zmienne globalne int *pa, *pb; //wskaźniki globalne void main(void) { clrscr(); printf("\n podaj wartosc liczby a\n"); scanf("%d",&a); pa=&a;
Ćwiczenie 4 4.1. Wskaźnik na zmienną Wskaźniki, tablice Deklaracja int *pa; oznacza, że pa jest wskaźnikiem na obiekt typu int. Zmienna pa zawiera adres pamięci, zarezerwowanej na zmienną typu int. Chcąc
Podstawy programowania w języku C++
Podstawy programowania w języku C++ Część dziewiąta Tablice a zmienne wskaźnikowe Wersja skrócona, tylko C++ Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie
Temat: Dynamiczne przydzielanie i zwalnianie pamięci. Struktura listy operacje wstawiania, wyszukiwania oraz usuwania danych.
Temat: Dynamiczne przydzielanie i zwalnianie pamięci. Struktura listy operacje wstawiania, wyszukiwania oraz usuwania danych. 1. Rodzaje pamięci używanej w programach Pamięć komputera, dostępna dla programu,
I - Microsoft Visual Studio C++
I - Microsoft Visual Studio C++ 1. Nowy projekt z Menu wybieramy File -> New -> Projekt -> Win32 Console Application w okienku Name: podajemy nazwę projektu w polu Location: wybieramy miejsce zapisu i
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:
Wstęp do programowania
wykład 7 Agata Półrola Wydział Matematyki i Informatyki UŁ semestr zimowy 2018/2019 Tablice wielowymiarowe Tablice wielowymiarowe, podobnie jak jednowymiarowe, przechowują wartości tego samego typu. Przykłady:
1 P roste e t ypy p d a d n a ych c - c ąg ą g d a d l a szy 2 T y T py p z ł z o ł żo ż ne e d a d n a ych c : T BLICE
1. Proste typy danych- ciąg dalszy 2. Typy złożone danych : TABLICE Wykład 3 ZMIENNE PROSTE: TYPY WBUDOWANE Typy zmiennoprzecinkowe: float double long double Różne rozmiary bajtowe. W konsekwencji różne
IMIĘ i NAZWISKO: Pytania i (przykładowe) Odpowiedzi
IMIĘ i NAZWISKO: Pytania i (przykładowe) Odpowiedzi EGZAMIN PIERWSZY (25 CZERWCA 2013) JĘZYK C++ poprawiam ocenę pozytywną z egzaminu 0 (zakreśl poniżej x) 1. Wśród poniższych wskaż poprawną formę definicji
Wykład II Tablice (wstęp) Przykłady algorytmów Wstęp do języka C/C++
Podstawy programowania Wykład II Tablice (wstęp) Przykłady algorytmów Wstęp do języka C/C++ 1 dr Artur Bartoszewski - Podstawy programowania, sem. 1- WYKŁAD Część I Wstęp do struktur danych: Tablice 2
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
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ć
W dowolnym momencie można zmienić typ wskaźnika.
c++ Wskaźniki mają jeszcze jedną przydatną cechę. W dowolnym momencie można zmienić typ wskaźnika. Robi się to za pomocą operatora rzutowania. Najpierw zdefiniujemy sobie wsk_uniwersalny mogący pokazywać
JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM. Wykład 6
JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM Wykład 6 1 SPECYFIKATOR static Specyfikator static: Specyfikator ten powoduje, że zmienna lokalna definiowana w obrębie danej funkcji nie jest niszczona
Pytanie 1. Pytanie 2. Pytanie 3 WOJEWÓDZKI KONKURS INFORMATYCZNY. Treść pytania
WOJEWÓDZKI KONKURS INFORMATYCZNY PRZEPROWADZANY W DOTYCHCZASOWYCH GIMNAZJACH W ROKU SZK. 2018/2019 Etap wojewódzki Pytanie 1 O rozmiarze obrazów w grafice rastrowej decyduje całkowita liczba pikseli (wielkość
Dla każdej operacji łącznie tworzenia danych i zapisu ich do pliku przeprowadzić pomiar czasu wykonania polecenia. Wyniki przedstawić w tabelce.
Przygotować program tworzący tablicę dwuwymiarową zawierającą zestawy 10 2, 10 4, 10 6 liczb losowych zmiennoprzecinkowych. Korzystając z funkcji bibliotecznych uporządkować zawartość każdego (a) wiersza
1. Pierwszy program. Kompilator ignoruje komentarze; zadaniem komentarza jest bowiem wyjaśnienie programu człowiekowi.
1. Pierwszy program // mój pierwszy program w C++ #include using namespace std; cout
Programowanie w C++ Wykład 4. Katarzyna Grzelak. 19 marca K.Grzelak (Wykład 1) Programowanie w C++ 1 / 37
Programowanie w C++ Wykład 4 Katarzyna Grzelak 19 marca 2018 K.Grzelak (Wykład 1) Programowanie w C++ 1 / 37 Funkcje cd K.Grzelak (Wykład 1) Programowanie w C++ 2 / 37 Funkcja powtórzenie Funkcje == podprogramy
Wstęp do programowania
wykład 7 Agata Półrola Wydział Matematyki i Informatyki UŁ sem. zimowy 2017/2018 Napisy w stylu C (tablice znaków) Łańcuch to ciąg znaków przechowywanych w kolejnych bajtach. Łańcuchy reprezentują napisy.
utworz tworzącą w pamięci dynamicznej tablicę dwuwymiarową liczb rzeczywistych, a następnie zerującą jej wszystkie elementy,
Lista 3 Zestaw I Zadanie 1. Zaprojektować i zaimplementować funkcje: utworz tworzącą w pamięci dynamicznej tablicę dwuwymiarową liczb rzeczywistych, a następnie zerującą jej wszystkie elementy, zapisz
DANE TEKSTOWE W JĘZYKU C/C++ - TABLICE ZNAKOWE
DANE TEKSTOWE W JĘZYKU C/C++ - TABLICE ZNAKOWE Stała tekstowa / łańcuchowa jest tablicą znaków zakończoną znakiem o kodzie: 0 np. stała łańcuchowa: Jestem tekstem ASCII... J e s t e m t e k s t e m \0...