Podstawy programowania Pascal/Java/C# : skrypt do wykładu i

Transkrypt

Podstawy programowania Pascal/Java/C# : skrypt do wykładu i
Podstawy programowania Pascal/Java/C# : skrypt do wykładu i
laboratoriów / Jacek M. Czerniak, Łukasz Apiecionek, Grzegorz Zych. –
Bydgoszcz, 2016
Spis treści
1. Wprowadzenie
1.1. Dla kogo przeznaczony jest ten skrypt?
1.2. Części skryptu
1.3. Konwencje używane w skrypcie
11
11
12
12
I. Pascal
2. Laboratorium 1. Pierwszy program
2.1. Część teoretyczna
2.1.1. Struktura programu w Pascalu
2.1.2. Najczęściej używane typy danych
2.1.3. Operatory arytmetyczne
2.1.4. Wprowadzanie i wyprowadzanie danych
2.2. Ćwiczenia
2.3. Zadania programistyczne do samodzielnego rozwiązania
2.4. Wiadomości pogłębiające
2.4.1. Dodatkowe informacje o procedurach wejścia-wyjścia
2.4.2. Uzupełnienie wbudowanych typów danych
2.4.3. Priorytety operatorów
2.4.4. Przykłady użycia rozszerzonych wiadomości
16
16
16
17
18
19
20
26
27
27
28
29
30
3. Laboratorium 2. Operacje logiczne i instrukcje warunkowe
3.1. Część teoretyczna
3.1.1. Algebra Boole’a
3.1.2. Operatory relacyjne
3.1.3. Instrukcje warunkowe
3.1.4. Narzędzia diagnostyczne
3.2. Ćwiczenia
3.3. Zadania programistyczne do samodzielnego rozwiązania
3.4. Wiadomości pogłębiające
3.4.1. Uzupełnienie dotyczące błędów
3.4.2. Operatory binarne
3.4.3. Przykłady użycia rozszerzonych wiadomości
33
33
33
36
36
38
39
45
46
46
47
48
4. Laboratorium 3. Pętle
4.1. Część teoretyczna
4.1.1. Pętla For
4.1.2. Pętla While
50
50
50
52
4.1.3. Pętla Repeat
4.1.4. Ekran tekstowy
4.2. Ćwiczenia
4.3. Zadania programistyczne do samodzielnego rozwiązania
4.4. Wiadomości pogłębiające
53
54
55
60
61
5. Laboratorium 4. Złożone typy danych
5.1. Część teoretyczna
5.1.1. Typ wyliczeniowy
5.1.2. Typ okrojony
5.1.3. Typ zbiorowy
5.1.4. Typ tablicowy
5.1.5. Typ rekordowy
5.2. Ćwiczenia
5.3. Zadania programistyczne do samodzielnego rozwiązania
5.4. Wiadomości pogłębiające
65
65
65
66
66
67
67
68
79
80
6. Laboratorium 5. Dynamiczne struktury danych
6.1. Część teoretyczna
6.1.1. Czym jest wskaźnik?
6.1.2. Lista jako struktura danych
6.1.3. Kolejka FIFO
6.1.4. Kolejka LIFO, czyli stos
6.2. Ćwiczenia
6.3. Zadania programistyczne do samodzielnego rozwiązania
6.4. Wiadomości pogłębiające
6.4.1. Lista cykliczna
6.4.2. Dwukierunkowa lista cykliczna
85
85
85
88
90
90
91
104
104
104
105
7. Dodatki
7.1. Spis słów kluczowych
7.2. Dyrektywy
7.3. Spis funkcji i procedur wbudowanych
117
117
117
118
II. Java
8. Laboratorium 1. Pierwszy program
8.1. Część teoretyczna
8.1.1. Struktura programu w Java
8.1.2. Najczęściej używane typy danych
8.1.3. Operatory arytmetyczne
8.1.4. Wprowadzanie i wyprowadzanie danych
8.2. Ćwiczenia
8.3. Zadania programistyczne do samodzielnego rozwiązania
8.4. Wiadomości pogłębiające
8.4.1. Dodatkowe informacje o procedurach wejścia-wyjścia
130
130
130
131
132
133
133
139
140
140
8.4.2. Uzupełnienie wbudowanych typów danych
8.4.3. Priorytety operatorów
8.4.4. Przykłady użycia rozszerzonych typów danych
141
142
143
9. Laboratorium 2. Operacje logiczne i instrukcje warunkowe
9.1. Część teoretyczna
9.1.1. Algebra Boole'a
9.1.2. Operatory relacyjne
9.1.3. Instrukcje warunkowe
9.2. Ćwiczenia
9.3. Zadania programistyczne do samodzielnego rozwiązania
9.4. Wiadomości pogłębiające
9.4.1. Operatory binarne
9.4.2. Przykłady użycia rozszerzonych wiadomości
145
145
145
148
148
150
156
157
157
158
10. Laboratorium 3. Pętle
10.1. Część teoretyczna
10.1.1. Pętla For
10.1.2. Pętla While
10.1.3. Pętla for each
10.2. Ćwiczenia
10.3. Zadania programistyczne do samodzielnego rozwiązania
10.4. Wiadomości pogłębiające
160
160
160
161
163
164
166
167
11. Laboratorium 4. Złożone typy danych
11.1. Część teoretyczna
11.1.1. Typ wyliczeniowy
11.1.2. Typ zbiorowy
11.1.3. Typ tablicowy
11.1.4. Klasy
11.2. Ćwiczenia
11.3. Zadania programistyczne do samodzielnego rozwiązania
11.4. Wiadomości pogłębiające
169
169
169
170
171
171
172
183
183
12. Laboratorium 5. Złożone struktury danych
12.1 Część teoretyczna
12.2. Ćwiczenia
12.3. Zadania programistyczne do samodzielnego rozwiązania
12.4. Wiadomości pogłębiające
188
188
189
193
193
III. C#
13. Laboratorium 1. Pierwszy program
13.1 Część teoretyczna
13.1.1. Struktura programu w C#
13.1.2. Najczęściej używane typy danych
196
196
196
198
13.1.3. Operatory arytmetyczne
13.1.4. Wprowadzanie i wyprowadzanie danych
13.2. Ćwiczenia
13.3. Zadania programistyczne do samodzielnego rozwiązania
13.4. Wiadomości pogłębiające
13.4.1. Klasa Console
13.4.2. Klasa Math
13.4.3. Dodatkowe informacje o procedurach wejścia-wyjścia.
Write (WriteLine)
13.4.4. Typy danych i konwersja typów
13.4.5. Priorytety operatorów
200
200
201
208
209
209
210
14. Laboratorium 2. Operacje logiczne i instrukcje warunkowe
14.1. Część teoretyczna
14.1.1. Algebra Boole’a
14.1.2. Operatory relacyjne
14.1.3. Instrukcje warunkowe
14.2. Ćwiczenia
14.3. Zadania programistyczne do samodzielnego rozwiązania
14.4. Wiadomości pogłębiające
14.4.1. Operatory binarne
14.4.2. Przykłady użycia rozszerzonych wiadomości
215
215
215
218
218
222
228
229
229
230
15. Laboratorium 3. Pętle
15.1. Część teoretyczna
15.1.1. Pętla while oraz do … while
15.1.2. Pętla for
15.2. Ćwiczenia
15.3. Zadania programistyczne do samodzielnego rozwiązania
232
232
233
235
237
239
16. Laboratorium 4. Złożone typy danych
16.1. Część teoretyczna
16.1.1. Typ wyliczeniowy
16.1.2. Struktura
16.1.3. Typ tablicowy
16.1.4. ArrayList
16.1.5. Pętla foreach - uzupełnienie
16.1.6. Klasy
16.2. Ćwiczenia
16.3. Zadania programistyczne do samodzielnego rozwiązania
16.4. Wiadomości pogłębiające .
241
241
241
242
244
245
247
249
250
264
265
17. Laboratorium 5. Złożone struktury danych - cd.
17 1. Część teoretyczna
17.2. Ćwiczenia
17.3. Zadania programistyczne do samodzielnego rozwiązania
270
270
271
277
211
212
213
18. Dodatki C#
18.1. Środowisko Visual Studio
278
278
19. Dodatki
19.1. Spis kodów ASCII
19.2. Spis rozszerzonych kodów klawiatury
283
283
285
20. Literatura
287
21. Spis tabel i rysunków
21.1. Spis tabel
21.2. Spis rycin
288
288
289
oprac. BPK