82 => 'iweifj', 'js7d' => 367, 'dfd' => $jakas_tablica, 73 => $obiekt;

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

Download "82 => 'iweifj', 'js7d' => 367, 'dfd' => $jakas_tablica, 73 => $obiekt;"

Transkrypt

1 3. Tablice 3.1. Budowa tablicy w języku PHP W PHP każda tablica jest tablicą asocjacyjną, to jest składa się z pary. Nawet jeżeli używana jest jako zwykła tablica, znana z innych języków programowania, to i tak jest to tablica asocjacyjna, po prostu e są kolejnymi liczbami całkowitymi od 0. Kluczami mogą być liczby całkowite lub łańcuchy tekstowe. W jednej tablicy można mieszać e liczbowe i tekstowe. Oczywiście e liczbowe nie muszą przebiegać kolejno. Para zapisywana jest w PHP za pomocą operatora =>. Oto zatem przykładowa tablica: 82 => 'iweifj', 'js7d' => 367, 'dfd' => $jakas_tablica, 73 => $obiekt; O ile em tablicy może być tylko liczba całkowita lub tekst, o tyle może być dowolnego typu (można dowolnie mieszać typy w jednej tablicy). Dzięki tej elastyczności tablica w PHP może być używana jako zwykła tablica, mapa (tablica asocjacyjna), lista i inne struktury. W szczególności elementem tablicy może być inna tablica, w ten sposób w PHP implementujemy tablice wielowymiarowe. W tablicy PHP należy odróżnić kolejność elementów, od kolejności y. W klasycznej tablicy z C element [3] zawsze występuje przed [4], w PHP element o u 3 wcale nie musi występować przed elementem o u 4. Kolejność elementów w tablicy wynika z kolejności wstawiania, może być zmieniana przez funkcje sortujące.

2 3.2. Tworzenie tablicy przez przypisanie Tak jak każda zmienna, tablica w PHP powstaje w momencie pierwszego jej użycia. Rozmiar tablicy jest dynamiczny, zawsze zajmuje tyle, ile istniejące elementy, nie wymagane jest deklarowanie rozmiaru tablicy. Oto przykład stworzenia tablicy poprzez jej użycie: $tablica[19] = 247; Powstaje tablica jednoelementowa zawierająca parę 19 => 247. Nie należy myśleć, że tworzone są również elementy o ach 0 18, tworzony jest tylko i wyłącznie jeden element. Kolejne przypisania do tej samej tablicy dodają do niej kolejne elementy: $tablica['hg'] = 837; $tablica[384] = 'Politechnika'; Można przy tworzeniu elementu tablicy pominąć a. Wtedy jest liczbą o 1 większą od największego a liczbowego istniejącego dotychczas w tablicy. Jeżeli w tablicy są tylko e tekstowe (albo nie ma żadnych elementów), otrzymuje 0.

3 3.3. Tworzenie tablicy operatorem array() Operator array() służy do stworzenia tablicy z podanych par. Oto podstawowy przykład jego zastosowania: $tablica = array('fdf' => 73, 43 => 'hswi', 'deed' => 'Gsnbe'); Przy podawaniu kolejnych par można pominąć e. W takim przypadku jest generowany automatycznie. Klucz automatyczny jest zawsze liczbowy. Wyszukiwany jest największy istniejący w tablicy liczbowy, zwiększany jest o 1 i staje się em nowego elementu. Jeżeli dotychczas w tablicy nie było y liczbowych, automatyczny startuje od 0: $tablica = array('g' => 4, 'f', 5 => 'a', 33); Powstaje następująca tablica: 'g' => 4, dcfdf 0 => 'f', (wcześniej nie wystąpił żaden liczbowy, więc 0) 5 => 'a', edfed 6 => 33 (największy liczbowy do tej pory to 5, więc nowy to 6)

4 3.4. Operatory działające na tablicach Niektóre operatory PHP mają specyficzne działanie w odniesieniu do tablic. Te operatory to: +, ==,!= (którego synonimem jest <> ). operator + Powoduje dołączenie do tablicy stojącej po lewej stronie wszystkich elementów z tablicy po prawej, których e nie występują po lewej. Tak więc w wypadku zduplikowanych y, pozostawiane są wartości w tablicy po lewej stronie operatora. $a = array(6 => 3, 8 => 2, 12 => 7); $b = array(3 => 4, 6 => 7); $a + $b daje w wyniku (6 => 3, 8 => 2, 12 => 7, 3 => 4) Proszę zwrócić uwagę na niezmienioną kolejność elementów, elementy z tablicy po prawej są zawsze dodawane na końcu. operatory == i!= Służą do porównywania zawartości tablic, == jest prawdziwy, jeżeli obie tablice zawierają te same pary. Drugi jest przeciwieństwem pierwszego.

5 3.5. Tablica traktowana jako lista Elementy tablicy (pary ) są uporządkowane w pewnej kolejności, która wynika z kolejności wstawiania elementów do tablicy (każdy nowy element jest wstawiany na koniec). Każda tablica posiada tak zwany wskaźnik, który wskazuje na jeden z elementów i może być przesuwany za pomocą zestawu funkcji. W ten sposób można używać tablicy jako listy. current() zwraca elementu wskazywanego przez wskaźnik, next() przesuwa wskaźnik o jeden element do przodu i zwraca elementu, prev() przesuwa wskaźnik o jeden element do tyłu i zwraca elementu, end() przesuwa wskaźnik na koniec tablicy i zwraca ostatniego elementu, key() zwraca elementu wskazywanego przez wskaźnik, reset() ustawia wskaźnik na początek tablicy i nic nie zwraca. $a = array('f'=>6, 56=>'d', 'g'=>'xx', 44=>16); $x = current($a); // 6 $x = next($a); // 'd' $x = end($a); // 16 $x = key($a); // 44 $x = prev($a); // 'xx' reset($x); $x = prev($a); // FALSE $x = end($a); // 16 $x = next($a); // FALSE $x = key($a); // FALSE

