Kempa A., Staś T. - Wstęp do programowania w C#.pdf

(3084 KB) Pobierz
Anna Kempa
Tomasz Staś
Wstęp do
programowania w C#
Łatwy podręcznik dla początkujących
Aktualna wersja podręcznika na stronie
http://c-sharp.ue.katowice.pl
Katowice, styczeń 2018
Wersja 2.0
Anna Kempa, Tomasz Staś
Katedra Inżynierii Wiedzy
Wydział Informatyki i Komunikacji
Uniwersytet Ekonomiczny w Katowicach
e-mail: c-sharp@ue.katowice.pl
Anna Kempa
Tomasz Staś
rozdziały 2, 5, 6, 7, podrozdział 1.1, dodatki, redakcja całości
rozdziały 3, 4, podrozdział 1.2 oraz opracowanie strony internetowej
Copyright © Anna Kempa, Tomasz Staś
Wydrukowano z pliku w formacie
pdf
dostarczonego przez autorów
Wszelkie prawa zastrzeżone. Książka w wersji elektronicznej jest dostępna bezpłatnie na
stronie
http://c-sharp.ue.katowice.pl.
Zabronione jest jej drukowanie czy powielanie w celach
komercyjnych bez odpowiedniej zgody i umowy z autorami.
ISBN 978-83-62652-60-0
Wydawnictwo Pracowni Komputerowej Jacka Skalmierskiego
44-100 Gliwice, ul. Pszczyńska 44
tel. 506132960, www.pkjs.pl
Gliwice 2018
Spis treści
Wstęp
....................................................................................................................................................... 7
Dla kogo jest ta książka?
..................................................................................................................... 7
Jak czytać tę książkę?
.......................................................................................................................... 8
1
Przywitanie ze światem
................................................................................................................. 11
1.1
Świat wcale nie taki nowy
..................................................................................................... 11
Zmienna jaką znamy z matematyki
............................................................................... 11
Stałe i literały też nieobce
.............................................................................................. 13
Algorytm – kolejne pojęcie jakie znasz
......................................................................... 13
Instrukcje
....................................................................................................................... 13
Funkcje
.......................................................................................................................... 14
Klasy i obiekty – o tym wiesz od dziecka
..................................................................... 14
1.1.1
1.1.2
1.1.3
1.1.4
1.1.5
1.1.6
1.2
Uruchomienie pierwszej aplikacji w Visual Studio
.............................................................. 15
Instalacja Visual Studio Community
............................................................................. 15
Pierwsze uruchomienie
.................................................................................................. 17
1.2.1
1.2.2
2
Arytmetyka w programowaniu
...................................................................................................... 25
2.1
Zmienne i ich typy
................................................................................................................. 25
Typ wartościowy i typ referencyjny
.............................................................................. 25
Deklaracja zmiennych
................................................................................................... 27
2.1.1
2.1.2
2.2
2.2.1
2.2.2
2.2.3
2.2.4
2.2.5
2.3
Wyrażenia algebraiczne.........................................................................................................
29
Działania bez konwersji typów
..................................................................................... 29
Modyfikacja typów dla literałów
................................................................................... 30
Konwersja typów
........................................................................................................... 33
Funkcje matematyczne
.................................................................................................. 35
Arytmetyka++
............................................................................................................... 36
Wyrażenia logiczne
............................................................................................................... 39
Operatory koniunkcji
..................................................................................................... 40
Operatory alternatywy
................................................................................................... 43
Złożone wyrażenia logiczne
.......................................................................................... 44
2.3.1
2.3.2
2.3.3
2.4
2.5
2.6
Proste operacje na tekstach i znaki specjalne
........................................................................ 45
Kolejność wykonywania działań
........................................................................................... 49
Prezentacja wyników
............................................................................................................. 51
2.7
3
Zadania do samodzielnego rozwiązania
................................................................................ 54
Sterowanie działaniem programu
.................................................................................................. 57
3.1
Instrukcje warunkowe
........................................................................................................... 57
Instrukcja warunkowa
if
................................................................................................ 58
Instrukcja warunkowa
if..else
........................................................................................ 60
Zagnieżdżanie instrukcji warunkowych
........................................................................ 62
Operator warunkowy
..................................................................................................... 64
Instrukcja warunkowa
switch..case
............................................................................... 65
3.1.1
3.1.2
3.1.3
3.1.4
3.1.5
3.2
Instrukcje cykliczne – pętle
................................................................................................... 69
Pętla
for
......................................................................................................................... 69
Pętle
while
i
do..while
.................................................................................................... 76
Polecenia
break
i
continue
............................................................................................. 82
3.2.1
3.2.2
3.2.3
3.3
Zadania
.................................................................................................................................. 85
Zadania z rozwiązaniami
............................................................................................... 85
Zadania do samodzielnego rozwiązania
........................................................................ 88
3.3.1
3.3.2
4
Operacje na typach referencyjnych – tablice i typ
string
.............................................................. 91
4.1
Tablice
................................................................................................................................... 92
Tablice jednowymiarowe
.............................................................................................. 92
Tablice dwuwymiarowe
.............................................................................................. 104
Tablice postrzępione
.................................................................................................... 108
Wybrane metody klasy
Array
...................................................................................... 112
4.1.1
4.1.2
4.1.3
4.1.4
4.2
Operacje na tekstach
............................................................................................................ 114
Tekst jako tablica znaków
........................................................................................... 115
Wybrane metody klasy
String
..................................................................................... 116
4.2.1
4.2.2
4.3
5
Zadania do samodzielnego rozwiązania
.............................................................................. 121
Metody.........................................................................................................................................
125
5.1
5.2
5.3
5.4
5.5
5.6
5.7
5.8
Metody statyczne
................................................................................................................. 125
Definicja metody
................................................................................................................. 126
Przekazywanie argumentów przez wartość
......................................................................... 131
Przekazywanie argumentów przez referencję
..................................................................... 132
Lista argumentów o zmiennej długości
............................................................................... 134
Przekazywanie i zwracanie tablic
........................................................................................ 135
Argumenty domyślne
.......................................................................................................... 138
Metody przeładowane
......................................................................................................... 139
5.9
5.10
6
Rekurencja
........................................................................................................................... 143
Zadania do samodzielnego rozwiązania
.............................................................................. 148
Wprowadzenie do tworzenia klas
................................................................................................ 151
6.1
6.2
Klasa a obiekt
...................................................................................................................... 151
Budowa klasy
...................................................................................................................... 152
Opis klasy
.................................................................................................................... 153
Elementy klasy (ciało klasy)
....................................................................................... 154
6.2.1
6.2.2
6.3
Użycie zdefiniowanej klasy
................................................................................................. 158
Deklaracja obiektu
....................................................................................................... 158
Wywołanie metody dla obiektu
................................................................................... 159
Zmiana wartości pól obiektu
....................................................................................... 160
Właściwości
................................................................................................................. 161
Składniki statyczne
...................................................................................................... 164
Tablice obiektów
......................................................................................................... 166
6.3.1
6.3.2
6.3.3
6.3.4
6.3.5
6.3.6
6.4
6.5
6.6
6.7
7
Typ referencyjny w kolejnej odsłonie
................................................................................. 168
Struktury a klasy
.................................................................................................................. 173
Cechy programowania obiektowego
................................................................................... 176
Zadania do samodzielnego rozwiązania
.............................................................................. 181
Poprawianie błędów w programie
............................................................................................... 183
7.1
7.2
Poprawianie błędów zgłaszanych na etapie kompilacji
...................................................... 183
Poprawianie błędów występujących po uruchomieniu programu
....................................... 189
Zakończenie, czyli początek
................................................................................................................ 196
Dodatki – podręczny bryk
................................................................................................................... 197
Literatura
............................................................................................................................................. 206
Zgłoś jeśli naruszono regulamin