ZASADY PROGRAMOWANIA KOMPUTERÓW ZAP zima Uwagi przed sprawdzianem nr 1.
|
|
- Danuta Grzelak
- 5 lat temu
- Przeglądów:
Transkrypt
1 POLITECHNIKA WARSZAWSKA Instytut Automatyki i Robotyki ZASADY PROGRAMOWANIA KOMPUTERÓW ZAP zima 2015 Język programowania: Środowisko programistyczne: C/C++ Qt Wykład 5 : Algorytmy sortowania. Struktury i rekordy. Uwagi przed sprawdzianem nr 1.
2 SKS System Komunikacji ze Studentami 2 Wszyscy już powinni mieć dostęp do SKS (login i hasło otrzymane w mailu od administratora systemu) tu jest dostępny online podręcznik multimedialny Programowanie C++, prezentacje do wykładów, tematy zadań dodatkowych i sprawdzianów, aktualne ogłoszenia i inne pliki. Administratorem SKS jest dr inż. Krzysztof Kukiełka (pok. 340). Należy się do niego zwrócić mailowo: k.kukielka@mchtr.pw.edu.pl podając swój adres i nr albumu w sytuacji, gdy do tej pory nie otrzymaliśmy loginu i hasła do SKS. Osoby powtarzające przedmiot koniecznie powinny się zwrócić mailowo do dr Kukiełki z prośbą o dopisanie do aktualnej grupy, w której powtarzają ćwiczenia (podając informację, w której grupie byli w ub. roku) inaczej nie będą mieli dostępu do tegorocznej witryny SKS, nowych plików, ogłoszeń i wyników ze sprawdzianów. Od następnego tygodnia wszystkie prezentacje do wykładów i inne pliki będą umieszczane wyłącznie na witrynie SKS.
3 Algorytmy prostego sortowania N-1 Algorytm 1 sortowanie przez wybieranie ( selection sort ) Wybieramy najmniejszy element z nieposortowanych i zamieniamy z pierwszym nieposortowanym aż do posortowania całości. Algorytm 2 sortowanie przez wstawianie ( insertion sort ) Bierzemy pierwszy element z nieposortowanych i wstawiamy go w odpowiednie miejsce w części posortowanej aż do posortowania całości. Algorytm 3 sortowanie przez zamianę ( bubble sort ) Zamieniamy ze sobą, jeśli trzeba, dwóch sąsiadów najpierw w całej tablicy, a potem za każdym razem w części mniejszej o 1 element.
4 Algorytm 1 sortowanie przez wybieranie ( selection sort ) 4 for (i = 0; i< N-1; i++) { i_min = i; for (j = i+1; j < N; j++) if (a[ j ] < a[ i_min ]) i_min = j; temp = a[ i ]; a[ i ] = a[ i_min ]; a[ i_min ] = temp; } // 0..i-1 posortowane // i..n-1 - nieposortowane Algorytm: z nieposortowanych elementów wybieramy element najmniejszy (zapamiętujemy jego położenie) zamieniamy go z pierwszym elementem z ciągu nieposortowanych elementów - odtąd będzie należał do posortowanych Zatem: W pierwszym kroku element najmniejszy w tablicy zamieniamy z pierwszym Ostatni krok to ewentualna zamiana ostatniego elementu z przedostatnim N posortowane nieposortowane
5 Algorytm 2 sortowanie przez wstawianie ( insertion sort ) 5 for (i = 0; i<n; i++ ) { j = i; temp = a[j]; while (j>0 && temp < a[j-1]) { a[ j ] = a[ j-1 ] ; j=j-1 ; } a[ j ] = temp; } // 0..i-1 - posortowane // i..n-1 - nieposortowane bierzemy pierwszy element z części nieposortowanej porównujemy go kolejno z elementami posortowanymi, idąc na lewo dopóki jest mniejszy od kolejnego elementu z grupy posortowanych, przesuwamy ten element w prawo jeśli nie jest już mniejszy - wstawiamy go na zwolnione miejsce (albo na początek, jeśli inaczej się nie da) N posortowane nieposortowane
6 Algorytm 3 sortowanie przez zamianę (tzw. bąbelkowe) 6 for (i = N-1; i>0; i--) { } Pierwszy przebieg : zamieniamy miejscami dwa pierwsze elementy, jeśli pierwszy z nich jest większy od drugiego taką samą zamianę sąsiednich elementów wykonujemy idąc po kolei wzdłuż całej tablicy, od 0 do N-1 (for j) w efekcie tego największy element znajdzie się na końcu tablicy - jako a[n-1] Kolejne przebiegi: for (j = 0; j < i; j++) if (a[ j ] > a[ j+1 ]) { } temp = a[ j ]; a[ j ] = a[ j+1]; a[ j+1] = temp; takie same zamiany sąsiadów wykonujemy w obszarze od 0 do i, gdzie i maleje od N-1 aż do 1 (for i) - kolejny największy element znajdzie się w a[i] bool byla_zamiana=true; i=n-1; while (byla_zamiana) { } była_zamiana=false; for (j = 0; j< i; j++) if (a[ j ] > a[ j+1 ]) { } i-- ; temp = a[ j ]; a[ j ] = a[ j+1]; a[ j+1] = temp; była_zamiana=true; Wersja bardziej efektywna - przejście przez tablicę i zamianę sąsiadów powtarzamy tylko wtedy, jeśli w poprzednim kroku była choć jedna taka zamiana.
7 Porównanie algorytmów prostego sortowania 7 Porównując metody sortowania analizuje się liczbę porównań elementów i liczbę ich przesunięć w tablicy. Należy też uwzględnić przypadki najlepsze (tablica posortowana lub prawie posortowana) i najgorsze (posortowana w kolejności odwrotnej). Sortowanie przez zamianę (nawet w wersji ulepszonej) jest gorsze zarówno od metody sortowania przez wstawianie, jak i od metody sortowania przez wybieranie. Algorytm sortowania przez zamianę jest bardzo wrażliwy na konfiguracje danych i tylko w przypadku elementów prawie posortowanych ma przewagę nad pozostałymi metodami. Algorytm prostego wybierania jest przeważnie lepszy od prostego wstawiania (które wymaga przesuwania elementów w tablicy) i tylko w przypadku elementów prawie posortowanych proste wstawianie jest od niego nieco szybsze. Jednakże wszystkie zaprezentowane algorytmy prostego sortowania mają złożoność obliczeniową O(N 2 ), co można czytać jako proporcjonalne do N 2, czyli w przypadku b. dużych wartości N algorytmy te są mało efektywne. UWAGA: zarówno 10N N, jak i N 2 /30 są rzędu O(N 2 ). Metody szybkie, o mniejszej złożoności (zwykle N lg 2 N), konieczne do zastosowania w przypadku wielkich wartości N, wymagają zaawansowanych algorytmów (np. quicksort) lub zaawansowanych struktur danych (np. drzew binarnych). Dla małych i średnich wartości N algorytmy prostego sortowania są natomiast całkowicie wystarczające, a wybierając któryś z nich należy przede wszystkim kierować się czytelnością kodu i łatwością jego użycia.
8 Tablice i rekordy 8 Są to złożone struktury danych, które pozwalają za pomocą jednej nazwy zapamiętać wiele wartości (elementów). w tablicy (zmiennej typu tablicowego) - wszystkie elementy muszą być tego samego typu, rozróżniane są za pomocą indeksów. w rekordzie (zmiennej typu struktura) - elementy (pola) rekordu mogą być różnych typów, rozróżniane są za pomocą nazw. a 0... i... N a[0]... a[i]... a[n-1] indeksy elementów nazwy pól typy pól tak odwołujemy się do elementów tablicy o nazwie a...a tak odwołujemy się do pól rekordu o nazwie osoba1 osoba1.imie osoba1.nazwisko osoba1.zarobki... imie string nazwisko string plec char dzien int miesiac int rok int zarobki double jest_w_pracy bool
9 Struktury i rekordy 9 REKORDY pozwalają za pomocą jednej nazwy przechowywać wiele elementów różnych typów. Żeby zdefiniować pojedyncze rekordy, trzeba najpierw zdefiniować ich strukturę, czy nowy typ danych. Definicja struktury - czyli typu strukturalnego (inaczej: rekordowego) struct nazwa struktury { typ pola nazwa pola,..., nazwa pola; // nazwy pól i ich typ... typ pola nazwa pola,..., nazwa pola; } ; // uwaga - średnik na końcu!!! Definicja pojedynczych rekordów - czyli zmiennych typu strukturalnego nazwa struktury nazwa rekordu,..., nazwa rekordu; typ danych nazwy zmiennych tego typu Desygnator ( oznacznik ) pola rekordu nazwa rekordu. nazwa pola lub tu są kropki nazwa rekordu. nazwa pola. nazwa pola itd.
10 Nazwy typów a nazwy zmiennych 10 Definiując struktury, czyli nowe typy danych, trzeba bardzo uważać, by nie pomylić nazwy struktury (czyli nowo zdefiniowanego typu) z nazwą zmiennej tego typu. Aby uniknąć pomyłek, warto nazwy typów strukturalnych rozpoczynać od wielkiej litery S (jak Struktura) albo T (jak Typ) albo od innej wielkiej litery. zalecany styl using namespace std; struct SOsoba { definicje struktur najlepiej umieszczać string imie, nazwisko; poza funkcją main (jako def. zewnętrzne) char plec; zdefiniowaliśmy nowy typ danych - int dzien, miesiac, rok; nową strukturę o nazwie SOsoba; double zarobki; // pole zarobki jest typu double każde z pól struktury ma podany typ bool jest_w_pracy; }; int main( ) { SOsoba osoba1, osoba2, szef; // tak definiujemy rekordy - zmienne typu SOsoba cin >> szef.zarobki; a tak odwołujemy się do pól tych rekordów szef.imie = "Jan"; }... cin >> SOsoba.zarobki; SOsoba.plec= M ; Tak nie wolno! SOsoba to nie zmienna, tylko typ danych.
11 Przykład struktury zagnieżdżonej 11 nazwa typu danych nazwy pól // najpierw trzeba zdefiniować strukturę SData: struct SData { int dzien, miesiac, rok; }; // a dopiero teraz można zdefiniować strukturę SOsoba: struct SOsoba { string imie, nazwisko; char plec; SData data; // tu jest pole o nazwie data, typu SData double zarobki; bool jest_w_pracy; }; SOsoba pracownik; pracownik.data.rok = 2014; // pracownik jest zmienną typu SOsoba // tak odwołujemy się do pól struktur zagnieżdżonych
12 Operacje wykonywane na rekordach (i tablicach) 12 REKORDY należy wczytywać i drukować odwołując się do kolejnych pól rekordu, nie wolno tych operacji wykonywać na całych rekordach: cout << szef.nazwisko << szef.imie << szef.zarobki // drukujemy różne dane szefa cout << szef; // nie wolno drukować szefa w całości! Przypomnienie: ta sama zasada odnosi się do TABLIC: wczytujemy i drukujemy kolejne elementy tablic, a nie tablice w całości: const N=20; int i, a[n], b[n]; for (i=0; i<n; i++) cin >> a[i]; tablice wczytujemy element po elemencie cin >> b; b=a; // nie wolno wczytywać tablic w całości // i nie wolno kopiować całych tablic (podstawiać jednych pod drugie) UWAGA: inicjowanie rekordów w sposób analogiczny do inicjowania tablic jest niewskazane, gdyż może być różnie interpretowane przez kompilatory.
13 Tablice rekordów 13 REKORDY bardzo często są elementami tablic: using namespace std; struct Tpunkt { double x,y; // definicja struktury o nazwie Tpunkt }; int main ( ) { const N=10; Tpunkt p[n], q[n]; // definicja tablic p i q zawierających N elementów typu Tpunkt for (int i=0; i<n; i++) cin >> p[i].x >> p[i].y; tak wczytujemy dane do tablicy p for (int i=0; i<n; i++) cin >> p[i]; for (int i=0; i<n; i++) q[i] = p[i]; Tpunkt schowek = p[0]; p[0] = p[n-1]; p[n-1] = schowek; tak nie wolno - nie da się wczytać rekordów w całości ale można wykonywać przypisania całych rekordów, o ile ich polami nie są tablice - na to należy uważać! Taka możliwość przypisania nie jest więc zbyt bezpieczna.
14 Struktury rekordów a klasy obiektów 14 Programowanie strukturalne: struktura struktura - typ danych (inaczej: typ strukturalny, typ rekordowy, wzorzec struktury, szablon) rekord 1 rekord 2... rekord n zmienne danego typu (zmienne strukturalne, bywają w uproszczeniu, niezbyt poprawnie, nazywane strukturami) Programowanie obiektowe: klasa obiekt 1 obiekt 2... obiekt n klasa - typ danych (inaczej: typ obiektowy, szablon obiektów) zmienne danego typu (zmienne obiektowe, instancje klasy, egzemplarze klasy)
15 Kilka uwag przed sprawdzianem nr 1 15 Założenia podstawowe Należy bardzo dokładnie czytać treść zadań. Zadania rozwiązujemy za pomocą konstrukcji, które były już przedmiotem zajęć laboratoryjnych, innych nie używamy. Ocena zadania nie zależy od efektywności jego rozwiązania, wystarczy, że jest ono poprawne (wyjątkiem jest nieumiejętność poruszania się po przekątnych w tablicy w jednej pętli). Nie robić tego, co nie podano w zadaniu, np. nie drukować tablic, jeśli nie było takiego polecenia. Jeśli w zadaniu nie jest podane, jakiego typu są wczytywane dane liczbowe, to można przyjąć dowolny typ danych (double lub int). Wszelkie inne założenia konieczne do rozwiązania zadania, a nie podane w treści, mogą być przyjęte dowolnie (należy wtedy dopisać komentarz na ten temat). UWAGA: Prace muszą być czytelne!!!
16 Kilka uwag Uwagi edycyjne 16 Uwagi edycyjne (przypomnienie): Do porównywania wyrażeń używać operatora ==, nie zaś = Nie wstawiać z rozpędu średnika tuż za nawiasem zamykającym warunek w instrukcji if ( ) lub za nawiasem kończącym definicję instrukcji for ( ), bo to oznacza, że ma się wykonywać instrukcja pusta. Uwagi edycyjne (nowe!): Nie zapominać o średniku za klamrą zamykającą definicję struktury. Nie kończyć komentarza (rozpoczynającego się od //) znakiem backslash \, bo to oznacza, że następna linia będzie doklejona do tego komentarza i też traktowana jako komentarz zaś edytor wcale nie pokaże, że jest to linia nieaktywna - i to jest najbardziej niebezpieczne!
17 Kilka uwag Pętle for i while 17 W pętlach for, while i do-while wykonuje się zawsze tylko jedna instrukcja, więc jeśli ma się wykonywać ich kilka, trzeba je ująć w klamry { }. To samo dotyczy instrukcji if. Na ogół warunek w pętli while polega na sprawdzeniu jakiejś zmiennej, i ta zmienna musi być wczytana jednorazowo przed pętlą while (lub inaczej przed wejściem do pętli określona). Nie wolno więc napisać np. while (x>0) {...}, jeśli wcześniej nie poznaliśmy wartości zmiennej x. Jeśli wczytywany ciąg ma się kończyć jakimiś dwiema kolejnymi liczbami etc., to nie wolno danych wczytywać w pętli parami i porównywać ich z tymi dwiema końcowymi; zmienne należy wczytywać w pętli po jednej, uprzednio zapamiętując wartość poprzednią, i w każdym kroku sprawdzać warunek dotyczący dwu kolejnych wartości. Jeśli w pętli mamy sprawdzać wartość bieżącą i poprzednią, to zanim wczytamy nową wartość bieżącą, trzeba uaktualnić wartość poprzednią. Odwrotna kolejność jest zupełnie bez sensu i świadczy o próbie nauczenia się programowania na pamięć (co nie jest wykonalne!).
18 Kilka uwag Maksima-minima i zadania z tablicami 18 Wartość początkowa maksimum powinna należeć do zbioru wartości, wśród których szukamy maksimum - albo być od tych wartości na pewno mniejsza. Podstawienie max=0 jest więc dozwolone tylko w bardzo szczególnych przypadkach (jeśli w zbiorze przeszukiwanym jest co najmniej jedna liczba >=0). Analogiczna zasada dotyczy szukania minimum. Jeśli chcemy zlokalizować wartość maksymalną/minimalną w tablicy, trzeba nie tylko zapamiętywać w pętli indeksy aktualnego maksimum/minimum, ale także przed petlą ustawić wartości początkowe tych indeksów. Tablice indeksowane są od 0, zatem ostatni element tablicy N-elementowej ma indeks N-1. Po przekątnych tablicy i po pojedynczych wierszach i kolumnach poruszamy się z użyciem pętli pojedynczej. Do poruszania się w pozostałych przypadkach - używamy pętli podwójnej (pętli w pętli) Ustawianie wartości początkowych sum, maksimów, indeksów etc. w tablicy należy wykonywać zależnie od zadania - często dla każdego wiersza/kolumny od nowa (a więc wewnątrz pętli zewnętrznej).
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ółowoPodstawowe 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ółowoZASADY 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ółowo1 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ółowoDefinicja. Ciąg wejściowy: Funkcja uporządkowująca: Sortowanie polega na: a 1, a 2,, a n-1, a n. f(a 1 ) f(a 2 ) f(a n )
SORTOWANIE 1 SORTOWANIE Proces ustawiania zbioru elementów w określonym porządku. Stosuje się w celu ułatwienia późniejszego wyszukiwania elementów sortowanego zbioru. 2 Definicja Ciąg wejściowy: a 1,
Bardziej szczegółowoAlgorytmy 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ółowoLaboratorium 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ółowoMETODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02
METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE Wykład 02 NAJPROSTSZY PROGRAM /* (Prawie) najprostszy przykład programu w C */ /*==================*/ /* Między tymi znaczkami można pisać, co się
Bardziej szczegółowoZASADY 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
Bardziej szczegółowoAlgorytmy 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ółowoTablice. 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ółowoPodstawy 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ółowoPodstawy algorytmiki i programowania - wykład 4 C-struktury
1 Podstawy algorytmiki i programowania - wykład 4 C-struktury 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
Bardziej szczegółowoInformacje wstępne #include <nazwa> - derektywa procesora umożliwiająca włączenie do programu pliku o podanej nazwie. Typy danych: char, signed char
Programowanie C++ Informacje wstępne #include - derektywa procesora umożliwiająca włączenie do programu pliku o podanej nazwie. Typy danych: char, signed char = -128 do 127, unsigned char = od
Bardziej szczegółowoTablice 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ółowoStruktury Struktura polami struct struct struct struct
Struktury Struktura jest zbiorem zmiennych występujących pod wspólna nazwą. Zmienne wchodzące w skład struktury nazywane są polami lub elementami, a czasem członkami struktury. Struktury używamy, jeśli
Bardziej szczegółowo1 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ółowoProgramowanie 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ółowotablica: dane_liczbowe
TABLICE W JĘZYKU C/C++ tablica: dane_liczbowe float dane_liczbowe[5]; dane_liczbowe[0]=12.5; dane_liczbowe[1]=-0.2; dane_liczbowe[2]= 8.0;... 12.5-0.2 8.0...... 0 1 2 3 4 indeksy/numery elementów Tablica
Bardziej szczegółowoSortowanie 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ółowoPodstawy Programowania Podstawowa składnia języka C++
Podstawy Programowania Podstawowa składnia języka C++ Katedra Analizy Nieliniowej, WMiI UŁ Łódź, 3 października 2013 r. Szablon programu w C++ Najprostszy program w C++ ma postać: #include #include
Bardziej szczegółowoPodstawy 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
Bardziej szczegółowoC-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ć.
Bardziej szczegółowoC-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ć.
Bardziej szczegółowoProgramowanie Proceduralne
Programowanie Proceduralne Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 1 Bożena Woźna-Szcześniak (AJD) Programowanie Proceduralne Wykład 1 1 / 59 Cel wykładów z programowania
Bardziej szczegółowoLABORATORIUM 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ółowoTablice i struktury. czyli złożone typy danych. Programowanie Proceduralne 1
Tablice i struktury czyli złożone typy danych. Programowanie Proceduralne 1 Tablica przechowuje elementy tego samego typu struktura jednorodna, homogeniczna Elementy identyfikowane liczbami (indeksem).
Bardziej szczegółowoJak zawsze wyjdziemy od terminologii. While oznacza dopóki, podczas gdy. Pętla while jest
Pętle Pętla to pewien fragment kodu, który jest wykonywany wielokrotnie. Wyobraź sobie taką sytuację. Piszesz program do szyfrowania danych. Dane są szyfrowane kolejno bajt po bajcie. Załóżmy, że plik
Bardziej szczegółowoZASADY PROGRAMOWANIA KOMPUTERÓW ZAP zima 2014/2015. Drzewa BST c.d., równoważenie drzew, kopce.
POLITECHNIKA WARSZAWSKA Instytut Automatyki i Robotyki ZASADY PROGRAMOWANIA KOMPUTERÓW ZAP zima 204/205 Język programowania: Środowisko programistyczne: C/C++ Qt Wykład 2 : Drzewa BST c.d., równoważenie
Bardziej szczegółowotyp 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;
Bardziej szczegółowoRozwiązanie. #include <cstdlib> #include <iostream> using namespace std;
Programowanie C++ Zadanie 1 Napisz program do obliczenia sumy i iloczynu ciągu liczb zakooczonego liczbą zero. Zakładamy, że ciąg zawiera co najmniej jedną liczbę (założenie to jest konieczne przy obliczeniu
Bardziej szczegółowoAnaliza algorytmów zadania podstawowe
Analiza algorytmów zadania podstawowe Zadanie 1 Zliczanie Zliczaj(n) 1 r 0 2 for i 1 to n 1 3 do for j i + 1 to n 4 do for k 1 to j 5 do r r + 1 6 return r 0 Jaka wartość zostanie zwrócona przez powyższą
Bardziej szczegółowoAlgorytmy 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ółowoMateriał 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ółowoznalezienia elementu w zbiorze, gdy w nim jest; dołączenia nowego elementu w odpowiednie miejsce, aby zbiór pozostał nadal uporządkowany.
Przedstawiamy algorytmy porządkowania dowolnej liczby elementów, którymi mogą być liczby, jak również elementy o bardziej złożonej postaci (takie jak słowa i daty). Porządkowanie, nazywane również często
Bardziej szczegółowoAlgorytm selekcji Hoare a. Łukasz Miemus
Algorytm selekcji Hoare a Łukasz Miemus 1 lutego 2006 Rozdział 1 O algorytmie 1.1 Problem Mamy tablicę A[N] różnych elementów i zmienną int K, takie że 1 K N. Oczekiwane rozwiązanie to określenie K-tego
Bardziej szczegółowoINFORMATYKA Z MERMIDONEM. Programowanie. Moduł 5 / Notatki
INFORMATYKA Z MERMIDONEM Programowanie Moduł 5 / Notatki Projekt współfinansowany ze środków Unii Europejskiej w ramach Europejskiego Funduszu Społecznego. Realizator projektu: Opracowano w ramach projektu
Bardziej szczegółowoInicjacja tablicy jednowymiarowej
TABLICE C++ Inicjacja tablicy jednowymiarowej typ_komórek_tablicy nazwa_tablicy [ ilość elementów tablicy ] ; np.: int tablica[1000]; czyli tablica, która może przechowywać tysiąc elementów typu całkowitego,
Bardziej szczegółowoProgramowanie w C++ Wykład 2. Katarzyna Grzelak. 4 marca K.Grzelak (Wykład 1) Programowanie w C++ 1 / 44
Programowanie w C++ Wykład 2 Katarzyna Grzelak 4 marca 2019 K.Grzelak (Wykład 1) Programowanie w C++ 1 / 44 Na poprzednim wykładzie podstawy C++ Każdy program w C++ musi mieć funkcję o nazwie main Wcięcia
Bardziej szczegółowoProgramowanie C++ Wykład 2 - podstawy języka C++ dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki
Wykład 2 - podstawy języka C++ Instytut Automatyki i Robotyki Warszawa, 2014 Wstęp Plan wykładu Struktura programu. Zmienne i ich nazwy, podstawowe typy: całkowite, rzeczywiste, znakowe i napisowe. Instrukcje:
Bardziej szczegółowoProgramowanie 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ółowoInformatyka I. Klasy i obiekty. Podstawy programowania obiektowego. dr inż. Andrzej Czerepicki. Politechnika Warszawska Wydział Transportu 2018
Informatyka I Klasy i obiekty. Podstawy programowania obiektowego dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2018 Plan wykładu Pojęcie klasy Deklaracja klasy Pola i metody klasy
Bardziej szczegółowoWstę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
Bardziej szczegółowoPodstawy programowania. Wykład: 12. Struktury, unie, pola bitowe. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD
Podstawy programowania Wykład: 12 Struktury, unie, pola bitowe 1 dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD Podstawy programowania Struktury 2 Struktury Struktury to złożone typy danych
Bardziej szczegółowoZASADY PROGRAMOWANIA STRUKTURALNEGO ( ZAP - zima 2016 ) prof. nzw. dr hab. inż. Barbara Putz
POLITECHNIKA WARSZAWSKA Instytut Automatyki i Robotyki ZASADY PROGRAMOWANIA STRUKTURALNEGO ( ZAP - zima 2016 ) prof. nzw. dr hab. inż. Barbara Putz pok. 306, bputz@mchtr.pw.edu.pl Język programowania:
Bardziej szczegółowoZajęcia nr 2 Programowanie strukturalne. dr inż. Łukasz Graczykowski mgr inż. Leszek Kosarzewski Wydział Fizyki Politechniki Warszawskiej
Zajęcia nr 2 Programowanie strukturalne dr inż. Łukasz Graczykowski mgr inż. Leszek Kosarzewski Wydział Fizyki Politechniki Warszawskiej Pętla while #include using namespace std; int main ()
Bardziej szczegółowoPodstawy języka C++ Maciej Trzebiński. Instytut Fizyki Jądrowej Polskiej Akademii Nauk. Praktyki studenckie na LHC IVedycja,2016r.
M. Trzebiński C++ 1/14 Podstawy języka C++ Maciej Trzebiński Instytut Fizyki Jądrowej Polskiej Akademii Nauk Praktyki studenckie na LHC IVedycja,2016r. IFJ PAN Przygotowanie środowiska pracy Niniejsza
Bardziej szczegółowoWYKŁAD 9. Algorytmy sortowania elementów zbioru (tablic) Programy: c4_1.c... c4_3.c. Tomasz Zieliński
WYKŁAD 9 Algorytmy sortowania elementów zbioru (tablic) Programy: c4_1.c... c4_3.c Tomasz Zieliński /* Przyklad 4.1 - SORTOWANIE TABLIC - metoda najprostsza */ #include #define ROZMIAR 11 void
Bardziej szczegółowoPODSTAWY INFORMATYKI wykład 5.
PODSTAWY INFORMATYKI wykład 5. Adrian Horzyk Web: http://home.agh.edu.pl/~horzyk/ E-mail: horzyk@agh.edu.pl Google: Adrian Horzyk Gabinet: paw. D13 p. 325 Akademia Górniczo-Hutnicza w Krakowie WEAIiE,
Bardziej szczegółowoWymiar 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
Bardziej szczegółowoPodstawy Programowania
Podstawy Programowania Monika Wrzosek Instytut Matematyki Uniwersytet Gdański Matematyka 2017/18 Monika Wrzosek (IM UG) Podstawy Programowania 1 / 119 Sprawy organizacyjne E-mail: mwrzosek@mat.ug.edu.pl
Bardziej szczegółowoLab 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ółowoDeklaracja struktury w C++
Struktury to złożone typy danych pozwalające przechowywać różne informacje. Za pomocą struktur możliwe jest grupowanie wielu zmiennych o różnych typach w jeden obiekt. Strukturę można nazywać obiektem
Bardziej szczegółowoWstę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.
Bardziej szczegółowoZASADY PROGRAMOWANIA STRUKTURALNEGO ( ZAP ) rok ak. 2012/2013. prof. nzw. dr hab. inż. Barbara Putz. Podstawowe pojęcia, najprostsze programy
POLITECHNIKA WARSZAWSKA Instytut Automatyki i Robotyki ZASADY PROGRAMOWANIA STRUKTURALNEGO ( ZAP ) rok ak. 2012/2013 prof. nzw. dr hab. inż. Barbara Putz pok. 306 Język programowania: C/C++ Środowisko
Bardziej szczegółowoSzablony funkcji i szablony klas
Bogdan Kreczmer bogdan.kreczmer@pwr.wroc.pl Zakład Podstaw Cybernetyki i Robotyki Instytut Informatyki, Automatyki i Robotyki Politechnika Wrocławska Kurs: Copyright c 2011 Bogdan Kreczmer Niniejszy dokument
Bardziej szczegółowoWiadomości wstępne Środowisko programistyczne Najważniejsze różnice C/C++ vs Java
Wiadomości wstępne Środowisko programistyczne Najważniejsze różnice C/C++ vs Java Cechy C++ Język ogólnego przeznaczenia Można programować obiektowo i strukturalnie Bardzo wysoka wydajność kodu wynikowego
Bardziej szczegółowoSzablony funkcji i klas (templates)
Instrukcja laboratoryjna nr 3 Programowanie w języku C 2 (C++ poziom zaawansowany) Szablony funkcji i klas (templates) dr inż. Jacek Wilk-Jakubowski mgr inż. Maciej Lasota dr inż. Tomasz Kaczmarek Wstęp
Bardziej szczegółowoWstęp do informatyki- wykład 7
1 Wstęp do informatyki- wykład 7 Operatory przypisania, złożone operatory przypisania, Pętla while i do..while Treści prezentowane w wykładzie zostały oparte o: S. Prata, Język C++. Szkoła programowania.
Bardziej szczegółowoProgram 6. Program wykorzystujący strukturę osoba o polach: imię, nazwisko, wiek. W programie wykorzystane są dwie funkcje:
Program 6 Program wykorzystujący strukturę osoba o polach: imię, nazwisko, wiek. W programie wykorzystane są dwie funkcje: Funkcja pobierz_osobe wczytuje dane osoby podanej jako argument. Funkcja wypisz_osobe
Bardziej szczegółowoWstę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
Bardziej szczegółowoSortowanie - wybrane algorytmy
Sortowanie - wybrane algorytmy Aleksandra Wilkowska Wydział Matematyki - Katedra Matematyki Stosowanej Politechika Wrocławska 2 maja 2018 1 / 39 Plan prezentacji Złożoność obliczeniowa Sortowanie bąbelkowe
Bardziej szczegółowoPętle i tablice. Spotkanie 3. Pętle: for, while, do while. Tablice. Przykłady
Pętle i tablice. Spotkanie 3 Dr inż. Dariusz JĘDRZEJCZYK Pętle: for, while, do while Tablice Przykłady 11/26/2016 AGH, Katedra Informatyki Stosowanej i Modelowania 2 Pętla w największym uproszczeniu służy
Bardziej szczegółowoAlgorytmy 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ółowoProgramowanie obiektowe i C++ dla matematyków
Programowanie obiektowe i C++ dla matematyków Bartosz Szreder szreder (at) mimuw... 22 XI 2011 Uwaga! Ponieważ już sobie powiedzieliśmy np. o wskaźnikach i referencjach, przez które nie chcemy przegrzebywać
Bardziej szczegółowoProgramowanie - wykład 4
Programowanie - wykład 4 Filip Sośnicki Wydział Fizyki Uniwersytet Warszawski 20.03.2019 Przypomnienie Prosty program liczący i wyświeltający wartość silni dla wprowadzonej z klawiatury liczby: 1 # include
Bardziej szczegółowoJę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ółowoZadania do wykonania. Rozwiązując poniższe zadania użyj pętlę for.
Zadania do wykonania Rozwiązując poniższe zadania użyj pętlę for. 1. apisz program, który przesuwa w prawo o dwie pozycje zawartość tablicy 10-cio elementowej liczb całkowitych tzn. element t[i] dla i=2,..,9
Bardziej szczegółowolekcja 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ółowoWstęp do programowania
Wstęp do programowania Algorytmy na tablicach Paweł Daniluk Wydział Fizyki Jesień 2013 P. Daniluk (Wydział Fizyki) WP w. III Jesień 2013 1 / 23 Dwadzieścia pytań Zasady 1 Osoba 1 wymyśla hasło z ustalonej
Bardziej szczegółowoProgramowanie proceduralne INP001210WL rok akademicki 2017/18 semestr letni. Wykład 3. Karol Tarnowski A-1 p.
Programowanie proceduralne INP001210WL rok akademicki 2017/18 semestr letni Wykład 3 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji (1) Co to jest algorytm? Zapis algorytmów Algorytmy
Bardziej szczegółowoSortowanie bąbelkowe - wersja nr 1 Bubble Sort
Sortowanie bąbelkowe - wersja nr 1 Bubble Sort Algorytm Algorytm sortowania bąbelkowego jest jednym z najstarszych algorytmów sortujących. Można go potraktować jako ulepszenie opisanego w poprzednim rozdziale
Bardziej szczegółowoPodstawy programowania. Wykład 6 Złożone typy danych: struktury, unie. Krzysztof Banaś Podstawy programowania 1
Podstawy programowania. Wykład 6 Złożone typy danych: struktury, unie Krzysztof Banaś Podstawy programowania 1 są sposobem na przechowywanie w ramach pojedynczej zmiennej zestawu zmiennych różnych typów,
Bardziej szczegółowoJę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
Bardziej szczegółowoZASADY PROGRAMOWANIA STRUKTURALNEGO ( ZAP - zima 2014 ) prof. nzw. dr hab. inż. Barbara Putz
POLITECHNIKA WARSZAWSKA Instytut Automatyki i Robotyki ZASADY PROGRAMOWANIA STRUKTURALNEGO ( ZAP - zima 2014 ) prof. nzw. dr hab. inż. Barbara Putz pok. 306 Język programowania: C/C++ Środowisko programowania:
Bardziej szczegółowoKlasa 2 INFORMATYKA. dla szkół ponadgimnazjalnych zakres rozszerzony. Założone osiągnięcia ucznia wymagania edukacyjne na. poszczególne oceny
Klasa 2 INFORMATYKA dla szkół ponadgimnazjalnych zakres rozszerzony Założone osiągnięcia ucznia wymagania edukacyjne na poszczególne oceny Algorytmy 2 3 4 5 6 Wie, co to jest algorytm. Wymienia przykłady
Bardziej szczegółowoJęzyk ludzki kod maszynowy
Język ludzki kod maszynowy poziom wysoki Język ludzki (mowa) Język programowania wysokiego poziomu Jeśli liczba punktów jest większa niż 50, test zostaje zaliczony; w przeciwnym razie testu nie zalicza
Bardziej szczegółowoZASADY PROGRAMOWANIA STRUKTURALNEGO ( ZAP - zima 2015 ) prof. nzw. dr hab. inż. Barbara Putz
POLITECHNIKA WARSZAWSKA Instytut Automatyki i Robotyki ZASADY PROGRAMOWANIA STRUKTURALNEGO ( ZAP - zima 2015 ) prof. nzw. dr hab. inż. Barbara Putz pok. 306 Język programowania: C/C++ Środowisko programowania:
Bardziej szczegółowoSortowanie. Bartman Jacek Algorytmy i struktury
Sortowanie Bartman Jacek jbartman@univ.rzeszow.pl Algorytmy i struktury danych Sortowanie przez proste wstawianie przykład 41 56 17 39 88 24 03 72 41 56 17 39 88 24 03 72 17 41 56 39 88 24 03 72 17 39
Bardziej szczegółowoSortowanie bąbelkowe
1/98 Sortowanie bąbelkowe (Bubble sort) prosty i nieefektywny algorytm sortowania wielokrotnie przeglądamy listę elementów, porównując dwa sąsiadujące i zamieniając je miejscami, jeśli znajdują się w złym
Bardziej szczegółowoDynamiczny przydział pamięci w języku C. Dynamiczne struktury danych. dr inż. Jarosław Forenc. Metoda 1 (wektor N M-elementowy)
Rok akademicki 2012/2013, Wykład nr 2 2/25 Plan wykładu nr 2 Informatyka 2 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr III, studia niestacjonarne I stopnia Rok akademicki 2012/2013
Bardziej szczegółowoProgramowanie 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ółowoProgramowanie komputerowe. Zajęcia 4
Programowanie komputerowe Zajęcia 4 Typ logiczny Wartości logiczne są reprezentowane przez typ bool. Typ bool posiada tylko dwie wartości: true i false. Zamiast wartości logicznych można używać wartości
Bardziej szczegółowoTechniki Programowania wskaźniki
Techniki Programowania wskaźniki Łukasz Madej Katedra Informatyki Stosowanej i Modelowania Wykłady opracowane we współpracy z Danutą Szeligą, Łukaszem Sztangretem Wskaźniki Dla typu T zapis T* oznacza
Bardziej szczegółowo1 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ć
Bardziej szczegółowoStrategia "dziel i zwyciężaj"
Strategia "dziel i zwyciężaj" W tej metodzie problem dzielony jest na kilka mniejszych podproblemów podobnych do początkowego problemu. Problemy te rozwiązywane są rekurencyjnie, a następnie rozwiązania
Bardziej szczegółowoPodstawy 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ółowoWykł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ółowoInformacje ogólne. Karol Trybulec p-programowanie.pl 1. 2 // cialo klasy. class osoba { string imie; string nazwisko; int wiek; int wzrost;
Klasy w C++ są bardzo ważnym narzędziem w rękach programisty. Klasy są fundamentem programowania obiektowego. Z pomocą klas będziesz mógł tworzyć lepszy kod, a co najważniejsze będzie on bardzo dobrze
Bardziej szczegółowoĆwiczenie 3 z Podstaw programowania. Język C++, programy pisane w nieobiektowym stylu programowania. Zofia Kruczkiewicz
Ćwiczenie 3 z Podstaw programowania. Język C++, programy pisane w nieobiektowym stylu programowania Zofia Kruczkiewicz Zakres Podstawowe algorytmy przetwarzania tablic (wypełnianie, porównywanie elementów,
Bardziej szczegółowoWstęp do programowania
wykład 4 Agata Półrola Wydział Matematyki i Informatyki UŁ sem. zimowy 2017/2018 Pętle wykonujące się podaną liczbę razy Jeśli chcemy wykonać pewien fragment programu określoną liczbę razy, możemy użyć
Bardziej szczegółowoPodstawy Programowania
Podstawy Programowania dr Elżbieta Gawrońska gawronska@icis.pcz.pl Instytut Informatyki Teoretycznej i Stosowanej dr Elżbieta Gawrońska (ICIS) Podstawy Programowania 05 1 / 15 Plan wykładu 1 Biblioteka
Bardziej szczegółowoWstęp do programowania
wykład 5 Agata Półrola Wydział Matematyki i Informatyki UŁ sem. zimowy 2016/2017 Zadanie o kotach z poprzedniego wykładu # include < iostream > using namespace std ; int main (){ int rozmiar_ rodzinki,
Bardziej szczegółowoProgramowanie w C++ Wykład 2. Katarzyna Grzelak. 5 marca K.Grzelak (Wykład 1) Programowanie w C++ 1 / 41
Programowanie w C++ Wykład 2 Katarzyna Grzelak 5 marca 2018 K.Grzelak (Wykład 1) Programowanie w C++ 1 / 41 Reprezentacje liczb w komputerze K.Grzelak (Wykład 1) Programowanie w C++ 2 / 41 Reprezentacje
Bardziej szczegółowoPodstawy programowania. Wykład Pętle. Tablice. Krzysztof Banaś Podstawy programowania 1
Podstawy programowania. Wykład Pętle. Tablice. Krzysztof Banaś Podstawy programowania 1 Pętle Pętla jest konstrukcją sterującą stosowaną w celu wielokrotnego wykonania tego samego zestawu instrukcji jednokrotne
Bardziej szczegółowoWstęp do programowania INP001213Wcl rok akademicki 2017/18 semestr zimowy. Wykład 13. Karol Tarnowski A-1 p.
Wstęp do programowania INP001213Wcl rok akademicki 2017/18 semestr zimowy Wykład 13 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji (1) Złożoność algorytmów czy to istotne, skoro
Bardziej szczegółowoWykład 1_2 Algorytmy sortowania tablic Sortowanie bąbelkowe
I. Struktury sterujące.bezpośrednie następstwo (A,B-czynności) Wykład _2 Algorytmy sortowania tablic Sortowanie bąbelkowe Elementy języka stosowanego do opisu algorytmu Elementy Poziom koncepcji Poziom
Bardziej szczegółowoWstęp do programowania INP001213Wcl rok akademicki 2018/19 semestr zimowy. Wykład 13. Karol Tarnowski A-1 p.
Wstęp do programowania INP001213Wcl rok akademicki 2018/19 semestr zimowy Wykład 13 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji (1) Złożoność algorytmów czy to istotne, skoro
Bardziej szczegółowoWprowadzenie do języka Java
WSNHiD, Programowanie 2 Lab. 1 [ część 1 ] Wprowadzenie do języka Java Wprowadzenie Język programowania Java jest obiektowym językiem programowania. Powstał w 1995 i od tej pory był intensywnie rozwijany.
Bardziej szczegółowoSortowanie. LABORKA Piotr Ciskowski
Sortowanie LABORKA Piotr Ciskowski main Zaimplementuj metody sortowania przedstawione w następnych zadaniach Dla każdej metody osobna funkcja Nagłówek funkcji wg uznania ale wszystkie razem powinny być
Bardziej szczegółowo