jezyk-c++.-owoce-programowania.-wydanie-ix full scan.pdf

(38721 KB) Pobierz
Spis treści
Przedmowa ...................................................................... 15
ROZDZIAŁ 1.
Wprowadzenie do komputerów i programowania ...... 29
1.1.
1.2.
1.3.
1.4.
1.5.
1.6.
1.7.
Dlaczego tworzymy oprogramowanie? .................................29
Systemy komputerowe: sprzęt i oprogramowanie .................31
Programy i języki programowania .........................................37
Z czego składa się program? ................................................43
Przyjmowanie danych, ich przetwarzanie i wynik ...................47
Proces programowania .........................................................48
Programowanie proceduralne i obiektowe ............................52
Pytania i
ćwiczenia
kontrolne ...........................................................54
ROZDZIAŁ 2.
Wprowadzenie do języka C++ ...................................... 57
2.1.
2.2.
2.3.
2.4.
2.5.
2.6.
2.7.
2.8.
2.9.
Elementy programu w języku C++ .......................................57
Obiekt cout ..........................................................................61
Dyrektywa #include .............................................................66
Zmienne, literały i wyrażenia przypisania ...............................67
Identyfikatory .......................................................................71
Typy danych liczb całkowitych ..............................................73
Typ char ...............................................................................78
Klasa string w C++ .............................................................82
Typy danych liczb zmiennoprzecinkowych .............................84
2.10. Typ danych bool ...................................................................87
2.11. Określanie rozmiaru typu danych ..........................................88
2.12. Więcej o inicjowaniu zmiennych i przypisywaniu wartości .....90
2.13. Zasięg zmiennych .................................................................92
5
Kup książkę
Poleć książkę
6
Spis treści
2.14. Operatory arytmetyczne .......................................................93
2.15. Komentarze .......................................................................100
2.16. Stałe nazwane ...................................................................102
2.17. Styl programowania ...........................................................105
Pytania i
ćwiczenia
kontrolne .........................................................107
Wyzwania programistyczne ...........................................................111
ROZDZIAŁ 3.
Wyrażenia i interaktywność ......................................... 115
3.1.
3.2.
3.3.
3.4.
3.5.
3.6.
3.7.
3.8.
3.9.
Obiekt cin ..........................................................................115
Wyrażenia matematyczne ...................................................121
Gdy pomylisz jabłka z pomarańczami: konwersja typów ......129
Przepełnienie i zaniżenie .....................................................132
Rzutowanie typów .............................................................133
Wielokrotne przypisania i przypisania
łączone
.....................136
Formatowanie wyjścia ........................................................140
Operacje na znakach i obiekcie string .................................149
Więcej matematycznych funkcji bibliotecznych ....................155
3.10. Rzecz o debugowaniu: ręczne
śledzenie
programu ..............161
3.11. Rozwiązywanie problemu: analiza przypadku ......................162
Pytania i
ćwiczenia
kontrolne .........................................................166
Wyzwania programistyczne ...........................................................172
ROZDZIAŁ 4.
Podejmowanie decyzji .................................................. 181
4.1.
4.2.
4.3.
4.4.
4.5.
4.6.
4.7.
4.8.
4.9.
Operatory relacji .................................................................181
Instrukcja if ........................................................................186
Rozszerzanie instrukcji if .....................................................194
Instrukcja if/else .................................................................197
Zagnieżdżone struktury warunkowe ...................................200
Instrukcja if/else if ..............................................................207
Flagi ..................................................................................212
Operatory logiczne .............................................................213
Sprawdzanie przedziału liczbowego za pomocą
operatorów logicznych .......................................................220
4.10. Menu .................................................................................222
4.11. Rzecz o inżynierii oprogramowania: walidacja wejścia
użytkownika .......................................................................224
4.12. Porównywanie typów char i string ......................................226
4.13. Operator warunkowy .........................................................230
Kup książkę
Poleć książkę
Spis treści
7
4.14. Instrukcja switch ................................................................233
4.15. Więcej o blokach i zasięgu zmiennych .................................241
Pytania i
ćwiczenia
kontrolne .........................................................244
Wyzwania programistyczne ...........................................................250
ROZDZIAŁ 5.
Pętle i pliki ..................................................................... 261
5.1.
5.2.
5.3.
5.4.
5.5.
5.6.
5.7.
5.8.
5.9.
Operatory inkrementacji i dekrementacji .............................261
Wprowadzenie do pętli: pętla while ....................................266
Walidacja wejścia za pomocą pętli while .............................273
Liczniki ...............................................................................275
Pętla do-while ....................................................................276
Pętla for .............................................................................281
Obliczanie sumy bieżącej ....................................................291
Wartownik .........................................................................293
Rzecz o inżynierii oprogramowania: której pętli użyć? .........295
5.10. Pętle zagnieżdżone ............................................................296
5.11. Zastosowanie plików do przechowywania danych ...............298
5.12. Temat dodatkowy: przerywanie i kontynuowanie pętli ........318
Pytania i
ćwiczenia
kontrolne .........................................................322
Wyzwania programistyczne ...........................................................327
ROZDZIAŁ 6.
Funkcje ........................................................................... 335
6.1.
6.2.
6.3.
6.4.
6.5.
6.6.
6.7.
6.8.
6.9.
Rzecz o inżynierii oprogramowania: programowanie
modułowe .........................................................................335
Definicja i wywoływanie funkcji ..........................................336
Prototypy funkcji ................................................................344
Przekazywanie danych do funkcji ........................................346
Przekazywanie danych przez wartość ..................................350
Rzecz o inżynierii oprogramowania: zastosowanie funkcji
w programie sterowanym przez menu ................................352
Instrukcja return .................................................................356
Zwracanie wartości z funkcji ...............................................357
Zwracanie wartości boolowskiej ..........................................365
6.10. Zmienne lokalne i globalne .................................................367
6.11. Statyczne zmienne lokalne ..................................................374
6.12. Argumenty domyślne .........................................................378
6.13. Zastosowanie wskaźników jako parametrów .......................381
6.14. Przeciążanie funkcji ............................................................386
6.15. Funkcja exit() ......................................................................390
Kup książkę
Poleć książkę
8
Spis treści
6.16. Funkcje wirtualne i sterowniki .............................................392
Pytania i
ćwiczenia
kontrolne .........................................................394
Wyzwania programistyczne ...........................................................398
Projekt grupowy ............................................................................406
ROZDZIAŁ 7.
Tablice i wektory ........................................................... 409
7.1.
7.2.
7.3.
7.4.
7.5.
7.6.
7.7.
7.8.
7.9.
Tablica jako zbiór wartości ..................................................409
Dostęp do elementów tablicy .............................................411
Brak kontroli zakresów w języku C++ ................................422
Zakresowa pętla for ............................................................425
Przetwarzanie zawartości tablicy .........................................429
Rozwiązywanie problemu i projektowanie programu:
tablice równoległe ..............................................................437
Tablice w argumentach funkcji ...........................................440
Tablice dwuwymiarowe ......................................................450
Tablice o trzech i większej liczbie wymiarów ........................457
7.10. Rozwiązywanie problemu i projektowanie programu:
analiza przypadku ..............................................................459
7.11. Wprowadzenie do typu STL vector ......................................461
Pytania i
ćwiczenia
kontrolne .........................................................474
Wyzwania programistyczne ...........................................................480
ROZDZIAŁ 8.
Przeszukiwanie i sortowanie tablic ............................. 489
8.1.
8.2.
8.3.
8.4.
8.5.
Rozwiązywanie problemu i projektowanie programu:
wprowadzenie do algorytmów wyszukiwania danych ..........489
Rozwiązywanie problemu i projektowanie programu:
analiza przypadku ..............................................................496
Rozwiązywanie problemu i projektowanie programu:
wprowadzenie do algorytmów sortowania .........................502
Rozwiązywanie problemu i projektowanie programu:
analiza przypadku ..............................................................512
Sortowanie i przeszukiwanie wektorów
(kontynuacja podrozdziału 7.11) ........................................520
Pytania i
ćwiczenia
kontrolne .........................................................523
Wyzwania programistyczne ...........................................................524
ROZDZIAŁ 9.
Wskaźniki ....................................................................... 529
9.1.
9.2.
Uzyskiwanie adresu zmiennej .............................................529
Zmienne wskaźnikowe .......................................................531
Kup książkę
Poleć książkę
Zgłoś jeśli naruszono regulamin