6 Tablica traktowana jako lista (c.d.) Przy używaniu tych operatorów należy zwrócić uwagę na pewien fakt. W przypadku wyjścia poza tablicę prev() i next() mogą zwrócić FALSE. Sytuacja ta jest nie do odróżnienia od przypadku, kiedy w tablicy znajduje się element typu logicznego o wartości FALSE. Przypadki te odróżnić można za pomocą key(), ponieważ przy ustawieniu wskaźnika poza tablicą key() zwróci typu NULL, a tablicy nie może być typu NULL. Niemniej przy zwykłym porównaniu NULL może zostać niejawnie przekształcona do łańcucha pustego albo liczby 0. Dlatego należy do sprawdzania stosować operator identyczności ( === ). Działa on tak samo, jak operator porównania, ale wymaga aby porównywane zmienne były tych samych typów i nie dokonuje domyślnych konwersji. Jeżeli typy się różnią, wynikiem porównania jest fałsz logiczny. Oto kilka przykładów: 0 == 0 // prawda 0 === 0 // prawda 0 == NULL // prawda 0 === NULL // fałsz '0' == 0 // prawda '0' === 0 // fałsz '' == NULL // prawda '' === NULL // fałsz

7 3.6. Konstrukcja each() Operator each() służy do pobierania z tablicy kolejnych elementów. Inaczej niż poprzednio omówione, pobiera z tablicy cały element ( i ) umieszczając je w specyficznej, czteroelementowej tablicy wyglądającej następująco: 0 => ( elementu) 'key' => ( elementu) 1 => ( elementu) 'value' => ( elementu) Jak widać do a i wartości zwróconego elementu możemy się odwoływać zarówno poprzez indeksy liczbowe, jak i poprzez e opisowe. Operator each() przesuwa po pobraniu elementu wskaźnik tablicy na następny element. Oto przykład emitujący tablicę PHP jako dwukolumnową tabelę w HTML: <table border="1"><tr><th></th><th>wartosc</th></tr><? while ($e = each($tablica)) { print("<tr><td>{$e['key']}</td><td>{$e['value']}</td></tr>"); } </table> Operator each() po wyjściu poza ostatni element tablicy zwraca FALSE.

