c++.-cwiczenia-praktyczne.-wydanie-iii pełna wersja.pdf

(14449 KB) Pobierz
887613128.012.png
Spis treści
Wprowadzenie
7
Dlaczego język C++ jest tak ważny?
7
Co da Czytelnikowi ta książka?
8
Co będzie potrzebne do korzystania z książki?
9
Jak uczyć się języka z tej książki?
10
Rozdział 1.
Nasz programistyczny warsztat
11
Rozdział 2.
Nasz pierwszy program
15
Czy to działa?
15
Sposób na znikanie okienka konsoli
18
Podsumowanie
22
Rozdział 3.
Pliki źródłowe w języku C++
23
Pliki jako nośniki programów
23
Nośniki programów w C++
24
Dyrektywa #include i scalanie plików cpp i h
25
Podsumowanie
29
Rozdział 4.
Więcej o strumieniach cin i cout
31
Standardowe strumienie wejścia i wyjścia
31
Kaskadowe posługiwanie się strumieniami
34
Odrobina formatowania
36
Odrobina koloru w konsoli
41
Dźwięk w konsoli
42
Podsumowanie
42
6
C++ • Ćwiczenia praktyczne
Rozdział 5.
Przestrzeń na Twoje algorytmy
45
Początek — najlepsze miejsce na dyrektywy #include
45
Po nagłówkach — dostęp do biblioteki standardowej
47
Po bibliotece standardowej — nasze własne deklaracje
48
Funkcja main() — centrum programu
50
Po funkcji main() — definicje innych funkcji
53
Podsumowanie
54
Rozdział 6.
Algorytmy
57
Zwrotnica if() … else …
57
Zwrotnica switch{...}
63
Pętla for( ...; ...; ...)
69
Pętla while(...)
75
Pętla do {...} while(...)
78
Instrukcje break i continue
80
Podsumowanie
85
Rozdział 7.
Funkcje
87
Deklarowanie funkcji
87
Definiowanie funkcji
88
Argumenty funkcji i referencja
96
Trochę zabawy z dźwiękiem
101
Podsumowanie
102
Rozdział 8.
Dane
103
Typy danych
103
Deklarowanie oraz inicjowanie prostych danych
106
Deklarowanie oraz inicjowanie danych tablicowych
108
Deklarowanie oraz inicjowanie danych wskaźnikowych
113
Operacje na danych
119
Podsumowanie
126
Rozdział 9.
Klasy i obiekty
127
Klasa jako nowy typ danych
127
Wewnętrzny ustrój klasy — dane
129
Wewnętrzny ustrój klasy — algorytmy
133
Pewien specjalny algorytm, zwany konstruktorem
137
Podsumowanie
145
Rozdział 10. Kontenery na dane
147
Podsumowanie
157
Zakończenie
159
7
Funkcje
Wydzielone i odpowiednio zatytułowane skrawki algorytmów
nazwiemy funkcjami. Przykładem takich wydzielonych algo-
rytmów są powszechnie znane i już wielokrotnie tutaj przy-
woływane funkcje sin() , cos() czy rand() .
Z jedną funkcją spotykamy się od samego początku — to funkcja main() ,
wbudowana na stałe w język C++. Czy możemy jednak wprowadzać
do gry swoje własne funkcje, czy też jesteśmy ograniczeni do użytko-
wania funkcji bibliotecznych dostarczonych wraz ze środowiskiem?
Oczywiście, że możemy deklarować i definiować własne funkcje. Jest
to jeden z najważniejszych elementów umiejętności programowania.
Deklarowanie funkcji
Każda funkcja musi być zadeklarowana (zapowiedziana) przed jej
pojawieniem się w programie. W rozdziale 5. (porównaj ćwiczenie 5.8)
zwracaliśmy uwagę, że w prostych (jednoplikowych) programach funk-
cje należy deklarować w przestrzeni między frazą dołączania algoryt-
mów biblioteki standardowej a nagłówkiem funkcji main() .
Ć WICZENIE
7.1
Deklarowanie (zapowiadanie) funkcji
Zadeklaruj rodzinę funkcji suma() , obliczającą sumę dwóch, trzech
i czterech argumentów typu całkowitego:
887613128.013.png 887613128.014.png 887613128.015.png 887613128.001.png
88
C++ • Ćwiczenia praktyczne
Ten program jeszcze nie działa.
#include <iostream>
using namespace std;
int suma( int a, int b);
int suma( int a, int b, int c);
int suma( int a, int b, int c, int d);
//-----------------------------------------------
int main()
{
cout << "2 + 3 = " << suma( 2, 3) << endl;
cout << "2 + 3 + 4 = " << suma( 2, 3, 4) << endl;
cout << "2 + 3 + 4 + 5 = " << suma( 2, 3, 4, 5) ;
char c;
cin >> c;
}
W przykładzie tym wyraźnie widzimy trzy linie deklarujące nowe
funkcje. W funkcji main() z kolei widzimy wywołania tych funkcji.
Wywołania te są zgodne z ich zapowiedziami.
Niestety, ten program nie działa (rysunek 7.1). Kompilacja kończy się
komunikatami: Brak cia ł a funkcji suma( int , int) , Brak cia ł a funkcji
suma( int, int, int) , Brak cia ł a funkcji suma( int , int, int, int) .
Środowisko programistyczne nie znalazło algorytmów, które popraw-
nie zadeklarowaliśmy i poprawnie wywołaliśmy w funkcji main() .
Wydaje się to oczywiste, bo przecież nigdzie nie zdefiniowaliśmy tych
algorytmów. Nie napisaliśmy ustrojów funkcji.
Częsty błąd: wprowadzenie do programu deklaracji funkcji, ale zapomnienie
o konieczności spisania jej ciała.
Definiowanie funkcji
Ć WICZENIE
7.2
Definiowanie (spisywanie) ciał funkcji
Uzupełnij poprzedni przykład, definiując ciała funkcji, które zostały tam
zadeklarowane:
887613128.002.png 887613128.003.png 887613128.004.png 887613128.005.png 887613128.006.png 887613128.007.png 887613128.008.png 887613128.009.png 887613128.010.png 887613128.011.png
 
Zgłoś jeśli naruszono regulamin