C_cwiczenia_cwchas.pdf

(289 KB) Pobierz
IDZ DO
PRZYK£ADOWY ROZDZIA£
SPIS TRE CI
C#. Æwiczenia
Autor: Marcin Lis
ISBN: 83-7361-128-2
Format: B5, stron: 166
KATALOG KSI¥¯EK
KATALOG ONLINE
ZAMÓW DRUKOWANY KATALOG
TWÓJ KOSZYK
DODAJ DO KOSZYKA
Jêzyk C# zosta³ opracowany w firmie Microsoft i wywodzi siê z rodziny C/C++,
choæ zawiera równie¿ wiele elementów znanych programistom Javy, jak na przyk³ad
mechanizmy automatycznego odzyskiwanie pamiêci. £¹czy wiêc w sobie wszystko to,
co najlepsze w Javie i C++, a dodatkowo pozwala na wygodne korzystanie z klas
wchodz¹cych w sk³ad platformy .NET.
Dziêki ksi¹¿ce „C#. Æwiczenia” nauczysz siê programowaæ w C# niezale¿nie od tego,
czy znasz ju¿ C++ lub Javê. Kilkadziesi¹t æwiczeñ pozwoli Ci poznaæ jêzyk C# od
podstaw po zagadnienia zaawansowane. Zalet¹ ksi¹¿ki jest zwiêz³y i przystêpny opis
prezentowanych zagadnieñ i nastawienie na praktykê programistyczn¹, a nie na
rozwa¿ania teoretyczne.
Poznasz:
• rodowisko uruchomieniowe C# i Visual Studio
• Zmienne, operatory i typy danych
• Instrukcje C#
• Podstawy programowania obiektowego, tworzenie klas, metod i konstruktorów
• U¿ycie tablic w C#
• Obs³ugê b³êdów za pomoc¹ wyj¹tków
• Interfejsy i rzutowanie
• Obs³ugê zdarzeñ
• Korzystanie z komponentów interfejsu u¿ytkownika Windows
CENNIK I INFORMACJE
ZAMÓW INFORMACJE
O NOWO CIACH
ZAMÓW CENNIK
CZYTELNIA
FRAGMENTY KSI¥¯EK ONLINE
Wydawnictwo Helion
ul. Chopina 6
44-100 Gliwice
tel. (32)230-98-63
e-mail: helion@helion.pl
Spis treści
Wstęp...........................................................................................................................................................5
Część I
Rozdział 1.
Język programowania ................................................................................................................... 7
Pierwsza aplikacja................................................................................................................................9
Język C# ......................................................................................................................... 9
Środowisko uruchomieniowe........................................................................................... 10
Narzędzia ...................................................................................................................... 11
Najprostszy program ...................................................................................................... 11
Kompilacja i uruchamianie.............................................................................................. 12
Visual Studio ................................................................................................................. 13
Dyrektywa using ............................................................................................................ 16
Rozdział 2. Zmienne i typy danych........................................................................................................................17
Typy danych.................................................................................................................. 17
Typy arytmetyczne ................................................................................................... 17
Typ boolean ............................................................................................................. 19
Deklarowanie zmiennych .......................................................................................... 19
Typy referencyjne .................................................................................................... 22
Typ string ................................................................................................................ 23
Typ object ............................................................................................................... 23
Wartość null............................................................................................................. 23
Operatory ...................................................................................................................... 24
Operatory Arytmetyczne ........................................................................................... 24
Operatory bitowe...................................................................................................... 29
Operatory logiczne.................................................................................................... 30
Operatory przypisania ............................................................................................... 30
Operatory porównania............................................................................................... 31
Operator warunkowy (?) ........................................................................................... 31
Priorytety operatorów ............................................................................................... 32
Komentarze ................................................................................................................... 32
Rozdział 3. Instrukcje...............................................................................................................................................35
Instrukcje warunkowe .................................................................................................... 35
Instrukcja if...else ..................................................................................................... 35
Instrukcja if...else if .................................................................................................. 38
Instrukcja switch ...................................................................................................... 39
Instrukcja goto ............................................................................................................... 41
Pętle ............................................................................................................................. 43
Pętla for................................................................................................................... 43
Pętla while ............................................................................................................... 48
Pętla do while........................................................................................................... 49
4
C#. Ćwiczenia
Wprowadzanie danych.................................................................................................... 50
Argumenty wiersza poleceń....................................................................................... 51
Instrukcja ReadLine.................................................................................................. 54
Rozdział 4. Programowanie obiektowe.............................................................................................................61
Klasy ............................................................................................................................ 61
Metody ......................................................................................................................... 63
Konstruktory ................................................................................................................. 69
Specyfikatory dostępu .................................................................................................... 71
Dziedziczenie ................................................................................................................ 75
Rozdział 5. Tablice .......................................................................................................................................................77
Deklarowanie tablic........................................................................................................ 77
Inicjalizacja ................................................................................................................... 80
Pętla foreach.................................................................................................................. 81
Tablice wielowymiarowe ................................................................................................ 83
Rozdział 6. Wyjątki.....................................................................................................................................................89
Obsługa błędów ............................................................................................................. 89
Blok try...catch .............................................................................................................. 93
Hierarchia wyjątków ...................................................................................................... 97
Własne wyjątki .............................................................................................................. 99
Rozdział 7.
Interfejsy ...............................................................................................................................................101
Prosty interfejs............................................................................................................. 101
Interfejsy w klasach potomnych .................................................................................... 104
Czy to interfejs?........................................................................................................... 110
Rzutowanie ............................................................................................................ 113
Słowo kluczowe as ................................................................................................. 115
Słowo kluczowe is .................................................................................................. 116
Część II
Programowanie w Windows ................................................................................................117
Utworzenie okna .......................................................................................................... 119
Wyświetlanie komunikatu ............................................................................................. 122
Zdarzenie ApplicationExit............................................................................................. 123
Rozdział 8. Pierwsze okno .....................................................................................................................................119
Rozdział 9. Delegacje i zdarzenia......................................................................................................................125
Delegacje .................................................................................................................... 125
Zdarzenia .................................................................................................................... 128
Rozdział 10. Komponenty ........................................................................................................................................133
Etykiety (Label) ........................................................................................................... 133
Przyciski (klasa Button) ................................................................................................ 137
Pola tekstowe (TextBox)............................................................................................... 140
Pola wyboru (CheckBox, RadioButton).......................................................................... 143
Listy rozwijalne (ComboBox) ....................................................................................... 146
Listy zwykłe (ListBox) ................................................................................................. 149
Menu .......................................................................................................................... 151
Menu główne ......................................................................................................... 151
Menu kontekstowe ................................................................................................. 157
Właściwości Menu ................................................................................................. 159
Skróty klawiaturowe ............................................................................................... 162
3.
Instrukcje
Rozdział
Instrukcje warunkowe
Instrukcja if...else
Bardzo często w programie zachodzi potrzeba sprawdzenia jakiegoś warunku i, w zale no-
ści od tego, czy jest on prawdziwy czy fałszywy, dalsze wykonywanie ró nych instrukcji. Do
takiego sprawdzania słu y właśnie instrukcja warunkowa
KH GNUG
. Ma ona ogólną postać:
KH Y[TC GPKG YCTWPMQYG]
+PUVTWMELG FQ Y[MQPCPKC LG GNK YCTWPGM LGUV RTCYF\KY[
_
GNUG]
+PUVTWMELG FQ Y[MQPCPKC LG GNK YCTWPGM LGUV HC U\[Y[
_
Spróbujmy zatem wykorzystać taką instrukcję do sprawdzenia, czy zmienna całkowita jest
mniejsza od zera.
Ćwiczenie 3.1.
Wykorzystaj instrukcję warunkową if…else do stwierdzenia, czy wartość zmiennej aryt-
metycznej jest mniejsza od zera. Wyświetl odpowiedni komunikat na ekranie.
WUKPI 5[UVGO
ENCUU *GNNQ
]
RWDNKE UVCVKE XQKF /CKP UVTKPI=? CTIU
36
Część I
Język programowania
]
_
_
KPV \OKGPPC
KH \OKGPPC ]
%QPUQNG9TKVG.KPG <OKGPPC LGUV OPKGLU\C QF \GTC
_
GNUG]
%QPUQNG9TKVG.KPG <OKGPPC PKG LGUV OPKGLU\C QF \GTC
_
Spróbujmy teraz czegoś nieco bardziej skomplikowanego. Zajmijmy się klasycznym przy-
kładem liczenia pierwiastków równania kwadratowego. Przypomnijmy, e jeśli mamy
równanie w postaci:
A
x
2
+
B
x
+
C
=
0
,
aby obliczyć jego rozwiązanie liczymy tzw. deltę (∆), która równa jest:
B
2
4
A
C
.
Je eli delta jest większa od zera, mamy dwa pierwiastki:
x
1
=
(
B
+ ∆
) 2
A
x
2
=
(
B
− ∆
) 2
A
.
Je eli delta jest równa zero, istnieje tylko jedno rozwiązanie, a mianowicie:
x
= −
B
2
A
.
W przypadku trzecim, je eli delta jest mniejsza od zera, równanie takie nie ma rozwią-
zań w zbiorze liczb rzeczywistych. Skoro jest tutaj tyle warunków do sprawdzenia, jest
to doskonały przykład do potrenowania zastosowania instrukcji
KH GNUG
. Przy tym, aby
nie komplikować sprawy, nie będziemy się w tej chwili zajmować wczytywaniem parame-
trów równania z klawiatury, ale podamy je bezpośrednio w kodzie.
Przed przystąpieniem do realizacji tego zadania musimy się tylko jeszcze dowiedzieć, w jaki
sposób uzyskać pierwiastek z danej liczby? Na szczęście nie jest to wcale skomplikowane,
wystarczy skorzystać z instrukcji
/CVJ5STV
. Aby zatem dowiedzieć się, jaki jest pier-
wiastek kwadratowy z liczby 4, nale y napisać:
/CVJ5STV
Oczywiście zamiast liczby mo emy te podać w takim wywołaniu zmienną, a wynik działa-
nia wypisać na ekranie np.:
KPV RKGTYU\C.KE\DC
KPV FTWIC.KE\DC /CVJ5STV RKGTYU\C.KE\DC
%QPUQNG9TKVG.KPG FTWIC.KE\DC
Zgłoś jeśli naruszono regulamin