8 3.7. Konstrukcja foreach() Ta konstrukcja również służy do przemieszczania się po tablicy, robi to jednak w inny sposób. Po pierwsze foreach() samo w sobie konstruuje pętlę przebiegającą po elementach tablicy, nie ma potrzeby samodzielnego organizowania tej pętli przez while czy for. Po drugie konstrukcja ta automatycznie ustawia wskaźnik tablicy na początku. Po trzecie foreach() pracuje na lokalnej kopii tablicy, co ma swoje zalety, ale też i wady. Ponieważ PHP bardzo często pracuje na dużych tablicach (np. ładowanych z relacyjnych baz danych), nieprzemyślane użycie foreach() może się okazać bardzo kosztowne. Kopiowania tablicy można uniknąć podając funkcji referencję do oryginału. W czasie wykonywania kolejnych iteracji pętli przesuwany jest zarówno wskaźnik kopii roboczej, jak i wskaźnik oryginalnej tablicy. Oto składnia: foreach($tablica as $) { // $ zawiera wartości kolejnych elementów } albo foreach($tablica as $ => $) { // $ zawiera e, a $ wartości kolejnych elementów }

9 Konstrukcja foreach() (c.d) Dla porównania z each() i samodzielnie konstruowaną pętlą, tym razem przykład wyświetlający tablicę PHP jako tabelę HTML przy użyciu foreach(): <table border="1"><tr><th></th><th>wartosc</th></tr><? foreach($tablica as $ => $wartosc) { print("<tr><td>$</td><td>$wartosc</td></tr>"); } </table>

10 3.8. Sortowanie tablic Rozpatrywanie zagadnienia sortowania wymaga rozpatrzenia w jaki sposób PHP porównuje ze sobą elementy różnych typów. Operacja porównania dwóch elementów sortowanej tablicy jest podstawą każdego algorytmu sortowania. W klasycznych językach z silną typizacją tablica po prostu zawsze składa się z elementów tego samego typu i problem porównania dwóch elementów zwykle nie nastręcza problemów. W PHP tablica może zawierać wartości różnych typów i przy ich porównywaniu możemy się natknąć na różne niespodzianki. Oto kilka typowych zagwozdek: przy porównaniu liczby z tekstem, tekst jest zamieniany na liczbę, przy porównaniu dwóch tekstów reprezentujących liczby, są one zamieniane na liczby, porównywanie ze sobą dziwnych rzeczy w rodzaju tablice, zasoby, czy obiekty, nie jest generalnie zalecane, jeżeli ktoś się jednak uprze powinien poczytać dokumentację a potem przetestować efekty na tej wersji PHP, na której będzie docelowo pracował skrypt (mogą być np. różnice między PHP 4 i 5). PHP posiada nadspodziewanie wiele funkcji do sortowania tablic. Fakt ten wynika, że każdy element tablicy jest parą, a to stwarza wiele możliwości sortowania. Zacznijmy od najprostszych metod.

11 Sortowanie tablic (c.d.) Sortowanie tradycyjne sort() i rsort() To sortowanie opiera się wyłącznie na wartościach elementów, całkowicie ignorując e. Elementy zostają poprzestawiane według narastających (lub malejących dla rsort()) wartości, stare e zostają usunięte, następnie zostają stworzone nowe e liczbowe od 0 zwiększające się o 1 przy każdym elemencie. $tablica sort($tablica) rsort($tablica) 'jabłko' 1 'jabłko' 1 'pisak' 19 'pisak' 2 'pisak' 2 'jabłko' W tym przypadku sortowanie odbywa się w ten sposób, że łańcuch tekstowy przy porównywaniu z liczbą jest konwertowany na liczbę, co przy łańcuchach nie będących reprezentacją liczb zmienia je na 0. Przy porównaniu dwóch łańcuchów natomiast stosuje się porównywanie tekstu (litera po literze). Sposób porównywania można zmienić podając drugi parametr funkcjom sortującym, określający sposób konwersji wartości przed porównaniem.

12 Sortowanie tablic (c.d.) $tablica 'jabłko' 19 'pisak' 36 sort($tablica, SORT_NUMERIC) rsort($tablica, SORT_NUMERIC) 'pisak' 1 'pisak' 2 'jabłko' 2 'jabłko' 3 3 Tym razem wszystkie teksty są przed porównaniami konwertowane na liczby. Oczywiście teksty nie reprezentujące liczb dają w wyniku konwersji 0 i ich wzajemna kolejność nie jest określona. $tablica 'jabłko' 19 'pisak' 36 sort($tablica, SORT_STRING) rsort($tablica, SORT_STRING) 0 0 'jabłko' 1 1 'pisak' 2 'jabłko' 2 3 'pisak' 3 Tym razem liczby są przed porównaniem konwertowane na łańcuchy tekstowe. Jeżeli teksty zawierają znaki narodowe należy użyć SORT_LOCALE_STRING.

13 Sortowanie z pozostawieniem y asort(), arsort() Sortowanie jest również według wartości (zatem kolejność elementów tablicy będzie taka sama jak przy sort()), ale zostają pozostawione stare e elementów. $tablica asort($tablica) arsort($tablica) 'jabłko' 71 'jabłko' 19 'pisak' 19 'pisak' 19 'pisak' 71 'jabłko' Drugi parametr, definiujący sposób porównywania wartości przy sortowaniu, ma to samo znaczenie jak dla funkcji sort().

14 Sortowanie według y ksort(), krsort() Tym razem tablica zostaje posortowana według y, oczywiście przemieszczane są całe elementy, a więc z odpowiadającą mu wartością. $tablica ksort($tablica) krsort($tablica) 'pisak' 71 'jabłko' 71 'jabłko' 'pisak' 'jabłko' 19 'pisak' Również w tym przypadku sposób sortowania y można zmienić podając drugi parametr funkcji sortującej. Generalnie wymieszanie różnych typów wartości (dla sort(), rsort(), asort(), arsort()), czy różnych typów y (dla ksort() i krsort()) jest złym pomysłem i powinno się tego unikać aby zapobiec problemom z nieoczekiwanymi wynikami sortowania. Jeżeli programista decyduje się na sortowanie wymieszanych typów, powinien mieć pełną świadomość tego co robi.

15 3.9. Usuwanie tablic i ich elementów operatorem unset() Operator unset() służy do usuwania istniejących zmiennych. W przypadku tablic możemy go użyć do usunięcia całej tablicy, lub też usunięcia wybranych elementów. W PHP wszystkie zmienne są automatycznie usuwane przy zakończeniu skryptu (niektóre nawet wcześniej). Stosowanie unset() ma sens przy dużych zmiennych (np. tablicach), które nie są więcej potrzebne w programie. W ten sposób zmniejsza się zapotrzebowanie skryptu na pamięć (język PHP potrafi limitować przydział pamięci dla skryptu i z reguły to limitowanie jest włączone). unset($tablica); unset($tablica['h']) // usunięcie całej tablicy // usunięcie z tablicy elementu o u 'h' Usunięcie wszystkich elementów tablicy nie jest równoznaczne z usunięciem samej tablicy tablica nadal istnieje i jest pusta (zawiera 0 elementów) Liczenie elementów tablicy Funkcja count(), której synonimem jest sizeof(), zwraca ilość elementów znajdujących się w tablicy.

16 3.11. Zapisywanie wartości tablicy do serii zmiennych Operator list() pozwala na umieszczenie kolejnych elementów tablicy w podanej liście zmiennych. Oto najprostszy przykład: $wozy = array('audi', 'bmw', 'lancia'); list($pierwszy, $drugi, $trzeci) = $wozy; echo $pierwszy;?><br><? echo $drugi;?><br><? echo $trzeci; audi bmw lancia Uwaga! Operator list() wstawiając wartości tablicy do zmiennych, kieruje się ami. Oznacza to, że do pierwszej zmiennej zostanie wstawiona elementu o u 0, do drugiej elementu o u 1 i tak dalej. Kolejność elementów w tablicy nie ma żadnego znaczenia. Jeżeli chcemy pominąć jakiś przy wstawianiu (bo np. nie ma elementu z takim em w tablicy) stawiamy w liście zmiennych pusty przecinek. Oto przykład ilustrujący te zagadnienia.

17 Zapisywanie wartości tablicy do serii zmiennych (c.d.) $wozy = array(2=>'audi', 0=>'bmw', 3=>'lancia'); // kolejność list($pierwszy,, $drugi, $trzeci) = $wozy; // pusty przecinek echo $pierwszy;?><br><? // za brakujący element 1 echo $drugi;?><br><? echo $trzeci; bmw audi lancia

PHP: bloki kodu, tablice, obiekty i formularze

PHP: bloki kodu, tablice, obiekty i formularze 1 PHP: bloki kodu, tablice, obiekty i formularze SYSTEMY SIECIOWE Michał Simiński 2 Bloki kodu Blok if-else Switch Pętle Funkcje Blok if-else 3 W PHP blok if i blok if-else wyglądają tak samo i funkcjonują

Bardziej szczegółowo

Elementem tablicy może być każdy typ zmiennej (z innymi tablicami i obiektami włącznie). Tablica dwuwymiarowa, zawiera dwa indeksy, np.

Elementem tablicy może być każdy typ zmiennej (z innymi tablicami i obiektami włącznie). Tablica dwuwymiarowa, zawiera dwa indeksy, np. Systemy teleinformatyczne Ćwiczenie 6 - PHP (2) - Tablice w PHP Tablice są typem zmiennych zawierającym uporządkowany zbiór danych. Pełnią ważną rolę w aplikacjach internetowych z bazą danych służą do

Bardziej szczegółowo

Lekcja 7 Tablice. Definiowanie tablicy

Lekcja 7 Tablice. Definiowanie tablicy Paweł Gmys PHP lekcja 7 strona 1 Lekcja 7 Tablice Definiowanie tablicy Tablice są bardzo specyficznym typem zmiennych - są to, najprościej mówiąc, zmienne zawierające w sobie uporządkowany zbiór zmiennych.

Bardziej szczegółowo

2. Łańcuchy tekstowe w PHP

2. Łańcuchy tekstowe w PHP 2. Łańcuchy tekstowe w PHP 2.1 Apostrofy i cudzysłowy Łańcuch tekstowy w języku PHP to ciąg znaków ograniczony apostrofami (') lub cudzysłowami ("). Te znaki ograniczające nie powinny być traktowane wymiennie,

Bardziej szczegółowo

Języki programowania wysokiego poziomu. PHP cz.2.

Języki programowania wysokiego poziomu. PHP cz.2. Języki programowania wysokiego poziomu PHP cz.2. Instrukcje strukturalne PHP Instrukcje strukturalne Instrukcja grupująca (blok instrukcji) Instrukcja warunkowa, if-else Instrukcja wyboru, switch-case

Bardziej szczegółowo

Bazy danych. dr Radosław Matusik. radmat

Bazy danych. dr Radosław Matusik.   radmat www.math.uni.lodz.pl/ radmat Sortowanie tablic Do sortowania tablic służą funkcje: Sortowanie tablic Do sortowania tablic służą funkcje: sort($tablica) - sortowanie w porządku rosnącym bez kluczy; Sortowanie

Bardziej szczegółowo

Serwer WWW Apache. http://httpd.apache.org/ Plik konfiguracyjny httpd.conf Definiujemy m.in.: Aktualne wersje 2.4.6, 2.2.25, 2.0.65 zakończony projekt

Serwer WWW Apache. http://httpd.apache.org/ Plik konfiguracyjny httpd.conf Definiujemy m.in.: Aktualne wersje 2.4.6, 2.2.25, 2.0.65 zakończony projekt Serwer WWW Apache http://httpd.apache.org/ Plik konfiguracyjny httpd.conf Definiujemy m.in.: Katalog który ma być serwowany Moduły, które mają zostać uruchomione na serwerze m.in. PHP, mod_rewrite Wirtualne

Bardziej szczegółowo

1. Wprowadzenie do języka PHP

1. Wprowadzenie do języka PHP 1. Wprowadzenie do języka PHP Język PHP jest generalnie w swojej składni podobny do języka C, chociaż występuje tu szereg różnic. 1.1. Zmienne W PHP nazwy zmiennych poprzedzamy znakiem dolara ($). Nie

Bardziej szczegółowo

Informatyka I. Typy danych. Operacje arytmetyczne. Konwersje typów. Zmienne. Wczytywanie danych z klawiatury. dr hab. inż. Andrzej Czerepicki

Informatyka I. Typy danych. Operacje arytmetyczne. Konwersje typów. Zmienne. Wczytywanie danych z klawiatury. dr hab. inż. Andrzej Czerepicki Informatyka I Typy danych. Operacje arytmetyczne. Konwersje typów. Zmienne. Wczytywanie danych z klawiatury. dr hab. inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2019 1 Plan wykładu

Bardziej szczegółowo

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

Dr inż. Grażyna KRUPIŃSKA. D-10 pokój 227 WYKŁAD 7 WSTĘP DO INFORMATYKI Dr inż. Grażyna KRUPIŃSKA Grazyna.Krupinska@fis.agh.edu.pl D-10 pokój 227 WYKŁAD 7 WSTĘP DO INFORMATYKI Wyrażenia 2 Wyrażenia w języku C są bardziej elastyczne niż wyrażenia w jakimkolwiek innym języku

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

Lekcja 1. Składnia języka zmienne i podstawowe instrukcje PHP. Do wyświetlania tekstu służy instrukcja echo echo Hello world ;

Lekcja 1. Składnia języka zmienne i podstawowe instrukcje PHP. Do wyświetlania tekstu służy instrukcja echo echo Hello world ; Do wyświetlania tekstu służy instrukcja echo echo Hello world ; PHP język ze słabą kontrolą typów. W języku php w przeciwieństwie do c++ nie musimy podawać typu zmiennej podczas jej deklaracji. Tworzenie

Bardziej szczegółowo

Języki programowania obiektowego Nieobiektowe elementy języka C++

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

Bardziej szczegółowo

Wykład 3 Składnia języka C# (cz. 2)

Wykład 3 Składnia języka C# (cz. 2) Wizualne systemy programowania Wykład 3 Składnia języka C# (cz. 2) 1 dr Artur Bartoszewski -Wizualne systemy programowania, sem. III- WYKŁAD Wizualne systemy programowania Metody 2 Metody W C# nie jest

Bardziej szczegółowo

Lab 9 Podstawy Programowania

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

Bardziej szczegółowo

Lista, Stos, Kolejka, Tablica Asocjacyjna

Lista, Stos, Kolejka, Tablica Asocjacyjna Lista, Stos, Kolejka, Tablica Asocjacyjna Listy Lista zbiór elementów tego samego typu może dynamicznie zmieniać rozmiar, pozwala na dostęp do poszczególnych elementów Typowo dwie implementacje: tablicowa,

Bardziej szczegółowo

echo $tablica[2]; // Wyświetlony zostanie napis "Wpis numer 2";

echo $tablica[2]; // Wyświetlony zostanie napis Wpis numer 2; 4. Tablice Tablice są bardzo specyficznym typem zmiennych są to, najprościej mówiąc, zmienne zawierające w sobie uporządkowany zbiór zmiennych. Do zmiennych tych uzyskuje się dostęp przez liczbę w nawiasie

Bardziej szczegółowo

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

Opis: Instrukcja warunkowa Składnia: IF [NOT] warunek [AND [NOT] warunek] [OR [NOT] warunek]. ABAP/4 Instrukcja IF Opis: Instrukcja warunkowa Składnia: IF [NOT] warunek [AND [NOT] warunek] [OR [NOT] warunek]. [ELSEIF warunek. ] [ELSE. ] ENDIF. gdzie: warunek dowolne wyrażenie logiczne o wartości

Bardziej szczegółowo

Tablice mgr Tomasz Xięski, Instytut Informatyki, Uniwersytet Śląski Katowice, 2011

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

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

Algorytmy i struktury danych

Algorytmy i struktury danych Algorytmy i struktury danych Proste algorytmy sortowania Witold Marańda maranda@dmcs.p.lodz.pl 1 Pojęcie sortowania Sortowaniem nazywa się proces ustawiania zbioru obiektów w określonym porządku Sortowanie

Bardziej szczegółowo

Tablice cz. I Tablice jednowymiarowe, proste operacje na tablicach

Tablice cz. I Tablice jednowymiarowe, proste operacje na tablicach Materiał pomocniczy do kursu Podstawy programowania Autor: Grzegorz Góralski ggoralski.com Tablice cz. I Tablice jednowymiarowe, proste operacje na tablicach Tablice Powiedzmy, że chcemy zapamiętać w programie

Bardziej szczegółowo

Oczywiście plik musi mieć rozszerzenie *.php

Oczywiście plik musi mieć rozszerzenie *.php Oczywiście plik musi mieć rozszerzenie *.php Znaczniki PHP komunikują serwerowi gdzie rozpoczyna się i kończy kod PHP. Tekst między nimi jest interpretowany jako kod PHP, natomiast poza nimi jako kod HTML.

Bardziej szczegółowo

Ćwiczenie 1 Galeria zdjęć

Ćwiczenie 1 Galeria zdjęć Galeria zdjęć Pobierz przykład (http://jsekulska.kis.p.lodz.pl/studia.htm). Krok 1 Ustawienie stołu montażowego Otwieramy nowy plik i nazywamy go (np. gallery.fla). Ustawiamy wielkość pola roboczego na

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

Informatyka I. Wykład 4. Tablice. Dr inż. Andrzej Czerepicki. Politechnika Warszawska Wydział Transportu 2018

Informatyka I. Wykład 4. Tablice. Dr inż. Andrzej Czerepicki. Politechnika Warszawska Wydział Transportu 2018 Informatyka I Wykład 4. Tablice. Dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2018 Tablice Tablica uporządkowany zbiór elementów określonego typu Każdy element tablicy posiada

Bardziej szczegółowo

Sortowanie przez wstawianie Insertion Sort

Sortowanie przez wstawianie Insertion Sort Sortowanie przez wstawianie Insertion Sort Algorytm sortowania przez wstawianie można porównać do sposobu układania kart pobieranych z talii. Najpierw bierzemy pierwszą kartę. Następnie pobieramy kolejne,

Bardziej szczegółowo

Instrukcje dołączania plików

Instrukcje dołączania plików Instrukcje dołączania plików W języku PHP dostępne są dwie instrukcje pozwalające na włączeniu do kodu skryptu zawartości innego pliku zawierającego kod PHP. Instrukcje include() oraz require( ) przyjmują

Bardziej szczegółowo

Języki programowania. Przetwarzanie tablic znaków. Część druga. Autorzy Tomasz Xięski Roman Simiński

Języki programowania. Przetwarzanie tablic znaków. Część druga. Autorzy Tomasz Xięski Roman Simiński Języki programowania Część druga Przetwarzanie tablic znaków Autorzy Tomasz Xięski Roman Simiński Niniejsze opracowanie zawiera skrót treści wykładu, lektura tych materiałów nie zastąpi uważnego w nim

Bardziej szczegółowo

Zadanie 1 Przygotuj algorytm programu - sortowanie przez wstawianie.

Zadanie 1 Przygotuj algorytm programu - sortowanie przez wstawianie. Sortowanie Dane wejściowe: ciąg n-liczb (kluczy) (a 1, a 2, a 3,..., a n 1, a n ) Dane wyjściowe: permutacja ciągu wejściowego (a 1, a 2, a 3,..., a n 1, a n) taka, że a 1 a 2 a 3... a n 1 a n. Będziemy

Bardziej szczegółowo

Podstawy programowania

Podstawy programowania Podstawy programowania Część siódma Przetwarzanie tablic znaków Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.programowanie.siminskionline.pl Niniejsze opracowanie zawiera skrót treści wykładu,

Bardziej szczegółowo

Laboratorium 03: Podstawowe konstrukcje w języku Java [2h]

Laboratorium 03: Podstawowe konstrukcje w języku Java [2h] 1. Typy. Java jest językiem programowania z silnym systemem kontroli typów. To oznacza, że każda zmienna, atrybut czy parametr ma zadeklarowany typ. Kompilator wylicza typy wszystkich wyrażeń w programie

Bardziej szczegółowo

Programowanie i struktury danych

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

Bardziej szczegółowo

Zakres tematyczny dotyczący kursu PHP i MySQL - Podstawy pracy z dynamicznymi stronami internetowymi

Zakres tematyczny dotyczący kursu PHP i MySQL - Podstawy pracy z dynamicznymi stronami internetowymi Zakres tematyczny dotyczący kursu PHP i MySQL - Podstawy pracy z dynamicznymi stronami internetowymi 1 Rozdział 1 Wprowadzenie do PHP i MySQL Opis: W tym rozdziale kursanci poznają szczegółową charakterystykę

Bardziej szczegółowo

Podstawy programowania. Podstawy C# Tablice

Podstawy programowania. Podstawy C# Tablice Podstawy programowania Podstawy C# Tablice Tablica to indeksowany zbiór elementów Tablica jest typem referencyjnym (deklaracja tworzy tylko referencję, sama tablica musi być utworzona oddzielnie, najprościej

Bardziej szczegółowo

Wskaźniki a tablice Wskaźniki i tablice są ze sobą w języku C++ ściśle związane. Aby się o tym przekonać wykonajmy cwiczenie.

Wskaźniki a tablice Wskaźniki i tablice są ze sobą w języku C++ ściśle związane. Aby się o tym przekonać wykonajmy cwiczenie. Część XXII C++ w Wskaźniki a tablice Wskaźniki i tablice są ze sobą w języku C++ ściśle związane. Aby się o tym przekonać wykonajmy cwiczenie. Ćwiczenie 1 1. Utwórz nowy projekt w Dev C++ i zapisz go na

Bardziej szczegółowo

Wykład 2 Składnia języka C# (cz. 1)

Wykład 2 Składnia języka C# (cz. 1) Wizualne systemy programowania Wykład 2 Składnia języka C# (cz. 1) 1 dr Artur Bartoszewski -Wizualne systemy programowania, sem. III- WYKŁAD Wizualne systemy programowania Budowa projektu 2 Struktura programu

Bardziej szczegółowo

Podstawy programowania w języku C++

Podstawy programowania w języku C++ Podstawy programowania w języku C++ Część siódma Przetwarzanie tablic znaków Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót treści wykładu,

Bardziej szczegółowo

JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM. Wykład 6

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

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

Instrukcja do ćwiczeń nr 4 typy i rodzaje zmiennych w języku C dla AVR, oraz ich deklarowanie, oraz podstawowe operatory

Instrukcja do ćwiczeń nr 4 typy i rodzaje zmiennych w języku C dla AVR, oraz ich deklarowanie, oraz podstawowe operatory Instrukcja do ćwiczeń nr 4 typy i rodzaje zmiennych w języku C dla AVR, oraz ich deklarowanie, oraz podstawowe operatory Poniżej pozwoliłem sobie za cytować za wikipedią definicję zmiennej w informatyce.

Bardziej szczegółowo

TOPIT Załącznik nr 3 Programowanie aplikacji internetowych

TOPIT Załącznik nr 3 Programowanie aplikacji internetowych Szkolenie przeznaczone jest dla osób chcących poszerzyć swoje umiejętności o tworzenie rozwiązań internetowych w PHP. Zajęcia zostały przygotowane w taki sposób, aby po ich ukończeniu można było rozpocząć

Bardziej szczegółowo

Python wprowadzenie. Warszawa, 24 marca PROGRAMOWANIE I SZKOLENIA

Python wprowadzenie. Warszawa, 24 marca PROGRAMOWANIE I SZKOLENIA Python wprowadzenie Warszawa, 24 marca 2017 Python to język: nowoczesny łatwy w użyciu silny można pisać aplikacje Obiektowy klejący może być zintegrowany z innymi językami np. C, C++, Java działający

Bardziej szczegółowo

Wykład 4. Tablice. Pliki

Wykład 4. Tablice. Pliki Informatyka I Wykład 4. Tablice. Pliki Dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2017 Tablice Tablica uporządkowany zbiór elementów określonego typu Każdy element tablicy posiada

Bardziej szczegółowo

Wyrażenie include(sciezka_do_pliku) pozwala na załadowanie (wnętrza) pliku do skryptu php. Plik ten może zawierać wszystko, co może się znaleźć w

Wyrażenie include(sciezka_do_pliku) pozwala na załadowanie (wnętrza) pliku do skryptu php. Plik ten może zawierać wszystko, co może się znaleźć w Wyrażenie include(sciezka_do_pliku) pozwala na załadowanie (wnętrza) pliku do skryptu php. Plik ten może zawierać wszystko, co może się znaleźć w obrębie skryptu. Wyrażenia include() i require() są niemal

Bardziej szczegółowo

Algorytmy sortujące i wyszukujące

Algorytmy sortujące i wyszukujące Algorytmy sortujące i wyszukujące Zadaniem algorytmów sortujących jest ułożenie elementów danego zbioru w ściśle określonej kolejności. Najczęściej wykorzystywany jest porządek numeryczny lub leksykograficzny.

Bardziej szczegółowo

Laboratorium nr 7 Sortowanie

Laboratorium nr 7 Sortowanie Laboratorium nr 7 Sortowanie 1. Sortowanie bąbelkowe (BbS) 2. Sortowanie przez wstawianie (IS) 3. Sortowanie przez wybieranie (SS) Materiały Wyróżniamy następujące metody sortowania: 1. Przez prostą zamianę

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 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

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 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

Bardziej szczegółowo

Podstawy programowania. Wykład PASCAL. Zmienne wskaźnikowe i dynamiczne. dr Artur Bartoszewski - Podstawy prograowania, sem.

Podstawy programowania. Wykład PASCAL. Zmienne wskaźnikowe i dynamiczne. dr Artur Bartoszewski - Podstawy prograowania, sem. Podstawy programowania Wykład PASCAL Zmienne wskaźnikowe i dynamiczne 1 dr Artur Bartoszewski - Podstawy prograowania, sem. 1- WYKŁAD Rodzaje zmiennych Zmienne dzielą się na statyczne i dynamiczne. Zmienna

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

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

Języki i techniki programowania Ćwiczenia 2

Języki i techniki programowania Ćwiczenia 2 Języki i techniki programowania Ćwiczenia 2 Autor: Marcin Orchel Spis treści: Język C++... 5 Przekazywanie parametrów do funkcji... 5 Przekazywanie parametrów w Javie.... 5 Przekazywanie parametrów w c++...

Bardziej szczegółowo

Umieszczanie kodu. kod skryptu

Umieszczanie kodu. kod skryptu PHP Definicja PHP jest językiem skryptowym służącym do rozszerzania możliwości stron internetowych. Jego składnia jest bardzo podobna do popularnych języków programowania C/C++, lecz jest bardzo uproszczona

Bardziej szczegółowo

Języki skryptowe w programie Plans

Języki skryptowe w programie Plans Języki skryptowe w programie Plans Warsztaty uŝytkowników programu PLANS Kościelisko 2010 Zalety skryptów Automatyzacja powtarzających się czynności Rozszerzenie moŝliwości programu Budowa własnych algorytmów

Bardziej szczegółowo

STL: Lekcja 1&2. Filozofia STL

STL: Lekcja 1&2. Filozofia STL STL: Lekcja 1&2 Tematy: Filozofia STL Po co nam STL? Podstawowa zawartość STL Co warto znać zanim zaczniemy pracę z STL?: wskaźniki Praca na tekstach: klasa String Vector: nowy wymiar standardowych tablic.

Bardziej szczegółowo

Szablony klas, zastosowanie szablonów w programach

Szablony klas, zastosowanie szablonów w programach Szablony klas, zastosowanie szablonów w programach 1. Szablony klas i funkcji 2. Szablon klasy obsługującej uniwersalną tablicę wskaźników 3. Zastosowanie metody zwracającej przez return referencję do

Bardziej szczegółowo

Uwagi dotyczące notacji kodu! Moduły. Struktura modułu. Procedury. Opcje modułu (niektóre)

Uwagi dotyczące notacji kodu! Moduły. Struktura modułu. Procedury. Opcje modułu (niektóre) Uwagi dotyczące notacji kodu! Wyrazy drukiem prostym -- słowami języka VBA. Wyrazy drukiem pochyłym -- inne fragmenty kodu. Wyrazy w [nawiasach kwadratowych] opcjonalne fragmenty kodu (mogą być, ale nie

Bardziej szczegółowo

Uniwersytet Zielonogórski Instytut Sterowania i Systemów Informatycznych. Ćwiczenie 3 stos Laboratorium Metod i Języków Programowania

Uniwersytet Zielonogórski Instytut Sterowania i Systemów Informatycznych. Ćwiczenie 3 stos Laboratorium Metod i Języków Programowania Uniwersytet Zielonogórski Instytut Sterowania i Systemów Informatycznych Ćwiczenie 3 stos Laboratorium Metod i Języków Programowania Celem ćwiczenia jest zapoznanie studentów z najprostszą dynamiczną strukturą

Bardziej szczegółowo

LABORATORIUM 3 ALGORYTMY OBLICZENIOWE W ELEKTRONICE I TELEKOMUNIKACJI. Wprowadzenie do środowiska Matlab

LABORATORIUM 3 ALGORYTMY OBLICZENIOWE W ELEKTRONICE I TELEKOMUNIKACJI. Wprowadzenie do środowiska Matlab LABORATORIUM 3 ALGORYTMY OBLICZENIOWE W ELEKTRONICE I TELEKOMUNIKACJI Wprowadzenie do środowiska Matlab 1. Podstawowe informacje Przedstawione poniżej informacje maja wprowadzić i zapoznać ze środowiskiem

Bardziej szczegółowo

Drzewa BST i AVL. Drzewa poszukiwań binarnych (BST)

Drzewa BST i AVL. Drzewa poszukiwań binarnych (BST) Drzewa ST i VL Drzewa poszukiwań binarnych (ST) Drzewo ST to dynamiczna struktura danych (w formie drzewa binarnego), która ma tą właściwość, że dla każdego elementu wszystkie elementy w jego prawym poddrzewie

Bardziej szczegółowo

Kurs WWW. Paweł Rajba. pawel@ii.uni.wroc.pl http://pawel.ii.uni.wroc.pl/

Kurs WWW. Paweł Rajba. pawel@ii.uni.wroc.pl http://pawel.ii.uni.wroc.pl/ Paweł Rajba pawel@ii.uni.wroc.pl http://pawel.ii.uni.wroc.pl/ Spis treści Wprowadzenie Automatyczne ładowanie klas Składowe klasy, widoczność składowych Konstruktory i tworzenie obiektów Destruktory i

Bardziej szczegółowo

1 Wskaźniki i zmienne dynamiczne, instrukcja przed zajęciami

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.

Bardziej szczegółowo

Algorytmy i złożoności. Wykład 3. Listy jednokierunkowe

Algorytmy i złożoności. Wykład 3. Listy jednokierunkowe Algorytmy i złożoności Wykład 3. Listy jednokierunkowe Wstęp. Lista jednokierunkowa jest strukturą pozwalającą na pamiętanie danych w postaci uporzadkowanej, a także na bardzo szybkie wstawianie i usuwanie

Bardziej szczegółowo

W dowolnym momencie można zmienić typ wskaźnika.

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ć

Bardziej szczegółowo

Ć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 Ć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

Bardziej szczegółowo

Programowanie w VB Proste algorytmy sortowania

Programowanie w VB Proste algorytmy sortowania Programowanie w VB Proste algorytmy sortowania Sortowanie bąbelkowe Algorytm sortowania bąbelkowego polega na porównywaniu par elementów leżących obok siebie i, jeśli jest to potrzebne, zmienianiu ich

Bardziej szczegółowo

Aktualizacja baz danych systemu qs-stat

Aktualizacja baz danych systemu qs-stat Aktualizacja baz danych systemu qs-stat Copyright 2003 Q-DAS GmbH Eisleber Str. 2 D - 69469 Weinheim Tel.: ++49/6201/3941-0 Fax: ++49/6201/3941-24 E-Mail: q-das@q-das.de Internet: http://www.q-das.de Hotline:

Bardziej szczegółowo

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: 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

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

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

SQL - Structured Query Language -strukturalny język zapytań SQL SQL SQL SQL

SQL - Structured Query Language -strukturalny język zapytań SQL SQL SQL SQL Wprowadzenie do SQL SQL - Structured Query Language -strukturalny język zapytań Światowy standard przeznaczony do definiowania, operowania i sterowania danymi w relacyjnych bazach danych Powstał w firmie

Bardziej szczegółowo

Myśl w języku Python! : nauka programowania / Allen B. Downey. Gliwice, cop Spis treści

Myśl w języku Python! : nauka programowania / Allen B. Downey. Gliwice, cop Spis treści Myśl w języku Python! : nauka programowania / Allen B. Downey. Gliwice, cop. 2017 Spis treści Przedmowa 11 1. Jak w programie 21 Czym jest program? 21 Uruchamianie interpretera języka Python 22 Pierwszy

Bardziej szczegółowo

Tabela wewnętrzna - definicja

Tabela wewnętrzna - definicja ABAP/4 Tabela wewnętrzna - definicja Temporalna tabela przechowywana w pamięci operacyjnej serwera aplikacji Tworzona, wypełniana i modyfikowana jest przez program podczas jego wykonywania i usuwana, gdy

Bardziej szczegółowo

Algorytmy i Struktury Danych. Anna Paszyńska

Algorytmy i Struktury Danych. Anna Paszyńska Algorytmy i Struktury Danych Anna Paszyńska Tablica dynamiczna szablon Array Zbiory Zbiory template class Container {public: virtual ~Container() { }; virtual int Count() const = 0;

Bardziej szczegółowo

Bazy Danych i Usługi Sieciowe

Bazy Danych i Usługi Sieciowe Bazy Danych i Usługi Sieciowe Język PHP Paweł Witkowski Wydział Matematyki, Informatyki i Mechaniki Jesień 2011 P. Witkowski (Wydział Matematyki, Informatyki i Mechaniki) BDiUS w. VIII Jesień 2011 1 /

Bardziej szczegółowo

2. Tablice. Tablice jednowymiarowe - wektory. Algorytmy i Struktury Danych

2. Tablice. Tablice jednowymiarowe - wektory. Algorytmy i Struktury Danych 2. Tablice Tablica to struktura danych przechowująca elementy jednego typu (jednorodna). Dostęp do poszczególnych elementów składowych jest możliwy za pomocą indeksów. Rozróżniamy następujące typy tablic:

Bardziej szczegółowo

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 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

Bardziej szczegółowo

Zestaw A-1: Organizacja plików: Oddajemy tylko źródła programów (pliki o rozszerzeniach.adb i.ads)!!! Zad. 1: 4,3,3 2,2,1 Zad. 2: 3,3,3 Zad.

Zestaw A-1: Organizacja plików: Oddajemy tylko źródła programów (pliki o rozszerzeniach.adb i.ads)!!! Zad. 1: 4,3,3 2,2,1 Zad. 2: 3,3,3 Zad. Zestaw A-1: Oddajemy tylko źródła programów (pliki o rozszerzeniach.adb i.ads)!!! Zad. 1: Napisać pakiet rodzajowy udostępniający: typ Sznur będący dynamiczną listą łączoną, której elementy przechowują

Bardziej szczegółowo

Zajęcia nr 5 Algorytmy i wskaźniki. dr inż. Łukasz Graczykowski mgr inż. Leszek Kosarzewski Wydział Fizyki Politechniki Warszawskiej

Zajęcia nr 5 Algorytmy i wskaźniki. dr inż. Łukasz Graczykowski mgr inż. Leszek Kosarzewski Wydział Fizyki Politechniki Warszawskiej Zajęcia nr 5 Algorytmy i wskaźniki dr inż. Łukasz Graczykowski mgr inż. Leszek Kosarzewski Wydział Fizyki Politechniki Warszawskiej Plan Zapis i odczyt z plików tekstowych O tablicach ciąg dalszy Referencje

Bardziej szczegółowo

Algorytmy sortujące. sortowanie kubełkowe, sortowanie grzebieniowe

Algorytmy sortujące. sortowanie kubełkowe, sortowanie grzebieniowe Algorytmy sortujące sortowanie kubełkowe, sortowanie grzebieniowe Sortowanie kubełkowe (bucket sort) Jest to jeden z najbardziej popularnych algorytmów sortowania. Został wynaleziony w 1956 r. przez E.J.

Bardziej szczegółowo

Listy, krotki, słowniki, funkcje

Listy, krotki, słowniki, funkcje Listy, krotki, słowniki, funkcje Listy Lista jest najbardziej elastycznym typem obiektu uporządkowanej kolekcji. Może zawierać różne typy danych - liczby, łańcuchy znaków, a nawet inne listy. Tworzy się

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

Dynamiczne struktury danych

Dynamiczne struktury danych Listy Zbiór dynamiczny Zbiór dynamiczny to zbiór wartości pochodzących z pewnego określonego uniwersum, którego zawartość zmienia się w trakcie działania programu. Elementy zbioru dynamicznego musimy co

Bardziej szczegółowo

Podstawowe algorytmy i ich implementacje w C. Wykład 9

Podstawowe algorytmy i ich implementacje w C. Wykład 9 Wstęp do programowania 1 Podstawowe algorytmy i ich implementacje w C Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 9 Element minimalny i maksymalny zbioru Element minimalny

Bardziej szczegółowo

Wskaźnik może wskazywać na jakąś zmienną, strukturę, tablicę a nawet funkcję. Oto podstawowe operatory niezbędne do operowania wskaźnikami:

Wskaźnik może wskazywać na jakąś zmienną, strukturę, tablicę a nawet funkcję. Oto podstawowe operatory niezbędne do operowania wskaźnikami: Wskaźniki są nieodłącznym elementem języka C. W języku C++ także są przydatne i korzystanie z nich ułatwia pracę, jednak w odróżnieniu do C wiele rzeczy da się osiągnąć bez ich użycia. Poprawne operowanie

Bardziej szczegółowo

Systemy internetowe. Wykład 3 PHP. West Pomeranian University of Technology, Szczecin; Faculty of Computer Science

Systemy internetowe. Wykład 3 PHP. West Pomeranian University of Technology, Szczecin; Faculty of Computer Science Systemy internetowe Wykład 3 PHP PHP - cechy PHP (Hypertext Preprocessor) bardzo łatwy do opanowania, prosta składnia, obsługuje wymianę danych z różnymi systemami baz danych pozwala na dynamiczne generowanie

Bardziej szczegółowo

Informacja o języku. Osadzanie skryptów. Instrukcje, komentarze, zmienne, typy, stałe. Operatory. Struktury kontrolne. Tablice.

Informacja o języku. Osadzanie skryptów. Instrukcje, komentarze, zmienne, typy, stałe. Operatory. Struktury kontrolne. Tablice. Informacja o języku. Osadzanie skryptów. Instrukcje, komentarze, zmienne, typy, stałe. Operatory. Struktury kontrolne. Tablice. Język PHP Język interpretowalny, a nie kompilowany Powstał w celu programowania

Bardziej szczegółowo

C++ - przeciążanie operatorów. C++ - przeciążanie operatorów. C++ - przeciążanie operatorów. C++ - przeciążanie operatorów

C++ - przeciążanie operatorów. C++ - przeciążanie operatorów. C++ - przeciążanie operatorów. C++ - przeciążanie operatorów Operatory są elementami języka C++. Istnieje zasada, że z elementami języka, takimi jak np. słowa kluczowe, nie można dokonywać żadnych zmian, przeciążeń, itp. PRZECIĄŻANIE OPERATORÓW Ale dla operatorów

Bardziej szczegółowo

Obiektowy PHP. Czym jest obiekt? Definicja klasy. Składowe klasy pola i metody

Obiektowy PHP. Czym jest obiekt? Definicja klasy. Składowe klasy pola i metody Obiektowy PHP Czym jest obiekt? W programowaniu obiektem można nazwać każdy abstrakcyjny byt, który programista utworzy w pamięci komputera. Jeszcze bardziej upraszczając to zagadnienie, można powiedzieć,

Bardziej szczegółowo

Kontenery i iteratory. Wykorzystanie kontenerów w praktyce.

Kontenery i iteratory. Wykorzystanie kontenerów w praktyce. Instrukcja laboratoryjna nr 2 Programowanie w języku C 2 (C++ poziom zaawansowany) Kontenery i iteratory. Wykorzystanie kontenerów w praktyce. dr inż. Jacek Wilk-Jakubowski mgr inż. Maciej Lasota dr inż.

Bardziej szczegółowo

Podstawy programowania. Wykład 7 Tablice wielowymiarowe, SOA, AOS, itp. Krzysztof Banaś Podstawy programowania 1

Podstawy programowania. Wykład 7 Tablice wielowymiarowe, SOA, AOS, itp. Krzysztof Banaś Podstawy programowania 1 Podstawy programowania. Wykład 7 Tablice wielowymiarowe, SOA, AOS, itp. Krzysztof Banaś Podstawy programowania 1 Tablice wielowymiarowe C umożliwia definiowanie tablic wielowymiarowych najczęściej stosowane

Bardziej szczegółowo

Przeciążanie operatorów

Przeciążanie operatorów Instrukcja laboratoryjna nr 4 Programowanie w języku C 2 (C++ poziom zaawansowany) Przeciążanie operatorów dr inż. Wilk-Jakubowski Jacek mgr inż. Lasota Maciej dr inż. Kaczmarek Tomasz Wprowadzenie Oprócz

Bardziej szczegółowo

I. KARTA PRZEDMIOTU CEL PRZEDMIOTU WYMAGANIA WSTĘPNE W ZAKRESIE WIEDZY, UMIEJĘTNOŚCI I INNYCH KOMPETENCJI EFEKTY KSZTAŁCENIA

I. KARTA PRZEDMIOTU CEL PRZEDMIOTU WYMAGANIA WSTĘPNE W ZAKRESIE WIEDZY, UMIEJĘTNOŚCI I INNYCH KOMPETENCJI EFEKTY KSZTAŁCENIA I. KARTA PRZEDMIOTU 1. Nazwa przedmiotu: PODSTAWY PROGRAMOWANIA. Kod przedmiotu: Ovi1 3. Jednostka prowadząca: Wydział Mechaniczno-Elektryczny 4. Kierunek: Mechatronika 5. Specjalność: Eksploatacja Systemów

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

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 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

Bardziej szczegółowo

Dzisiejszy wykład. Programowanie w Perlu. Co to jest hasz? Inicjalizacja haszów

Dzisiejszy wykład. Programowanie w Perlu. Co to jest hasz? Inicjalizacja haszów Dzisiejszy wykład Programowanie w Perlu Tablice asocjacyjne oraz funkcje tablicowe Marcin Junczys-Dowmunt junczys@amu.edu.pl Wydział Matematyki i Informatyki http://amu.edu.pl/~junczys Skupimy się na jednym

Bardziej szczegółowo