- Wstęp (9)
Rozdział 1. Rozumienie i analizowanie problemów. Algorytmy i ich zastosowanie (11)
- Temat 1. Sposoby reprezentowania algorytmów (12)
- 1.1. Pseudokod (12)
- 1.2. Rozwiązywanie równania kwadratowego (14)
- Temat 2. Wprowadzenie do języka C++ - podstawowe konstrukcje i analiza przykładów (22)
- 2.1. Struktura programu (23)
- 2.2. Operacje wejścia-wyjścia (25)
- 2.3. Zmienne, stałe, wskaźniki i referencje (29)
- 2.4. Wyrażenia arytmetyczne, relacje i operatory logiczne (32)
- 2.5. Priorytety relacji i działań (37)
- 2.6. Funkcje matematyczne (38)
- 2.7. Komentarze (40)
- 2.8. Podstawowe konstrukcje algorytmiczne (40)
- 2.9. Proste typy danych (52)
- 2.10. Funkcje w języku C++ (53)
- 2.11. Strukturalne typy danych (62)
- Temat 3. Własności i złożoność obliczeniowa algorytmów (79)
- 3.1. Złożoność obliczeniowa i efektywność algorytmów (79)
- 3.2. Poprawność i skończoność algorytmów (84)
- 3.3. Optymalność algorytmów (85)
- Temat 4. Iteracja i rekurencja (88)
- 4.1. Obliczanie silni liczby naturalnej (88)
- 4.2. Zastosowania algorytmu Euklidesa (91)
- 4.3. Wieże Hanoi (94)
- Temat 5. Błędy w obliczeniach komputerowych (99)
- 5.1. Notacja naukowa liczb (99)
- 5.2. Błąd bezwzględny i względny (101)
- Temat 6. Rozkładanie liczby na czynniki pierwsze i sito Eratostenesa (103)
- 6.1. Faktoryzacja liczby (103)
- 6.2. Sito Eratostenesa (105)
- Temat 7. Pozycyjne systemy liczbowe i ich zastosowania (108)
- 7.1. Pozycyjne i niepozycyjne systemy liczbowe (108)
- 7.2. Konwersje pozycyjnych systemów liczbowych (110)
- 7.3. Zastosowanie systemu binarnego - szybkie potęgowanie liczb (114)
- 7.4. Operacje arytmetyczne wykonywane w różnych systemach liczbowych (116)
- 7.5. Wyznaczanie wartości wielomianu za pomocą schematu Hornera (120)
- 7.6. Zamiana liczb z dowolnego pozycyjnego systemu liczbowego na system dziesiętny z zastosowaniem schematu Hornera (123)
- Temat 8. Reprezentacja danych liczbowych w komputerze (125)
- 8.1. Reprezentacja liczb naturalnych i całkowitych w komputerze (125)
- 8.2. Stałopozycyjna reprezentacja liczb (125)
- 8.3. Binarna reprezentacja liczb ujemnych (126)
- 8.4. Zmiennopozycyjna reprezentacja liczb (127)
- Temat 9. Algorytmy liniowe na ciągach liczbowych (129)
- 9.1. Losowe generowanie ciągów liczbowych (129)
- 9.2. Liniowe przeszukiwanie ciągu liczbowego (134)
- 9.3. Liniowe przeszukiwanie ciągu liczbowego z wartownikiem (138)
- 9.4. Znajdowanie minimalnego lub maksymalnego elementu (140)
- 9.5. Sprawdzanie monotoniczności ciągu liczbowego (144)
- 9.6. Lider i idol w zbiorze (146)
- Temat 10. Algorytmy na tekstach (151)
- 10.1. Palindromy (151)
- 10.2. Sortowanie tekstu (153)
- 10.3. Anagramy (154)
- Temat 11. Szyfrowanie tekstu (159)
- 11.1. Kryptografia i kryptoanaliza (159)
- 11.2. Szyfrowanie symetryczne (161)
- 11.3. Szyfrowanie asymetryczne (167)
- Zadania do rozdziału 1. (169)
Rozdział 2. Multimedia (171)
- Temat 12. Cyfrowy zapis dźwięku (171)
- 12.1. Teoria dźwięku (171)
- 12.2. Zapis analogowy dźwięku (173)
- 12.3. Cyfrowy zapis dźwięku (173)
- Temat 13. Reprezentacja obrazu w komputerze (185)
- 13.1. Co widzi ludzkie oko? (185)
- 13.2. Barwa (186)
- 13.3. Modele barw (186)
- 13.4. Atrybuty barwy (191)
- 13.5. Własności barwy - głębia bitowa (ang. color depth) (195)
- Temat 14. Kompresja stratna i bezstratna (197)
- 14.1. Kompresja bezstratna (197)
- 14.2. Kompresja stratna (209)
- Temat 15. Modelowanie 3D (211)
- 15.1. Modelowanie 3D w programie Blender (211)
- 15.2. Renderowanie obrazu i ustawienie kamery (214)
- Temat 16. Animacje komputerowe (218)
- 16.1. Jak powstaje animacja? (218)
- 16.2. Animacja poklatkowa (ang. stop motion) (219)
- Zadania do rozdziału 2. (225)
Rozdział 3. Arkusz kalkulacyjny (227)
- Temat 17. Zaawansowane funkcje w przykładach (227)
- 17.1. Składnia funkcji (227)
- 17.2. Widok funkcji (228)
- 17.3. Funkcje generujące dane (228)
- 17.4. Zastosowanie funkcji logicznych (230)
- 17.5. Zastosowanie funkcji czasu (235)
- 17.6. Zastosowanie funkcji daty (240)
- 17.7. Zastosowanie funkcji tekstowych (246)
- 17.8. Zastosowanie funkcji zaokrągleń (253)
- Temat 18. Makropolecenia i VBA (256)
- 18.1. Nagrywanie makropolecenia (256)
- 18.2. Edycja makra w VBA (259)
- 18.3. Zastosowanie pętli FOR w VBA (262)
- 18.4. Zastosowanie instrukcji warunkowej w VBA (265)
- 18.5. Formularze użytkownika i VBA (268)
- Zadania do rozdziału 3. (272)
Rozdział 4. Relacyjna baza danych (275)
- Temat 19. Bazy danych i zarządzające nimi systemy (275)
- 19.1. Rodzaje baz danych (276)
- 19.2. Projektowanie relacyjnej bazy danych (278)
- Temat 20. Tabele w programie Access 2013 (284)
- 20.1. Tworzenie tabeli (284)
- 20.2. Typy danych w tabelach (287)
- 20.3. Podstawowe właściwości pól tabeli (291)
- 20.4. Pole kluczowe tabeli (297)
- 20.5. Definiowanie relacji (300)
- 20.6. Operacje na tabelach bazy danych (306)
- 20.7. Zmiana sposobu prezentowania danych (309)
- Temat 21. Kwerendy - zapytania (313)
- 21.1. Kwerendy wybierające (314)
- 21.2. Kwerendy krzyżowe (325)
- 21.3. Kwerendy funkcjonalne - modyfikujące (329)
- Temat 22. Język zapytań SQL (335)
- 22.1. Kwerenda oparta na jednej tabeli (335)
- 22.2. Kwerenda wybierająca dane z kilku tabel (337)
- 22.3. Sortowanie (337)
- 22.4. Kryterium wyboru (338)
- 22.5. Pola obliczeniowe (339)
- 22.6. Kwerendy parametryczne (340)
- 22.7. Kwerenda tworząca nową tabelę (340)
- 22.8. Kwerenda krzyżowa (340)
- 22.9. Tworzenie kwerend za pomocą instrukcji języka SQL (341)
- Temat 23. Formularze (344)
- 23.1. Autoformularze (344)
- 23.2. Projektowanie formularzy (346)
- Temat 24. Raporty (352)
- Temat 25. Ochrona i bezpieczeństwo danych (355)
- Zadania do rozdziału 4. (359)
- Bibliografia (361)
- Skorowidz (362)