Anda di halaman 1dari 52

Oleh: Erick Kurniawan, S.Kom, M.

Kom
1
BAB 1
Pengenalan Komputer dan C#2.0


Apa itu Komputer?
Koputer adalah perangkat yang digunakan untuk melakukan perhitungan / kalkulasi, dan secara
logis mampu membuat keputusan yang berjuta bahkan milliar kali lebih cepat daripada manusia.
Misalnya sebuah personal komputer dapat melakukan bermiliar kali penjumlahan dalam satu detiknya,
seseorang yang mengoperasikan kalkulator biasa mungkin membutuhkan beberapa tahun untuk
melakukan perhitungan seperti yang dapat dilakukan oleh komputer hanya dalam waktu satu detik.
Komputer memproses data yang diatur oleh satu set instruksi yang disebut programkomputer.
Program tersebut yang menginstruksikan computer untuk melakukan aksi yang spesifik sesuai dengan
keinginan orang yang memprogram yang disebut programer.
Komputer juga terdiri dari beberapa komponen (seperti keyboard, mouse, layar, disk, memory,
CD-ROM, dan processor) semuanya itu disebut hardware. Sedangkan program yang dijalankan pada
komputer disebut software.

Organisasi Komputer
Komputer secara virtual dapat dibagi menjadi enam unit logis, yaitu:
1. Input Unit: unit dimana komputer menerima informasi (baik data maupun program) dari
bermacam-macam peralatan. Input diterima melalui alat berupa keyboard atau mouse, bisa juga
melalui microphone (jika data berupa suara), scanner, digital camera (jika berupa file image).
2. Output Unit: unit dimana komputer mengambil informasi yang sudah selesai diproses, untuk
kemudian ditampilkan pada peralatan yang ada, misal: dapat ditampilkan pada layer,
dimainkan dalam bentuk file audio atau video, atau dicetak pada printer.
3. Memory Unit: adalah unit yang memiliki akses cepat untuk memproses data, tetapi
kapasitasnya kecil. Digunakan sebagai tempat penyimpan data sementara, memory unit
menampung data yang dikirimkan input unit, kemudian data diproses. Contoh memory unit
adalah RAM (random access memory). Informasi yang ada dalam memory akan hilang ketika
komputer dimatikan.
4. Arithmatic and Logic Unit (ALU): unit ini bertanggung jawab terhadap performa kalkulasi dari
komputer, misalnya dalam melakukan kalkulasi tambah, kurang, kali, bagi. Unit ini juga
bertanggung jawab untuk proses pengecekan dan mekanisme dalam membuat keputusan.
5. Central Processing Unit (CPU): unit ini adalah otak dari komputer, bertanggung jawab untuk
mengawasi operasi dari unit lain.
6. Secondary Storage Unit: unit ini digunakan untuk menyimpan data secara permanen (jangka
panjang), kapasitas penyimpanan datanya juga besar. Misal hard drives, CD, USB drive, dll.

Sistem Operasi
Sistem operasi adalah sebuah perangkat lunak yang mampu menjalankan sebuah komputer yang
kita miliki. Tanpa sebuah sistem operasi komputer yang kita miliki tidak akan dapat berbuat apa-apa
atau sama juga merupakan benda mati yang tidak berguna. Sistem operasi mengatur segala sesuatu
yang ada di dalam komputer, termasuk semua hardware yang ada, memori, harddisk dan lain-lainnya
sehingga mereka dapat berkerja sama melakukan tugasnya.
Saat ini ada beberapa system operasi yang ada dipasaran, yang paling banyak digunakan adalah
Windows XP, Windows 2003 Server, Linux, UNIX, Machintos, dan masih ada beberapa system
operasi lain yang tidak begitu popular. Pada buku ini penulis menggunakan Windows XP untuk
menjalankan contoh-contoh program yang ada.

Oleh: Erick Kurniawan, S.Kom, M.Kom
2
Bahasa Mesin, Bahasa Assembly, dan Bahasa Tingkat Tinggi
Programer dapat menulis instruksi dalam beberapa bahasa pemrograman, beberapa langsung
dapat dimengerti oleh komputer dan yang lain membutuhkan bahasa penengah untuk menterjemahkan
instruksi tersebut. Meskipun sekarang terdapat ratusan bahasa pemrograman, namun semuanya itu
dapat dibedakan menjadi tiga tipe yang umum yaitu:
1. Bahasa Mesin.
2. Bahasa Assembly.
3. Bahasa Tingkat Tinggi.
Bahasa mesin adalah bahasa yang dapat langsung dimengerti oleh setiap komputer sebagai bahasa
naturalnya. Bahasa mesin hanya terdiri dari kumpulan angka 0 dan 1 yang menginstruksikan komputer
untuk melakukan beberapa tugas utama. Bahasa mesin bersifat machine dependent, yang berarti
tergantung pada spesifikasi mesin yang digunakan. Pemrograman dengan bahasa mesin sulit karena
bahasanya susah untuk dimengerti dan susah untuk mengatasi kesalahan yang terjadi.

+1300042774
+1400593419
+1200274027

Kemudian muncul bahasa assembly yang menggunakan perintah dalam bahasa inggris yang lebih
mudah untuk dipahami oleh programer daripada bahasa mesin.bahasa assembly menggunakan
translator program yang disebut assembler yang digunakan untuk menterjemahkan dari bahasa
assembly ke bahasa mesin.

LOAD BASEPAY
ADD OVERPAY
STORE GROSSPAY

Kemudian bahasa assembly masih dirasa sulit untuk dimengerti oleh manusia, maka munculah
bahasa tingkat tinggi yang menggunakan bahasa yang lebih mudah untuk dimengerti seperti bahasa
sehari-hari (kebanyakan dalam bahasa inggris). Translation program yang digunakan untuk
menterjemahkan bahasa tingkat tinggi kedalam bahasa mesin adalah compiler.

gr ossPay = basePay + over Ti mePay

Kebanyakan programer memilih menggunakan bahasa tingkat tinggi dibandingkan dengan bahasa
yang lain. C# adalah salah satu bahasa pemrograman tingkat tinggi dari Microsoft yang popular saat
ini.

C#2.0 (C Sharp 2.0)
Kebutuhan akan penggunaan program tidak lagi hanya terbatas pada peralatan berupa personal
computer, program juga digunakan pada consumer-electronic devices (cell phones dan PDA) sehingga
menciptakan persoalan dan kebutuhan yang baru. Integrasi komponen software yang berbeda bahasa
juga semakin sulit. Kebutuhan pengembangan aplikasi berbasis Web yang terkoneksi dengan Internet
juga sudah semakin banyak. Pengembang software sadar bahwa mereka membutuhkan software yang
dapat digunakan siapa saja dan dapat digunakan pada semua perangkat yang ada (PC, cell phones,
PDA, dll).
Untuk menjawan semua permasalahan dan kebutuhan diatas pada tahun 2000 Microsoft
meluncurkan bahasa pemrograman baru yang diberi nama C# Programming Language. C#
dikembangkan oleh Microsoft oleh tim yang dipimpin oleh Anders Hejlsberg dan Scott Wiltamuth. C#

Oleh: Erick Kurniawan, S.Kom, M.Kom
3
memiliki kesamaan bahasa dengan C, C++, dan Java, sehingga memudahkan developer yang sudah
terbiasa dengan bahasa C untuk menggunakannya, C# mengambil fitur-fitur terbaik dari ketiga bahasa
tersebut dan juga menambahkan fitur-fitur baru. C# adalah bahasa pemrograman Object Oriented dan
memiliki class library yang sangat lengkap yang berisi prebuilt component sehingga memudahkan
programer untuk men-develop program lebih cepat. C# juga distandarkan oleh Ecma International pada
bulan desember 2002.
Pada akhir tahun 2005 Microsot merilis .NET Framework 2.0 bersamaan dengan paket Visual
Studio. Otomatis versi dari C# juga diperbaharui menjadi C# 2.0 yang berjalan diatas .NET Framework
2.0. Pada versi baru ini banyak sekali fitur-fitur yang ditambahkan terutama pada pengembangan
aplikasi berbasis web dengan ASP.NET seperti (master page, site map control, user login, dll), juga
penambahan generic collection yang sangat membantu programer bekerja dengan object-object
collection dan list.
Dengan C# dapat dibuat bermacam aplikasi seperti aplikasi console, aplikasi windows form,
aplikasi Web, aplikasi Web services, dan aplikasi untuk mobile device. Jadi cukup belajar satu bahasa
saja tapi sudah dapat digunakan untuk mengembangkan berbagai macam aplikasi.

Microsoft .NET Framework
Pada tahun 2000 Microsoft mengumumkan .NET Initiative yaitu sebuah visi baru dalam
pengembangan software dan aplikasi berbasis Web. Salah satu aspek kunci pada .NET adalah
independent terhadap bahasa maupun platform yang digunakan. Pengembang dapat membuat aplikasi
berbasis .NET dengan sembarang bahasa yang kompatibel dengan .NET.
Programer dapat saling berkontribusi dalam mengerjakan project yang sama dengan menulis
program dalam bahasa yang didukung oleh .NET (C#, Visual Basic .NET, Visual C++ .NET, dll).
Untuk pengembangan aplikasi berbasis Web dan aplikasi Web services digunakan ASP.NET yang juga
dapat ditulis dengan beberapa bahasa yang didukung oleh .NET Framework.
Ada dua komponen utama dalam .NET Framework yaitu CLR (Common Language Runtume)
dan FCL (.NET Framework Class Library).
Common Language Runtime (CLR) adalah pondasi utama dari Framework .NET. CLR
merupakan komponen yang bertanggung jawab terhadap beberapa tugas, seperti mengatur managemen
memory, melakukan eksekusi kode, melakukan verifikasi terhadap keamanan kode, menentukan hak
akses dari kode, melakukan kompilasi kode, dan berbagai tugas lainnya. Dengan adanya komponen
CLR ini, maka aplikasi berbasis .NET biasa juga disebut dengan managed code, sedangkan aplikasi di
luar .NET disebut dengan un-managed code.
Pada .NET ada dua tahap kompilasi yang dilakukan, pertama CLR akan melakukan kompilasi
kode-kode aplikasi kita menjadi bahasa assembly MSIL (Microsoft Intermediate Language), kedua
ketika aplikasi dieksekusi compiler yang lain yang bernama JIT (Just-in-time compiler) yang juga salah
satu kompenen dalam CLR untuk menterjemahkan MSIL kedalam bahasa mesin yang disesuaikan
dengan platformnya.
.NET Framework Class Library atau disebut juga Base Case Library (BCL) adalah koleksi yang
dapat digunakan kembali (reusable types) yang terintegrasi dengan CLR. Class library adalah
komponen object oriented yang akan menyediakan method-method berupa managed code. FCL
menyediakan kemudahan dalam hal penggunaan dan juga dapat mengurangi waktu yang diperlukan
pada saat eksekusi.

Visual C#2005 Express Edition
Visual C# 2005 Express Edition adalah IDE (Integrated Development Environment) atau tools
untuk membuat, menjalankan, dan men-debug program yang ditulis menggunakan bahasa C#.
Microsoft Visual C# 2005 Express Edition dapat didownload secara gratis pada

Oleh: Erick Kurniawan, S.Kom, M.Kom
4
http://msdn.microsoft.com/vstudio/express/support/install/. Untuk mengembangkan aplikasi berbasis
web dapat digunakan Visual Web Developer Express yang juga dapat didownload dan digunakan
secara gratis. Adapun produk yang termasuk dalam paket Express Edition yang dapat didownload
secara gratis adalah:
Visual Basic 2005 Express
Visual C# 2005 Express
Visual J# 2005 Express
Visual Web Developer 2005 Express
Jika anda menginstal Visual C# 2005 Express Edition maka didalamnya sudah terdapat beberapa
komponen tambahan seperti SQL Server Express untuk databasenya dan MSDN Express untuk
dokumentasinya, adapun paket lengkap yang terdapat pada Visual C# 2005 Express yaitu:
Microsoft .NET Framework 2.0
Microsoft Visual C# Express
SQL Server 2005 Express
MSDN Express
Selain menggunakan IDE yang disediakan oleh Microsoft anda dapat menggunakan tools yang
lain misalnya SharpDevelop (yang merupakan project open source yang juga dapat didownload secara
gratis). Anda juga dapat membuat program C# hanya dengan menggunakan editor teks biasa seperti
notepad, tapi pasti membutuhkan waktu yang lebih lama dalam proses pengembangan karena tidak
adanya tools bantuan untuk debugging dan fitur lain sebaik yang ada pada IDE yang khusus seperti
Visual C# 2005 Express atau SharpDevelop.

I nstalasi Visual C#Express Edition
1. Masukan CD atau DVD yang berisi paket instalasi Visual C# Express, jika autorun maka akan
langsung otomatis dijalankan, pilih paket instalasi untuk Visual C# 2005 Express, ketika proses
instalasi dimulai akan ditampilkan halaman welcome page yang ditunjukan pada gambar 1.1

Gambar 1.1

Oleh: Erick Kurniawan, S.Kom, M.Kom
5
2. Klik Next untuk menampilkan halaman EULA (End User License Agreement)
3. Setelah membaca dan menyetujuinya, centang pada kotak I accept the terms of the License
Agreement, kemudian tekan Next untuk melanjutkan proses setup.

Gambar 1.2
4. Pada halaman ini centang pada kotak SQL Server 2005 Express dan MSDN Express untuk
menginstal kedua komponen tersebut.

Gambar 1.3

Oleh: Erick Kurniawan, S.Kom, M.Kom
6
5. Klik Next untuk melanjutkan proses setup, pada halaman berikutnya pilih lokasi dimana anda
akan menginstal Visual C# 2005 Express, kemudian klik I nstall.

Gambar 1.4
6. Jika proses instalasi selesai maka akan ditampilkan halaman berikut

Gambar 1.5
7. Klik Exit dan Visual C# 2005 Express sudah berhasil diinstal dan siap untuk anda gunakan.



Oleh: Erick Kurniawan, S.Kom, M.Kom
7
Fitur Penting Pada Visual C#2005 Express Editon
Visual C# 2005 Express menyediakan beberapa fitur penting yang mendukung pengembangan
program aplikasi secara cepat menggunakan metode RAD (Rapid Application Development). Adapun
beberapa fitur yang disediakan:
Built-in Starter Kit: kumpulan aplikasi yang telah dikembangkan secara menyeluruh dari
Microsoft best practice (pengalaman banyak developer dari Microsoft) sebagai contoh untuk
diikuti.
Beginners Targeted Documentation dan Tutorials: Cara yang mudah dan cepat untuk
mendapatkan informasi & contoh-contoh juga disediakan disini.
I ntellisense: adalah fasilitas yang dapat membantu anda dalam mengantisipasi kesalahan
pengetikan, karena IDE akan secara otomatis menampilkan list sintaks yang akan digunakan.
Code Snippets: Menyediakan kode untuk berbagai variasi pemrograman untuk membantu anda
melengkapi berbagai tugas secara otomatis. Code Snippets terintegrasi secara langsung dengan
lingkungan development, dan dapat ditambah.
Refactoring: Windows Visual C# 2005 IDE sekarang memungkinkan refactoring yang cukup
baik. Refactoring memungkinkan developer untuk mengotomatisasi beberapa tugas ketika
menstrukturisasi kode.
Data-enabled Applications. Aplikasi ini memungkinkan anda untuk terhubung secara
langsung ke SQL Server 2005 Express Edition dari IDE. Anda dapat membuat database baru,
membuat table dan melakukan manipulasi data pada database secara mudah.
Smart Tags: fasilitas yang akan sangat membantu dan memudahkan anda ketika bekerja
dengan control-control yang ada, smart tag berupa segitiga hitam yang tampak pada bagian
pojok kanan atas dari control. Dengan smart tag anda dapat mengeset property pada control
tertentu dengan mudah.
Windows Form Designer. Dengan tools ini, anda akan dengan mudah merancang aplikasi
Windows anda, termasuk adanya fitur seperti snap lines yang membuat anda dengan mudah
mengatur layout dari control-control yang ada pada form secara rapi.
New Windows Form Controls: Berisi control-control baru yang dapat digunakan untuk
membuat aplikasi windows anda menjadi lebih menarik dan interaktif.
Click-Once Deployment: Fitur berikut memungkinkan anda untuk secara lebih mudah
mempublikasi aplikasi Anda di dalam Internet, atau menginstal aplikasinya dalam Local Area
Network(LAN), network share, atau di dalam CD.
Edit dan Continue: Ketika anda melakukan debug pada aplikasi anda, fitur edit dan continue
memungkinkan anda untuk memodifikasi kode, memajukan atau memundurkan debugger,
mengeksekusi kode kembali, menambah fungsionalitas, atau membetulkan bugs tanpa
memberhentikan eksekusi program.
Community Access dan Start Page: Dengan fitur-fitur ini, Anda dapat mengakses informasi
tambahan dari komunitas online dan dari sumber yang berbeda, termasuk RSS (Rich Site
Summary atau Really Simple Syndication) Feeds. (RSS adalah keluarga dari format file XML;
dan digunakan secara menyeluruh oleh komunitas weblog dan Website berita).









Oleh: Erick Kurniawan, S.Kom, M.Kom
8
Komponen I DE Visual C#2005 Express Edition
Visual C# 2005 merupakan IDE yang sangat mudah untuk digunakan dan memiliki banyak fitur
yang membantu dalam pembuatan aplikasi. Beberapa komponen penting yang ada pada IDE Visual C#
2005 Express adalah:

Gambar 1.6
Menu Bar: menu bar seperti yang ditunjukan pada gambar 1.6 berisi kumpulan perintah (yang
disebut menu items) yang jika dipilih maka IDE akan menjalankan aksi tertentu (misal:
membuka file, menyimpan file, membuat project baru, dll).

Gambar 1.7

Oleh: Erick Kurniawan, S.Kom, M.Kom
9
Toolbar: menu toolbar seperti yang ditunjukan pada gambar 1.7 berisi kumpulan shortcut yang
menjalankan aksi tertentu seperti pada menu file, dapat dikatakan bahwa toolbar merupakan
shortcut dari menu bar.
Active Tab: active tab seperti ditunjukan pada gambar 1.6 adalah tab window yang sedang
aktif saat ini, pada Visual C# 2005 Express anda dapat membuka beberapa window tab secara
bersamaan (misal: window tab pertama menampilkan design form, sedangkan window tab
kedua menampilkan kode nya).
Solution Explorer: solution explorer windows yang dapat dilihat pada gambar 1.6 digunakan
untuk mengakses semua files yang terdapat pada aplikasi yang dibuat (solution). Jika solution
explorer window tidak muncul maka pilih view >solution explorer. Tampilan dari solution
explorer dapat dilihat pada gambar berikut
Toolbox: dalam toolbox terdapat object control-control yang digunakan dalam meng-customize
form. Sama seperti tools visual yang lain, anda dapat melakukan drag and drop control
tersebut kedalam form, cara ini akan lebih cepat dan praktis dari pada menulis kode untuk GUI
(Graphical User Interface) nya.

Gambar 1.8
Properties Window: properties window seperti yang ditunjukan pada gambar 1.6 berfungsi
untuk menampilkan daftar property dari control-control yang berapda pada form, berisi
informasi tertentu misalnya ukuran, warna, dan posisi. Setiap form control memiliki property
sendiri-sendiri (misal property text, name, size, dll).
Help Menu: Visual C# 2005 Express dilengkpi dengan fasilitas help atau dokumentasi yang
sudah terintegrasi dengan IDE dan MSDN Express sehingga anda dapat dengan udah
mendapatkan informasi yang dibutuhkan pada saat mengembangkan program aplikasi. Visual
C# 2005 Express juga mendukung fitur yang diberi nama dynamic help yang akan secara
otomatis mencari dokumentasi dari MSDN dan menampilkannya dalam bentuk list. Menu help
pada Visual C# 2005 Express ini sangat membantu dalam pencarian informasi yang anda
butuhkan karena kemudahan yang ditawarkan, anda juga dapat melakukan search untuk
mencari content yang berhubungan dengan keyword yang anda masukan.

Gambar 1.9



Oleh: Erick Kurniawan, S.Kom, M.Kom
10
BAB 2
Pengenalan Bahasa C#

Pengantar
Sekarang saatnya untuk mengerti lebih dalam tentang apa itu C# dan bagainama menulis program
menggunakan C#, untuk itu maka pada bab ini anda akan diajak untuk membuat beberapa aplikasi
sederhana. Aplikasi yang akan dibuat terdiri dari dua jenis yaitu aplikasi berbasis console dan aplikasi
yang berbasis windows.
Aplikasi console adalah sebuah aplikasi yang tidak menggunakan GUI (Graphical User
Interface), tampilannya sama dengan ketika anda menggunakan sistem operasi DOS, hanya berupa
layar hitam dan teks. Sedangkan aplikasi yang berbasis Windows atau Windows Form application
adalah aplikasi yang menggunakan GUI seperti sistem operasi Windows yang anda gunakan, pada
aplikasi ini anda dapt menambahkan tombol, kotak teks, dan komponen Windows lainnya.

C#Sintaks
Untuk mempelajari pemrograman C# secara efektif maka anda harus mengerti sintak-sintak yang
digunakan pada C#. Bahasa C# sangat mirip dengan bahasa C++ dan Java.
Kode pada C# terdiri dari kumpulan statement, dimana antar statementnya dipisahkan dengan
titik koma. Anda dapat menambahkan lebih dari satu statement pada satu baris program
C# merupakan block-structured language, yang berarti setiap statement merupakan bagian dari
blok kode. Setiap blok dibatasi dengan kurung kurawal buka dan kurung kurawal tutup ({ dan }) yang
dapat berisi beberapa statement, contohnya:
{
<code l i ne 1, st at ement 1>;
<code l i ne 2, st at ement 2>
<code l i ne 3, st at ement 2>;
}
Anda dapat melihat statement kedua dan statement ketiga adalah satu baris program karena
statement kedua tidak diakhiri dengan titik koma.
Pada C# dalam sebuah blok dapat terdapat blok dagi didalamnya atau dapat juga disebut sebagai
nested-blocks.
{
<code l i ne 1>;
{
<code l i ne 2>;
<code l i ne 3>;
}
<code l i ne 4>;
}
Hal yang juga akan banyak dijumpai pada kode C# adalah komentar. Komentar adalah baris
program yang tidak akan dieksekusi oleh compiler, gunanya untuk menambahkan keterangan pada
program atau menonaktifkan sementara baris program tertentu untuk kepentingan debugging, baris
komentar pada C# dapat ditulis sebagi berikut:
/ * I ni adal ah koment ar */

/ * Dan j uga. . .
. . . i ni koment ar */

/ / i ni j uga koment ar dal amsat u bar i s

Oleh: Erick Kurniawan, S.Kom, M.Kom
11
Salah satu yang harus diingat dalam menuliskan program dengan C# adalah sifat case-sensitive,
pada C# penulisan huruf besar dan huruf kecil dibedakan, anda harus menuliskan sintaks secara tepat.
consol e. Wr i t eLi ne( " The f i r st app i n Begi nni ng C# Pr ogr ammi ng! " ) ; / / sal ah
CONSOLE. WRI TELI NE( The f i r st app i n Begi nni ng C# Pr ogr ammi ng! ) ; / / sal ah
Consol e. Wr i t el i ne( " The f i r st app i n Begi nni ng C# Pr ogr ammi ng! " ) ; / / sal ah

Menulis Kode C#Yang Pertama
Pada subab ini anda akan diperkenalkan dengan bahasa C# dengan membuat sebuah program
aplikasi sederhana berbasis console.
Listing 2.1 Aplikasi Console Pertama Dengan C#
1. Buat Console Application baru, pilih File >New Project >Console Application kemudian
beri nama Hel l oCShar p kemudian klik tombol OK.

Gambar 2.1
2. Kemudian tuliskan source code-nya sebagai berikut
usi ng Syst em;
namespace Hel l oCShar p
{
cl ass Pr ogr am
{
st at i c voi d Mai n( st r i ng[ ] ar gs)
{
/ / menampi l kan out put ke l ayar
Consol e. Wr i t eLi ne( " I ni adal ah pr ogr amper t amaku dengan C#" ) ;
}
}
}
3. Kemudian jalankan dengan menekan tombol Ctrl +F5. maka akan ditampilkan hasilnya
sebagai berikut

Gambar 2.6




Oleh: Erick Kurniawan, S.Kom, M.Kom
12
Penjelasan dari kode diatas perbagian adalah sebagai berikut:
Tanda // digunakan sebagai komentar, pada C# digunakan tanda // (jika hanya satu baris saja)
atau diapit tanda /* */ (jika komentarnya lebih dari satu baris). Kode atau keterangan di dalam
tanda komentar tidak akan dieksekusi oleh compiler.
Keyword usi ng digunakan untuk memberitahu compiler class yang digunakan pada aplikasi.
Salah satu keunggulan dari C# adalah tersedianya predefined class yang dapat langsung
digunakan dalam aplikasi.
Keyword namespace digunakan untuk mendeklarasikan ruang lingkup dari class yang anda
buat. Class didalam namespace dapat dipanggil dengan mencantumkan nama namespace-nya
terlebih dahulu . Keyword usi ng Syst em; pada baris pertama mempunyai arti anda dapat
menggunakan class-class yang ada pada namespace System.
Keyword cl ass digunakan untuk mendeklarasikan class dengan nama Program.
Deklarasi st at i c voi d Mai n( st r i ng[ ] ar gs) adalah method utama yang dijalankan
pada cl ass Pr ogr am.
Sintaks Consol e. Wr i t eLi ne digunakan untuk menampilkan output ke layer console.
Mungkin ada beberapa keyword masih belum anda mengeti karena belum terbiasa dengan
pemrograman yang berbasis objek, tapi tidak menjadi masalah karena pada bab-bab selanjutnya
akan dibahas lebih dalam mengenai object.

C# termasuk bahasa pemrograman yang memiliki sedikit keyword sehingga meminimalkan
kompleksitas dalam penulisan program, keyword pada C# juga ditulis dengan huruf kecil, adapun
keyword-keyword yang digunakan adalah sebagai berikut:
C#Keywords
abstract as base bool break
byte case catch char checked
class const continue decimal default
delegate do double else enum
event explicit extern false finally
fixed float for foreach goto
if implicit in int interface
internal is lock long namespace
new null object operator out
override params private protected public
readonly ref return sbyte sealed
short sizeof stackalloc static string
struct switch this throw true
try typeof uint ulong unchecked
unsafe ushort using virtual void
volatile while


Oleh: Erick Kurniawan, S.Kom, M.Kom
13
Listing 2.2 Membaca I nputan Dari Console
1. Buat Console application baru dengan nama InputConsole, kemudian tuliskan source code-nya
sebagai berikut:
usi ng Syst em;

namespace I nput Consol e
{
cl ass Pr ogr am
{
st at i c voi d Mai n( st r i ng[ ] ar gs)
{
Consol e. Wr i t e( "Masukan Nama Anda : " ) ;
/ / r eadl i ne di gunakan unt uk membaca i nput an dar i user
Consol e. Wr i t eLi ne( " J adi nama anda : " + Consol e. ReadLi ne( ) ) ;
}
}
}
2. Jalankan programnya dengan menekan Ctrl + F5, maka hasilnya dapat dilihat sebagai berikut:

Gambar 2.7

Selain menggunakan aplikasi berbasis console, anda juga dapat membuat aplikasi yang berupa
Windows Form, Dengan menggunakan Windows Form anda dapat membuat aplikasi yang lebih
menarik dan interaktif untuk user, anda dapat menambahkan komponen yang biasa digunakan pada
aplikasi windows seperti button, textbox, radiobox, dan masih banyak lagi komponen lainnya. Pada
contoh dibawah ini akan ditunjukan penggunaan Windows Form pada C#.

Listing 2.3 Membuat Aplikasi Windows Form Sederhana
1. Untuk membuat aplikasi Windows Form, klik New Pr oj ect pilih Wi ndows
Appl i cat i on beri nama Si mpl eWi ndows untuk projectnya

Gambar 2.8

Oleh: Erick Kurniawan, S.Kom, M.Kom
14
2. Untuk menyimpan projectnya klik Fi l e kemudian Save Al l , kemudian arahkan ke folder
dimana anda akan menyimpan filenya, klik Save

Gambar 2.9
3. Pada form ubah property text menjadi Simple Window, Masukan button kedalam form,
kemudian pada button ubah property text menjadi Pesan.

Gambar 2.10
4. Double click pada tombol pesan untuk menambahkan kode berikut
pr i vat e voi d but t on1_Cl i ck( obj ect sender , Event Ar gs e)
{
MessageBox. Show( " Sel amat Bel aj ar C# Wi ndows For m! ! " ) ;
}
5. Kemudian jalankan programnya dengan menekan tombol F5. maka outpunya dapat dilihat
sebagai berikut


Gambar 2.11










Oleh: Erick Kurniawan, S.Kom, M.Kom
15
BAB 3
Tipe Data, Variabel dan Ekspresi

Pada bab ini akan dibahas bagaimana penggunaan tipe data, variabel dan ekspresi pada C#.
Misalnya anda anda ingin membuat sebuah aplikasi kakulator yang dapat melakukan operasi-operasi
perhitungan tertentu, maka anda harus mengambil nilai yang diinputkan kedalam kalkulator tersebut
untuk kemudian dihitung, untuk melakukan hal ini dibutuhkan tempat untuk menyimpan nilai dan
melakukan operasi tertentu untuk memanipulasi nilai, fungsi-fungsi tersebut dapat dilakukan dengan
menggunakan variabel dan ekspresi.

Variabel
Pada program selalu dibutuhkan tempat untuk menyimpan nilai yang disebut sebagai variabel.
Anda dapat membayangkan variabel sebagai sebuah kotak pada lemari yang dapat diisi barang dan
dikosongkan kembali jika akan diisi barang yang lain, anda juga dapat melihat isi dari kotak tersebut.
Untuk menggunakan variabel anda harus mendeklarasikannya terlebih dahulu, artinya anda harus
memberikan nama dan tipe data dari variabel tersebut.
<t ype> <name>;
st r i ng st r Nama;
i nt i nt Number 1;
Pada C# variabel harus dideklarasikan terlebih dahulu sebelum dapat digunakan, hal ini
diperlukan karena kompiler harus tahu terlebih dahulu tipe data dari variabel yang anda deklarasikan,
sehingga pengecekan nilai variabel dapat dilakukan.
Adapun penulisan variabel pada C# mempunyai aturan tersendiri yaitu:
Tidak boleh sama dengan nama keyword yang ada pada C#, misal using, string, public, dll.
Tidak boleh sama dengan nama fungsi built-in yang ada pada C# misal math, convert, dll
Pemilihan nama variabel juga harus unik, tidak boleh sama satu dengan yang lain.
Nama pada variabel di C# bersifat case sensitive yaitu membedakan antara huruf besar dan
huruf kecil jadi variabel intNumber lain dengan Intnumber.
Karakter pertama harus berupa huruf atau garis bawah (_), setelahnya boleh berupa angka,
misal: intNumber1, _intNumber1, x1, x2, dll
Penamaan pada variabel tidak boleh mengandung spasi atau titik.

Tipe Data
C# mempunyai dua jenis built-in tipe data yaitu value types dan reference types. Referenced type
didefinisikan dengan menggunakan class. C# mempunyai 13 tipe data dasar yang ditunjukan pada tabel
dibawah ini
Tipe Keterangan
bool Merepresentasikan nilai true/false
byte 8-bit unsigned integer
char Character
decimal Numeric type untuk financial calculations
double Double-precision floating point
float Single-precision floating point
int Integer
long Long integer

Oleh: Erick Kurniawan, S.Kom, M.Kom
16
Tipe Keterangan
sbyte 8-bit signed integer
short Short integer
uint unsigned integer
ulong unsigned long integer
ushort unsigned short integer
Tipe-tipe data yang ada diatas disebut dengan simple types

Tipe Data I nteger
C# mempunyai sembilan tipe integer: char , byt e, sbyt e, shor t , ushor t , i nt ,
ui nt , l ong, dan ul ong. Tetapi char type digunakan untuk mendefinisikan tipe data karakter,
delapan sisanya digunakan untuk kalkulasi numerik. Range nilai yang dapat dimasukan dalam tipe-tipe
data tersebut adalah:

Tipe Panjang Bits Range Nilai
byte 8 0 to 255
sbyte 8 128 to 127
short 16 32,768 to 32,767
ushort 16 0 to 65,535
int 32 2,147,483,648 to 2,147,483,647
uint 32 0 to 4,294,967,295
long 64 9,223,372,036,854,775,808 to 9,223,372,036,854,775,807
ulong 64 0 to 18,446,744,073,709,551,615
Seperti yang anda lihat pada tabel diatas, C# dapat mempunyai sign dan unsign version dari tipe
data integer yang membedakan keduanya adalah jika menggunakan sign version ada dua nilai yang
digunakan sebagai tanda / flag, jika flag bernilai 0 menandakan bilangan positif dan jika flag bernilai 1
menandakan bilangan negatif.

Listing 3.1 Penggunaan Tipe I nteger
1. Buatlah sebuah aplikasi console baru, kemudian beri nama untuk projectnya Ti peI nt eger
2. Kemudian tulis kode dibawah ini:
st at i c voi d Mai n( st r i ng[ ] ar gs)
{
l ong i nches;
l ong mi l es;
mi l es = 93000000; / / 93, 000, 000 mi l es j ar ak ke mat ahar i

/ / sat u mi l e sama dengan 5, 280 kaki , sat u kaki sama dengan 12 i nches
i nches = mi l es * 5280 * 12;

Consol e. Wr i t eLi ne( " J ar ak ke mat ahar i : " + i nches + " i nches. " ) ;
}
3. Untuk menjalankan programnya tekan Ctrl+F5, maka output dari programnya sebagai berikut:

Oleh: Erick Kurniawan, S.Kom, M.Kom
17

Gambar 3.1

Listing 3.2 Penjumlahan Tipe I nteger
1. Buatlah sebuah aplikasi console baru, kemudian beri nama untuk projectnya TambahI nt eger
2. Kemudian tulis kode dibawah ini:
st at i c voi d Mai n( st r i ng[ ] ar gs)
{
i nt number 1; / / var i abel unt menampung ni l ai per t ama
i nt number 2; / / var i abel unt menampung ni l ai kedua
i nt sum; / / var i abel yg menampung hasi l penj uml ahan

Consol e. Wr i t e( "Masukan ni l ai per t ama : ") ;
/ / konver si dar i t i pe st r i ng ke i nt eger
number 1 = Conver t . ToI nt 32( Consol e. ReadLi ne( ) ) ;
Consol e. Wr i t e( "Masukan ni l ai kedua : " ) ;
number 2 = Conver t . ToI nt 32( Consol e. ReadLi ne( ) ) ;

sum= number 1 + number 2;
Consol e. Wr i t eLi ne( " J adi hasi l penj uml ahannya : "+sum) ;
}
3. kemudian jalankan programnya dengan menekan tombol Ctrl+F5, maka didapat output sebagai
berikut:

Gambar 3.2

Tipe Data Floating Point
Tipe floating point digunakan untuk merepresentasikan bilangan pecahan, ada dua macam tipe
floating point pada C# yaitu f l oat dan doubl e yang merepresentasikan single dan double precision
number. Tipe float mempunyai panjang 32 bi t dan mempunyai range nilai kira-kira 1. 5E45 sampai
3. 4E+38 sedangkan tipe doubl e mempunyai panjang 64 bi t dan mempunyai range nilai kira-kira
5E324 sampai 1. 7E+308. Pada C# tipe double yang paling sering digunakan.

Listing 3.3 Tipe Floating Point
1. Buatlah aplikasi console baru, beri nama Ti peFl oat i ng untuk projectnya.
2. Kemudian tulis kode dibawah ini:
st at i c voi d Mai n( st r i ng[ ] ar gs)
{
Doubl e r ;
Doubl e ar ea;

ar ea = 10. 0;

r = Mat h. Sqr t ( ar ea / 3. 1416) ;


Oleh: Erick Kurniawan, S.Kom, M.Kom
18
Consol e. Wr i t eLi ne( " Radi us- nya: " + r ) ;
}
3. Tekan Ctrl+F5 untuk menjalankan program, output-nya dapat dilihat pada tampilan dibawah
ini:

Gambar 3.3

Tipe Data Decimal
Tipe ini biasanya digunakan untuk melakukan kalkulasi moneter (bidang keuangan), tipe decimal
menggunakan representasi 128 bi t dengan range nilai antara 1E28 sampai 7. 9E+28. Tipe ini
sangat akurat dan tanpa kesalahan pembulatan sehingga cocok sekali untuk dipergunakan untuk
perhitungan yang sangat akurat seperti perhitungan uang.

Listing 3.4 Tipe Decimal
1. Buatlah aplikasi console application baru dengan nama Ti peDeci mal .
2. Kemudian tulis kode sebagai berikut:
st at i c voi d Mai n( st r i ng[ ] ar gs)
{
deci mal pr i ce;
deci mal di scount ;
deci mal di scount ed_pr i ce;

/ / menghi t ung har ga di scount ed
pr i ce = 20. 95m;
di scount = 0. 2m; / / ddi skonnya 20%

di scount ed_pr i ce = pr i ce - ( pr i ce * di scount ) ;

Consol e. Wr i t eLi ne( " Har ga set el ah di skon: $" + di scount ed_pr i ce) ;
}
3. Tekan Ctrl+F5 untuk menjalankan program, outputnya dapat dilihat pada tampilan dibawah ini:

Gambar 3.4

Tipe Data Characters
Pada C# tipe data characters panjangnya tidak 8 bi t seperti tipe characters pada C++, tipe
characters pada C# memiliki panjang 16 bi t atau disebut Unicode.Unicode mampu menampung
semua characters yang terdapat pada bahasa manusia. Meskipun untuk bahasa english, german, french
cukup dengan representasi 8 bit tetapi ada juga bahasa yang membutuhkan representasi lebih dari 8 bit,
misalnya bahasa chinese.
Pada C# tipe char adalah 16 bi t unsi gned yang memiliki range dari 0 sampai 65, 535.
Standar 8-bit ASCII characters yang mempunyai range 0- 127 merupakan subset dari Unicode. Jadi
ASCII characters masih valid digunakan pada C# characters. Contoh deklarasi tipe characters pada C#
sebagai berikut:
char ch;

Oleh: Erick Kurniawan, S.Kom, M.Kom
19
ch = ' X' ;
Consol e. Wr i t eLi ne( " Thi s i s ch: " + ch) ;

Tipe Data Boolean
Tipe boolean hanya terdiri dari dua nilai yaitu t r ue dan f al se, seperti bahasa pemrograman
yang lain C# tidak menyediakan konversi dari tipe data boolean ke tipe data integer, misal true menjadi
1 dan false menjadi 0.

Listing 3.5 Tipe Data Boolean
1. Buatlah aplikasi console baru dengan nama Ti peBool ean
2. Kemudian tulis kode sebagai berikut:
st at i c voi d Mai n( st r i ng[ ] ar gs)
{
bool b;

b = f al se;
Consol e. Wr i t eLi ne( " b ber ni l ai " + b) ;
b = t r ue;
Consol e. Wr i t eLi ne( " b ber ni l ai " + b) ;

/ / ni l ai bool ean unt uk pengecekan pada i f
i f ( b) Consol e. Wr i t eLi ne( " Bar i s i ni di eksekusi . ") ;

b = f al se;
i f ( b) Consol e. Wr i t eLi ne( " Bar i s i ni t i dak di eksekusi . ") ;

Consol e. Wr i t eLi ne( " 10 > 9 ber ni l ai " + ( 10 > 9) ) ;
}
3. Tekan Ctrl+F5 untuk menjalankan program, dan outputnya dapat dilihat sebagai berikut:

Gambar 3.5

Scope dan Lifetime Variable
Pada contoh-contoh program diatas anda menggunakan variabel yang dideklarasikan dalam
method Main() ini berarti variabel tersebut dapat diakses oleh semua method yang terdapat dalam
method Main(). Anda juga dapat mendeklarasikan variabel didalam blok selain method Main(), blok
biasanya diawali dengan kurung kurawal dan diakhiri dengan kurung kurawal, jika anda
mendeklarasikan variabel dalam satu blok tertentu maka variabel tersebut juga hanya dapat diakses
dalam blok itu sendiri atau biasa disebut sebagai scope lokal. Scope menentukan bagaimana sebuah
object dapat diakses oleh bagian lain dari program.
Jika pada sebuah method juga terdapat parameter, maka parameter tersebut juga hanya dapat
diakses dalam method itu sendiri (lokal). Untuk lebih jelasnya dapat dilihat pada contoh program
dibawah ini:
Listing 3.6 Scope Variable
1. Buatlah aplikasi console baru dengan nama Scopi ng
2. kemudian tuliskan kode sebagai berikut:
st at i c voi d Mai n( st r i ng[ ] ar gs)

Oleh: Erick Kurniawan, S.Kom, M.Kom
20
{
i nt x; / / vi si bel di semua met hod dal amMai n( )
x = 10;
i f ( x == 10)
{ / / memul ai scope bar u
i nt y = 20; / / hanya di kenal i pada bl ok i ni saj a
/ / x dan y keduanya dapat di akses
Consol e. Wr i t eLi ne( " x dan y: " + x + " " + y) ;
x = y * 2;
}
/ / y = 100; / / Er r or ! di si ni y t i dak di kenal i
/ / x masi h dapat di kenal i
Consol e. Wr i t eLi ne( " x adal ah " + x) ;
}
3. Tekan Ctrl+F5 untuk menjalankan program, outputnya dapat dilihat sebagai berikut:

Gambar 3.6

Poin penting yang juga harus diingat adalah siklus hidup / lifetime dari variabel yaitu variabel
dibuat ketika masuk pada scope dan dihapus ketika keluar dari scope. Ini berati bahwa variabel hanya
menyimpan nilai ketika masih berada didalam scope, ketika sudah keluar dari scope variabel tidak lagi
memiliki nilai. Contoh lifetime variabel dapat dilihat pada contoh dibawah ini:
Listing 3.7 Lifetime Variable
1. Buatlah aplikasi console baru dengan nama Lifetime
2. Kemudian tuliskan kode dibawah ini:
st at i c voi d Mai n( st r i ng[ ] ar gs)
{
i nt x;

f or ( x = 0; x < 3; x++)
{
i nt y = - 1; / / y di i ni al i sasi t i ap kal i masuk dal ambl ok
Consol e. Wr i t eLi ne( " y ni l ai nya : " + y) ; / / sel al u mencet ak - 1
y = 100;
Consol e. Wr i t eLi ne( " y sekar ang ni l ai nya: " + y) ;
}

}
3. Tekan Ctrl+F5 untuk menjalankan programnya, outputnya akan ditampilkan sebagi berikut:

Gambar 3.7



Oleh: Erick Kurniawan, S.Kom, M.Kom
21
Tipe Konversi dan Casting
Pada programming sudah biasa untuk melakukan proses perubahan tipe data pada variabel
menjadi tipe data yang lain, ada dua macam konversi yang dapat digunakan yaitu automatic
conversions dan casting incompatible types.

Automatic Conversions
Ketika satu variabel yang mempunyai tipe data tertentu dikonversi menjadi tipe data yang lain
maka automatic conversions akan dijalankan jika:
Dua variabel tersebut memiliki tipe yang kompatible.
Tipe tujuan harus mempunyai range yang lebih besar daripada tipe aselinya.
Ketika kedua kondisi diatas terpenuhi maka widening conversion dilakukan, misalnya tipe i nt
sudah jauh dari cukup untuk menampung konversi dari type byt e. Automatic type conversion juga
biasa disebut sebagai implicit conversion.

Listing 3.8 Automatic Conversion
1. Buatlah aplikasi console dengan nama Aut oConver t
2. Kemudian tuliskan kode dibawah ini
st at i c voi d Mai n( st r i ng[ ] ar gs)
{
l ong L;
doubl e D;

L = 100123285;
D = L;
Consol e. Wr i t eLi ne( " L dan D: " + L + " " + D) ;
}
3. Jalankan program diatas dengan menekan Ctrl+F5.
4. Program diatas mengkonversikan dari tipe l ong ke tipe doubl e secara otomatis, tapi jika anda
melakukan sebaliknya yaitu merubah tipe doubl e menjadi l ong maka compiler akan
menampilkan pesan error.
st at i c voi d Mai n( st r i ng[ ] ar gs)
{
l ong L;
doubl e D;
D = 100123285. 0;
L = D; / / konver si t i dak dapat di l akukan
Consol e. Wr i t eLi ne( " L dan D: " + L + " " + D) ;
}

Casting
Jika konversi dilakukan antar tipe data yang tipenya tidak kompatible compiler tidak dapat
mengkonversi secara otomatis maka dibutuhkan casting. Misalnya anda akan mengkonversi ekperesi
( x/ y) yang bertipe doubl e menjadi i nt .
doubl e x, y;
/ / . . .
i nt i = ( i nt ) ( x / y) ;
Maka hasil dari ( x/ y) akan dipaksa menjadi tipe data i nt . Casting juga melibatkan
narrowing conversion yaitu bila tipe data tujuan lebih kecil dari tipe data asal, misal dari tipe l ong ke
tipe i nt maka akan ada informasi yang hilang karena tipe i nt lebih kecil daripada tipe l ong.


Oleh: Erick Kurniawan, S.Kom, M.Kom
22
Listing 3.9 Casting
1. Buatlah aplikasi console baru dengan nama Cast i ng
2. Kemudian tuliskan kodenya sebagai berikut:
st at i c voi d Mai n( st r i ng[ ] ar gs)
{
doubl e x, y;
byt e b;
i nt i ;
char ch;
ui nt u;
shor t s;
l ong l ;

x = 10. 0;
y = 3. 0;

i = ( i nt ) ( x / y) ; / / cast doubl e menj adi i nt , dat a ada yg hi l ang
Consol e. Wr i t eLi ne( " Hasi l Konver si ke I nt eger x / y: " + i ) ;
Consol e. Wr i t eLi ne( ) ;

/ / cast i nt menj adi byt e, t i dak ada dat a yang hi l ang
i = 255;
b = ( byt e) i ;
Consol e. Wr i t eLi ne( " b set el ah di ber i ni l ai 255: " + b +
" - - t i dak ada dat a yang hi l ang. ") ;

/ / cast i nt menj adi byt e, ada dat a yang hi l ang
i = 257;
b = ( byt e) i ;
Consol e. Wr i t eLi ne( " b set el ah di ber i ni l ai 257: " + b +
" - - dat a ada yang hi l ang. ") ;
Consol e. Wr i t eLi ne( ) ;

/ / cast ui nt menj adi shor t , t i dak ada dat a yang hi l ang
u = 32000;
s = ( shor t ) u;
Consol e. Wr i t eLi ne( " s set el ah di ber i ni l ai 32000: " + s +
" - - t i dak ada dat a yang hi l ang" ) ;

/ / cast ui nt menj adi shor t , dat a ada yang hi l ang
u = 64000;
s = ( shor t ) u;
Consol e. Wr i t eLi ne( " s set el ah di ber i ni l ai 64000: " + s +
" - - dat a ada yang hi l ang" ) ;
Consol e. Wr i t eLi ne( ) ;

/ / cast l ong menj adi ui nt , t i dak ada dat a yang hi l ang
l = 64000;
u = ( ui nt ) l ;
Consol e. Wr i t eLi ne( " u set el ah di ber i ni l ai 64000: " + u +
" - - t i dak ada dat a yang hi l ang" ) ;

/ / cast l ong menj adi ui nt , dat a ada yang hi l ang
l = - 12;
u = ( ui nt ) l ;
Consol e. Wr i t eLi ne( " u set el ah di ber i ni l ai - 12: " + u +
" - - dat a ada yang hi l ang" ) ;
Consol e. Wr i t eLi ne( ) ;

Oleh: Erick Kurniawan, S.Kom, M.Kom
23

/ / cast i nt menj adi char
b = 88; / / ASCI I code unt uk hur uf X
ch = ( char ) b;
Consol e. Wr i t eLi ne( " ch set el ah di ber i ni l ai 88: " + ch) ;
}
3. Jalankan program diatas dengan menekan tombol Ctrl+F5.

































Oleh: Erick Kurniawan, S.Kom, M.Kom
24
BAB 4
Operator

C# menydiakan kumpulan operator yang dapat digunakan dalam penulisan ekspresi. Operator
pada C# dibagi menjadi beberapa jenis antara lain arithmatic, bitwise, relational, logical, assigment,
dan ? operator.

Arithmatic Operator
Berikut daftar arithmatic operator pada C#:
Operator Meaning
+ ; Addition
Subtraction (also unary minus)
* Multiplication
/ Division
% Modulus
++ Increment
Decrement
Operator +, -, *, / adalah operator aritmatika biasa yang sering anda gunakan untuk perhitungan
matematika sederhana dalam kalkulator, sedangkan operator % disebut juga modulus atau sisa bagi.

Listing 4.1 Penggunaan Modulus
1. Buatlah aplikasi console baru dengan nama Modul us
2. Kemudian tulis kode sebagai berikut:
st at i c voi d Mai n( st r i ng[ ] ar gs)
{
i nt i di v, i mod;
doubl e ddi v, dmod;

i di v = 10 / 3;
i mod = 10 %3;

ddi v = 10. 0 / 3. 0;
dmod = 10. 0 %3. 0;

Consol e. Wr i t eLi ne( " Hasi l di v dan mod dar i 10 / 3: " +
i di v + " " + i mod) ;
Consol e. Wr i t eLi ne( " Hasi l di v dan mod dar i 10. 0 / 3. 0: " +
ddi v + " " + dmod) ;
}
3. Jalankan programnya dengan menekan tombol Ctrl+F5.

Gambar 4.1


Oleh: Erick Kurniawan, S.Kom, M.Kom
25
Sedangkan operator ++, dan adalah increament dan decreament operator. Increment operator
menambahkan 1 pada operand-nya.
Jadi jika dituliskan
x = x + 1;
bisa ditulis dengan
x++;
sedangkan
x = x - 1;
bisa ditulis dengan
x- - ;
Kedua operator increment dan decrement mempunyai dua cara penulisan yaitu prefix dan postfix
yang mengikuti operand. Statement x = x + 1 dapat dituliskan sebagai
++x; / / bent uk pr ef i x
dan
x++; / / bent uk post f i x
Adapun perbedaan dari penggunaan bentuk prefix dan bentuk postfix dapat dilihat dari contoh
program berikut ini:
Listing 4.2 I ncrement dan Decrement
1. Buatlah aplikasi console baru dengan nama Incdec
2. Kemudian tuliskan kode berikut
st at i c voi d Mai n( st r i ng[ ] ar gs)
{
i nt x, y;

x = 1;
y = x + x++; / / post f i x x++ ni l ai nya bel umdi t ambah
Consol e. Wr i t eLi ne( " Hasi l nya : "+y) ;
Consol e. Wr i t eLi ne( " Ni l ai x: " + x) ;

x = 1;
y = x + ++x; / / pr ef i x
Consol e. Wr i t eLi ne( " Hasi l nya : "+y) ;
Consol e. Wr i t eLi ne( " Ni l ai x: " + x) ;
}
3. Jalankan program dengan menekan tombol Ctrl+F5.

Gambar 4.2

Relational dan Logical Operators
Berikut daftar relational operator pada C#:
Operator Meaning
= = Equal to / sama dengan
!= Not equal to / tidak sama dengan
> Greater than / lebih besar
< Less than / lebih kecil

Oleh: Erick Kurniawan, S.Kom, M.Kom
26
Operator Meaning
>= Greater than or equal to / lebih besar atau sama dengan
<= Less than or equal to / lebih kecil atau sama dengan
Relational operator pada C# biasanya digunakan dalam statement If untuk pengecekan kondisi

Dan berikut adalah logical operator pada C#:
Operator Meaning
& AND
| OR
^ XOR (exclusive OR)
|| Short-circuit OR
&& Short-circuit AND
! NOT

Pada C# semua object dapat dibandingkan kesamaannya dengan operator ==dan ! =. Semua
relational operator dapat digunakan pada semua tipe numeric, sedangkan tipe bool hanya dapat
digunakan pada operator ==dan ! =saja.
Pada operator logical maka operand yang dibandingkan harus bertipe bool, adapun contoh tabel
penggunaan logika bool dapat dilihat sebagai berikut
p q p&q p|q p^q !p
False False False False False True
True False False True True False
False True False True True True
True True True True False False

Listing 4.3 Penggunaan Operator Relational & Logical
1. Buatlah aplikasi console baru dengan nama RelLogOperator
2. Kemudian tulis program dibawah ini:
st at i c voi d Mai n( st r i ng[ ] ar gs)
{
i nt i , j ;
bool b1, b2;

i = 10;
j = 11;
i f ( i < j ) Consol e. Wr i t eLi ne( "i < j ") ;
i f ( i <= j ) Consol e. Wr i t eLi ne( " i <= j " ) ;
i f ( i ! = j ) Consol e. Wr i t eLi ne( " i ! = j " ) ;
i f ( i == j ) Consol e. Wr i t eLi ne( " bar i s i ni t i dak akan di eksekusi ") ;
i f ( i >= j ) Consol e. Wr i t eLi ne( " bar i s i ni t i dak akan di eksekusi ") ;
i f ( i > j ) Consol e. Wr i t eLi ne( "bar i s i ni t i dak akan di eksekusi " ) ;

b1 = t r ue;
b2 = f al se;
i f ( b1 & b2) Consol e. Wr i t eLi ne( " bar i s i ni t i dak akan di eksekusi " ) ;
i f ( ! ( b1 & b2) ) Consol e. Wr i t eLi ne( " ! ( b1 & b2) menghasi l kan t r ue" ) ;

Oleh: Erick Kurniawan, S.Kom, M.Kom
27
i f ( b1 | b2) Consol e. Wr i t eLi ne( " b1 | b2 menghasi l kan t r ue" ) ;
i f ( b1 ^ b2) Consol e. Wr i t eLi ne( " b1 ^ b2 menghasi l kan t r ue" ) ;
}
3. Jalankan programnya dengan menekan tombol F5.

Assigment Operator
Assigment operator adalah tanda =, yang digunakan untuk memberi nilai pada variabel, bentuk
umumnya adalah sebagai berikut:
var = expr essi on
Tipe data variabel harus sama tipenya dengan nilai dari expressionnya. Assigment operator dapat
digunakan untuk memberi nilai kepada beberapa variabel sekaligus:
i nt x, y, z;
x = y = z = 100; / / member i ni l ai x, y, dan z menj adi 100

Compound Assigment
C# menyediakan beberapa compound assignment, yang dimaksud dengan compound assignment
adalah cara penulisan statement program yang lebih singkat, contohnya:
x = x + 10;
dapat ditulis menjadi
x += 10;
dan
x = x - 100;
dapat ditulis menjadi
x - = 100;
Beberapa penulisan compound assigment untuk operator arithmatic dan logical dalam C# adalah
sebagai berikut:
Operator Penggunaan Alternatif
+= a +=b; a = a + b;
-= a -=b; a = a b;
*= a *=b; a = a * b;
/= a /=b; a = a/b;
%= a %= b; a = a % b;

Bitwise Operators
C# menyediakan beberapa operator untuk memanipulasi data dengan cara bekerja langsung pada
bit-bit dari operandnya. Operator ini hanya dapat digunakan untuk operand dengan tipe integer, tidak
dapat digunakan pada tipe bool, float, atau double. Daftar dari bitwise operator dapat dilihat pada
tampilan berikut:
Operator Result
& Bitwise AND
| Bitwise OR
^ Bitwise exclusive OR (XOR)
Shift right
Shift left
~ Ones complement (unary NOT)

Oleh: Erick Kurniawan, S.Kom, M.Kom
28

p q p & q p | q p ^q ~p
0 0 0 0 0 1
1 0 0 1 1 0
0 1 0 1 1 1
1 1 1 1 0 0

Operator ?
Salah satu operator yang menarik yang dimiliki C# adalah operator ?, operator ? digunakan untuk
menggantikan single i f el se statement, operator ? disebut juga ternary karena mempunyai tiga
operand, adapun cara penulisannya sebagai berikut:
Exp1 ? Exp2: Exp3;
Dimana Exp1 adalah bool expression, jika Exp1 bernilai true maka Exp2 dikerjakan, jika Exp1
bernilai false maka Exp3 yang akan dikerjakan.
Listing 4.4 Penggunaan Ternary
1. Buatlah aplikasi console baru dengan nama Ternary
2. Kemudian tuliskan kode dibawah ini:
st at i c voi d Mai n( st r i ng[ ] ar gs)
{
i nt i = 7;
st r i ng r esul t ;
r esul t = i > 5 ? "l ebi h besar 5" : "l ebi h keci l 5" ;
Consol e. Wr i t eLi ne( " Hasi l nya: "+r esul t ) ;
}
3. Tekan Ctrl+F5 untuk menjalankan programnya

Operator Precedence
Operator presedence adalah urut-urutan operator yang akan dikerjakan oleh terlebih dahulu dalam
suatu statement program, misal:
Langkah 1 y = 2 * 5 * 5 + 3 * 5 +7
maka yang pertama dikerjakan adalah operator *
Langkah 2 y = 10 * 5 + 3 * 5 + 7
Langkah 3 y = 50 + 3 * 5 + 7
Langkah 4 y = 50 + 15 + 7
setelah * operator selesai dikerjakan baru dilanjutkan dengan operator +
Langkah 5 y = 65 + 7
Langkah 6 y = 72
Adapun daftar urut-urutan operator precedence berdasarkan prioritasnya dari yang paling tinggi
(dikerjakan terlebih dahulu) sampai yang paling rendah (dikerjakan paling terakhir) sebagai berikut:

Prioritas Operator Keterangan
1 - Operator negasi (bukan pengurangan)
2 *, /, % Perkalian, pembagian, dan modulus
3 +, - Penambahan dan pengurangan



Oleh: Erick Kurniawan, S.Kom, M.Kom
29
BAB 5
Program Control Statement

Pada bab ini akan dibahas tentang program control statement, ada tiga kategori control statement
pada C# yaitu:
Selection statement yang terdiri dari if dan switch statement.
Iteration statement yang terdiri dari for, while, do-while, dan foreach loops.
J ump statement yang terdiri dari break, continue, goto, return, dan throw.

I f Statement
Statement If digunakan untuk seleksi / pemilihan, berdasarkan kondisi tertentu, adapun cara
penulisan statement if adalah sebagai berikut:
i f ( condi t i on) st at ement 1;
el se st at ement 2;
Jika kondisi terpenuhi maka statement1 dikerjakan, tetapi jika kondisi tidak terpenuhi maka
statement2 yang akan dikerjakan. Contoh statement if diatas digunakan jika statementnya satu saja atau
single statement, bila statementnya ada beberapa maka bentuk penulisannya adalah:
i f ( condi t i on)
{
st at ement . .
st at ement . .
}
el se
{
st at ement . .
st at ement . .
}
Listing 5.1 Penggunaan Single I f
1. Buatlah aplikasi console baru dengan nama Si ngl eI f
2. Kemudian tulis kode berikut
st at i c voi d Mai n( st r i ng[ ] ar gs)
{
i nt number 1, number 2;
Consol e. Wr i t e( "Masukan ni l ai number 1: " ) ;
/ *
* I nt 32. Par se di gunakan unt uk menkonver si t i pe st r i ng ke i nt
*/
number 1 = I nt 32. Par se( Consol e. ReadLi ne( ) ) ;
Consol e. Wr i t e( "Masukan ni l ai number 2: " ) ;
number 2 = I nt 32. Par se( Consol e. ReadLi ne( ) ) ;
i f ( number 1 >= number 2)
{
Consol e. Wr i t eLi ne( " number 1 l ebi h besar at au sama dengan number 2" ) ;
}
el se
{
Consol e. Wr i t eLi ne( " number 2 l ebi h besar dar i number 1" ) ;
}
}
3. Untuk menjalankan programnya tekan Ctrl+F5.

Oleh: Erick Kurniawan, S.Kom, M.Kom
30

Gambar 5.1

Nested I f
Nested If adalah statement if yang berada didalam statement if yang lain. Nested if sangat umum
digunakan dalam pemrograman, contoh penulisan nested if:
i f ( condi t i on)
{
i f ( condi t i on)
{
st at ement . .
}
i f ( condi t i on)
{
i f ( condi t i on)
{
st at ement . .
}
}
}
Listing 5.2 Penggunaan Nested I f
1. Buatlah aplikasi console baru dengan nama Nest edI f
2. Kemudian tuliskan kode berikut
st at i c voi d Mai n( st r i ng[ ] ar gs)
{
i nt number 1, number 2;
Consol e. Wr i t e( "Masukan ni l ai number 1: " ) ;
number 1 = I nt 32. Par se( Consol e. ReadLi ne( ) ) ;
Consol e. Wr i t e( "Masukan ni l ai number 2: " ) ;
number 2 = I nt 32. Par se( Consol e. ReadLi ne( ) ) ;
i f ( number 1 >= number 2)
{
Consol e. Wr i t eLi ne( " number 1 l ebi h besar at au sama dengan number 2" ) ;
i f ( number 1 %2 == 0)
{
Consol e. Wr i t eLi ne( "number 1 adal ah bi l angan genap") ;
}
el se
{
Consol e. Wr i t eLi ne( "number 2 adal ah bi l angan ganj i l " ) ;
}
}
el se
{
Consol e. Wr i t eLi ne( " number 2 l ebi h besar dar i number 1" ) ;
}
}
3. Jalankan programnya dengan menekan tombol Ctrl+F5.

Oleh: Erick Kurniawan, S.Kom, M.Kom
31

Gambar 5.2

I f Bertingkat
Statement If juga dapat dituliskan secara bertingkat, dalam if bertingkat tidak hanya tedapat satu
kondisi saja yang di cek tetapi bisa beberapa kondisi, bila kondisi pertama tidak terpenuhi maka
otomatis pindah ke kondisi ke dua dan seterusnya.
i f ( condi t i on1)
st at ement ;
el se i f ( condi t i on2)
st at ement ;
el se i f ( condi t i on3)
st at ement ;
.
.
el se
st at ement ;
Listing 5.3 I f Bertingkat
1. Buatlah aplikasi console baru dengan nama IfBertingkat
2. Kemudian tuliskan kode berikut
st at i c voi d Mai n( st r i ng[ ] ar gs)
{
i nt ni l ai ;
Consol e. Wr i t e( "Masukan ni l ai yang akan di konver si : ") ;
ni l ai = I nt 32. Par se( Consol e. ReadLi ne( ) ) ;
i f ( ni l ai >= 85)
{
Consol e. Wr i t eLi ne( " Ni l ai anda A") ;
}
el se i f ( ni l ai >= 70)
{
Consol e. Wr i t eLi ne( " Ni l ai anda B") ;
}
el se i f ( ni l ai >= 55)
{
Consol e. Wr i t eLi ne( " Ni l ai anda C") ;
}
el se i f ( ni l ai >= 35)
{
Consol e. Wr i t eLi ne( " Ni l ai anda D") ;
}
el se
{
Consol e. Wr i t eLi ne( " Ni l ai anda E") ;
}
}
3. Jalankan programnya dengan menekan tombol Ctrl+F5

Oleh: Erick Kurniawan, S.Kom, M.Kom
32

Gambar 5.3

Switch Statement
Selain statement I f , selection statement yang kedua pada C# adalah swi t ch, fungsi statement
switch hampir sama statement i f . el se dengan statement el se lebih dari satu. Meskipun anda dapat
menggunakan i f bertingkat untuk memeilih beberapa alternatif pilihan namun pada beberapa kasus
swi t ch lebih efisien untuk digunakan. Struktur penulisan statement swi t ch adalah:
swi t ch( expr essi on) {
case const ant 1:
st at ement sequence
br eak;
case const ant 2:
st at ement sequence
br eak;
case const ant 3:
st at ement sequence
br eak;
.
.
.
def aul t :
st at ement sequence
br eak;
}
Switch expression harus bertipe integer (byt e, shor t , i nt , char ), atau st r i ng, tipe
f l oat i ng poi nt tidak diijinkan untuk digunakan, case constant tipenya harus kompatibel dengan
expression-nya dan tidak boleh ada case constant yang bernilai sama.
Jika tidak ada case constant yang memenuhi maka statement dalam blok def aul t yang akan
dieksekusi, penggunaan def aul t sifatnya opsional jika tidak ada def aul t dan tidak ada case
constant yang memenuhi maka tidak ada yang dieksekusi / tidak ada hasil outputnya. Ketika case
constant memenuhi maka statement didalam blok case tersebut dieksekusi sampai ditemukan br eak
statement.

Listing 5.4 Switch..Case Statement
1. Buatlah aplikasi console baru dengan nama SwitchCase
2. Kemudian tuliskan kode berikut
st at i c voi d Mai n( st r i ng[ ] ar gs)
{
i nt i nt Har i ;
Consol e. Wr i t e( "Masukan Pi l i han Har i ( 1- 7) : " ) ;
i nt Har i = I nt 32. Par se( Consol e. ReadLi ne( ) ) ;
swi t ch ( i nt Har i )
{
case 1:
Consol e. Wr i t eLi ne( "Har i Mi nggu") ;
br eak;
case 2:

Oleh: Erick Kurniawan, S.Kom, M.Kom
33
Consol e. Wr i t eLi ne( "Har i Seni n" ) ;
br eak;
case 3:
Consol e. Wr i t eLi ne( "Har i Sel asa") ;
br eak;
case 4:
Consol e. Wr i t eLi ne( "Har i Rabu" ) ;
br eak;
case 5:
Consol e. Wr i t eLi ne( "Har i Kami s" ) ;
br eak;
case 6:
Consol e. Wr i t eLi ne( "Har i J umat " ) ;
br eak;
case 7:
Consol e. Wr i t eLi ne( "Har i Sabt u" ) ;
br eak;
def aul t :
Consol e. Wr i t eLi ne( "Anda sal ammemasukan i nput ( 1- 7) ") ;
br eak;
}
}
3. Jalankan programnya dengan menekan tombol Ctrl+F5.

Gambar 5.4

For..Loop Statement
Salah satu kelebihan komputer dibandingkan dengan manusia adalah kemampuannya untuk
melaksanakan suatu instruksi berulangkali dengan amat sangat cepat, pada pemrograman pengulangan
atau kalang (repetition atau loop) dapat dilakukan sejumlah kali sampai kondisi berhenti yang sudah
ditentukan tercapai.
Statement perulangan terdiri atas dua bagian:
Bagian pertama adalah kondisi perulangan yaitu ekspresi boolean yang harus dipenuhi untuk
melaksanakan perulangan.
Bagian kedua adalah blok statement yang akan diulang
Statement perulangan biasanya juga disertai dua proses
Proses pertama adalah inisialisasi yaitu proses memberi nilai pada variabel yang akan
digunakan sebagai counter pada perulangan.
Proses kedua adalah terminasi yaitu proses penghentian perulangan pada kondisi tertentu yang
sudah ditentukan, ini dilakukan pada akhir dari perulangan.
Statement for termasuk dalam repetition statement atau statement perulangan, adapun
karakteristik dari statement for adalah:
Digunakan untuk perulangan yang batasnya sudah diketahui dengan jelas, misalnya 1 sampai
dengan 10.
Memerlukan dua variabel untuk awal dan akhir perulangan.
Nilai variabel penghitung (counter) akan secara otomatis bertambah atau berkurang tiap kali
sebuah perulangan dilaksanakan.
Struktur dari statement for dapat dilihat sebagi berikut:


Oleh: Erick Kurniawan, S.Kom, M.Kom
34
f or ( i ni t i al i zat i on; condi t i on; i t er at i on)
{
st at ement sequence
}

Untuk lebih jelasnya dibawah ini ada beberapa contoh penggunaan statement for yang bervariasi
untuk menyelesaikan beberapa studi kasus tertentu.

Listing 5.5 Simple For..Loop Statement
1. Buatlah aplikasi console baru dengan nama Si mpl eFor
2. Kemudian tulis kode berikut
st at i c voi d Mai n( st r i ng[ ] ar gs)
{
/ / mencet ak bi l angan dar i 1- 10, i ncr ement
f or ( i nt i = 1; i <= 10; i ++)
Consol e. Wr i t eLi ne( i ) ;
Consol e. Wr i t eLi ne( ) ;
/ / mencet ak bi l angan dar i 10 ke 1, decr ement
f or ( i nt i = 10; i >= 1; i - - )
Consol e. Wr i t eLi ne( i ) ;
}
3. Jalankan programnya dengan menekan tombol Ctrl+F5.

Listing 5.5 menjelaskan penggunaan f or untuk mencetak bilangan dari 1 sampai 10, anda dapat
melihat bahwa inisialisasi awal yang diberikan pada for adalah i nt i = 1 dan perulangan akan
dilakukan selama i <= 10, i ++adalah variabel untuk increment otomatis pada for.

Listing 5.6 Mencari Bilangan Genap dan Ganjil
1. Buatlah aplikasi console baru dengan nama GenapGanjil
2. Kemudian tulis kode berikut
st at i c voi d Mai n( st r i ng[ ] ar gs)
{
Consol e. Wr i t eLi ne( " Menampi l kan bi l angan genap dar i 1- 20" ) ;
f or ( i nt i = 1; i <= 20; i ++)
{
i f ( i %2 == 0)
Consol e. Wr i t e( i + " " ) ;
}
Consol e. Wr i t eLi ne( ) ;
Consol e. Wr i t eLi ne( " Menampi l kan bi l angan ganj i l dar i 1- 20") ;
f or ( i nt i = 1; i <= 20; i ++)
{
i f ( i %2 == 1)
Consol e. Wr i t e( i + " " ) ;
}
}
3. Jalankan programnya dengan menekan tombol Ctrl+F5.

Listing 5.6 menjelaskan penggunaan statement if didalam pengulangan pada studi kasus mencari
bilangan genap dan ganjil, bilangan genap adalah bilangan yang habis dibagi dengan 2 sedangkan
bilangan ganjil adalah bilangan yang tidak habis dibagi 2.



Oleh: Erick Kurniawan, S.Kom, M.Kom
35
Listing 5.7 Nested For
1. Buatlah aplikasi console baru dengan nama NestedFor
2. Kemudian tulis kode berikut:
st at i c voi d Mai n( st r i ng[ ] ar gs)
{
f or ( i nt i = 0; i < 10; i ++)
{
f or ( i nt j = 0; j < i ; j ++)
{
Consol e. Wr i t e( " * " ) ;
}
Consol e. Wr i t eLi ne( ) ;
}
}
3. Jalankan programnya dengan menekan tombol Ctrl+F5, hasil outputnya dapat dilihat sebagai
berikut:

Gambar 5.5

While..Loop Statement
Salah satu bentuk perulangan yang dapat digunakan pada C# adalah statement While..Loop,
adapun bentuk umum dari statement while..loop sebagai berikut:
i ni t i al i zat i on
whi l e( condi t i on)
{
st at ement 1.
st at ement 2.
per ubahan condi t i on
}
Statement while..loop mempunyai beberapa karakteristik khusus yang membedakannya dari
bentuk perulangan yang lain, yaitu:
Pengecekan kondisi dilakukan terlebih dahulu sebelum dilakukan perulangan, jika kondisi yang
dicek bernilai benar (true) maka perulangan akan dilakukan.
Statement dapat berupa single statement atau block statement (lebih dari satu statement).

Listing 5.8 SimpleWhile
1. Buatlah aplikasi console baru dengan nama Si mpl eWhi l e
2. Kemudian tulis kode berikut:
st at i c voi d Mai n( st r i ng[ ] ar gs)
{
/ / mencet ak angka 1- 10
i nt i = 1;
whi l e ( i <= 10)

Oleh: Erick Kurniawan, S.Kom, M.Kom
36
{
Consol e. Wr i t eLi ne( i ) ;
i ++;
}
}
3. Jalankan programnya dengan menekan tombol Ctrl+F5.

Listing 5.9 Menampilkan Bilangan Terbesar
1. Buatlah aplikasi console baru dengan nama BilTerbesar
2. Kemudian tulis kode berikut:
st at i c voi d Mai n( st r i ng[ ] ar gs)
{
i nt bi l ;
i nt i = 1;
i nt banyak;
i nt besar = 0;
Consol e. Wr i t e( "Masukan banyak bi l angan yang akan di cek : ") ;
banyak = Conver t . ToI nt 32( Consol e. ReadLi ne( ) ) ;
whi l e ( i <= banyak)
{
Consol e. Wr i t e( " Masukan Bi l angan ke- " +i +" : " ) ;
bi l = Conver t . ToI nt 32( Consol e. ReadLi ne( ) ) ;
i f ( bi l >= besar )
{
besar = bi l ;
}
i ++;
}
Consol e. Wr i t eLi ne( " J adi bi l angan yang t er besar adal ah : " +besar ) ;
}
3. Jalankan programnya dengan menekan tombol Ctrl+F5.

Gambar 5.6

Do..While Statement
Statement do..while loop mirip dengan statement while..loop hanya ada beberapa hal yang
berbeda, yaitu:
Kondisi pengecekan perulangan dilakukan di akhir peerulangan.
Perulangan pasti dilakukan minimal satu kali terlebih dahulu, kemudian baru dilakukan
pengecekan terhadap kondisi, jika kondisi bernilai benar maka perulangan masih akan tetap
dilakukan.
Bentuk umum dari statement do..while adalah sebagai berikut:
initialization
do
{
st at ement . . .

Oleh: Erick Kurniawan, S.Kom, M.Kom
37
st at ement
per ubahan condi t i on
}whi l e( condi t i on)

Listing 5.10 Simple Do..While
1. Buat aplikasi console baru dengan nama SimpleDo
2. Kemudian tulis kode berikut:
st at i c voi d Mai n( st r i ng[ ] ar gs)
{
/ / mencet ak bi l angan dar i 1- 10
i nt i = 1;
do
{
Consol e. Wr i t eLi ne( i ) ;
i ++;
} whi l e ( i <= 10) ;
}
3. Tekan Ctrl+F5 untuk menjalankan programnya

Listing 5.11 Membalik Bilangan
1. Buat aplikasi console baru dengan nama BalikBilangan
2. Kemudian tulis kode berikut:
st at i c voi d Mai n( st r i ng[ ] ar gs)
{
i nt num;
i nt next di gi t ;

Consol e. Wr i t e( "Masukan bi l angan : " ) ;
num= Conver t . ToI nt 32( Consol e. ReadLi ne( ) ) ;
Consol e. Wr i t eLi ne( " Bi l angan sebel umdi bal i k "+num) ;
Consol e. Wr i t e( "Bi l angan set el ah di bal i k : ") ;
do
{
next di gi t = num%10;
Consol e. Wr i t e( next di gi t ) ;
num= num/ 10;
} whi l e ( num> 0) ;
}
3. Tekan F5 untuk menjalankan programnya.

Break Statement
Break statement digunakan untuk keluar dari kalang bila kondisi tertentu yang ditambahkan
dipenuhi. Ketika break statement dieksekusi maka kalang / loop akan secara otomatis berhenti.

Listing 5.12 Penggunaan Break Statement
1. Buatlah aplikasi console baru dengan nama BreakStatement
2. Tulis kode sebagai berikut:
st at i c voi d Mai n( st r i ng[ ] ar gs)
{
f or ( i nt i = 1; i <= 10; i ++)
{
i f ( i == 5)
br eak;

Oleh: Erick Kurniawan, S.Kom, M.Kom
38
Consol e. Wr i t eLi ne( i ) ;
}
}
3. Tekan F5 untuk menjalankan programnya

Continue Statement
Continue statement digunakan untuk melewati stattement dibawah continue statement (statement
dibawah continue tidak akan dikerjakan). Adapun contoh dari penggunaan continue statement dapat
dilihat pada contoh berikut:

Listing 5.13 Continue Statement
1. Buatlah aplikasi console baru dengan nama ContinueStatement
2. Kemudian tulis kode sebagai berikut:
st at i c voi d Mai n( st r i ng[ ] ar gs)
{
f or ( i nt i = 1; i <= 10; i ++)
{
i f ( i == 5)
cont i nue;
Consol e. Wr i t eLi ne( i ) ;
}
}
3. Tekan F5 untuk menjalankan programnya




























Oleh: Erick Kurniawan, S.Kom, M.Kom
39

BAB 6
Method


Pembagian program menjadi beberapa method adalah salah satu teknik yang digunakan pada
pemrograman modular. Pada pemrograman modular program yang biasanya cukup besar dibagi
menjadi beberapa bagian yang lebih kecil sehingga mengurangi kompleksitas program yang ditulis,
masalah yang kompleks lebih mudah untuk diselesaikan dan program menjadi lebih spesifik dan
terarah.
Method adalah kumpulan dari statement yang dikerjakan secara bersama-sama untuk
menyelesaikan tugas tertentu. Penggunaan method tunggal akan menyebabkan program sulit untuk di-
maintain karena menjadi kompleks dan rumit.
Penggunaan method dalam pemrograman dapat dianalogikan sebagai berikut, jika anda membaca
buku yang mempunyai panjang ratusan halaman, akan sulit bagi anda untuk memahaminya jika
halaman-halaman tersebut tidak dikelompokan menjadi beberapa bab dan subbab tersendiri. Dengan
memecahnya menjadi beberapa bab atau subbab tersendiri maka buku tersebut menjadi lebih mudah
untuk dibaca dan dipahami. Demikian juga dengan pemrograman, anda dapat memecah code menjadi
beberapa method, setiap method yang dibuat mewakili tugas yang spesifik.
Sebagai contoh program yang mengerjakan arithmetic calculation, method yang pertama
berfungsi untuk mengambil input dari user, method yang kedua mengerjakan proses kalkulasinya, dan
method yang terakhir berfungsi untuk mencetak output-nya.
Keuntungan yang diperoleh dari memecah program menjadi beberapa method tersebut adalah
menjadikan program mudah untuk dibaca dan dipahami, anda dapat menambahkan statement baru pada
method yang spesifik tanpa mempengaruhi method yang lainnya.
Ada dua macam method yang digunakan pada C# berdasarkan nilai kembaliannnya, yaitu method
yang mengembalikan nilai dan method yang tidak mengembalikan nilai (menggunakan keyword void).

Mendefinisikan dan Memanggil Method
Menggunakan fungsi pada program melibatkan dua langkah:
Mendefinisikan Method
Memanggil Method

Contoh 6.1 Membuat Simple Method untuk Penjumlahan
1. Pada contoh program berikut akan dibuat sebuah aplikasi berbasis windows untuk melakukan
operasi penjumlahan bilangan yang diinputkan, pada program ini code akan dipecah menjadi
beberapa method yang mempunyai fungsi yang spesifik.
2. Buat aplikasi windows form baru dengan nama AddMethod
3. Property dan desain tampilannya sebagai berikut

Object Property Value
frmAdd Text Arithmatic
btnAdd Text Add Number
lstResult




Oleh: Erick Kurniawan, S.Kom, M.Kom
40

Gambar 6.1
4. Kemudian tuliskan kode programnya sebagai berikut:
publ i c par t i al cl ass f r mAdd : For m
{
publ i c f r mAdd( )
{
I ni t i al i zeComponent ( ) ;
}
/ / met hod unt uk menampi l kan penj uml ahan
publ i c voi d Di spl aySum( doubl e dbl Num1, doubl e dbl Num2)
{
l st Resul t . I t ems. Add( " J uml ah " + dbl Num1 + " di t ambah " + dbl Num2 + "
adal ah: " + ( dbl Num1 + dbl Num2) ) ;
}

/ / met hod unt uk menampi l kan penj el asan pada l i st box
publ i c voi d Expl ai nPur pose( )
{
l st Resul t . I t ems. Add( " Pr ogr ami ni di gunakan unt uk menj uml ahkan dua
bi l angan") ;
l st Resul t . I t ems. Add( " Akan di t ampi l kan hasi l penj uml ahan dar i dua
bi l angan t er sebut ") ;
}

pr i vat e voi d bt nAdd_Cl i ck( obj ect sender , Event Ar gs e)
{
l st Resul t . I t ems. Cl ear ( ) ;
/ / memanggi l met hod unt u menampi l kan penj el asan
Expl ai nPur pose( ) ;
l st Resul t . I t ems. Add( " ") ;
/ / memanggi l met hod unt uk menj uml ahkan dua bi l angan dengan par amet er
Di spl aySum( 2, 3) ;
}
}
Pada contoh 6.1 diatas anda dapat melihat bahwa code dari program tersebut dipecah menjadi
beberapa method yaitu Expl ai nPur pose( ) untuk mencetak penjelasan pada listbox dan
Di spl aySum( ) untuk menjumlahkan dan menambahkan bilangan yang sudah dijumlahkan kedalam
listbox.
Untuk menggunakan / memanggil method anda cukup memanggil nama method dan
mencantumkan nilai parameternya
Dapat anda lihat bahwa method Di spl aySum( ) memiliki dua parameter yang bertipe doubl e
yaitu dbl Num1 dan dbl Num2, maka ketika method tersebut dipanggil maka nilai parameternya juga

Oleh: Erick Kurniawan, S.Kom, M.Kom
41
harus dituliskan seperti Di spl aySum( 2, 3) , ini berarti dbl Num1 diberi nilai 2 dan dbl Num2 diberi
nilai 3.

Contoh 6.2 Membuat Method untuk Menghitung Kepadatan Penduduk
1. Pada contoh program berikut akan dibuat sebuah aplikasi untuk menghitung jumlah kepadatan
penduduk berdasarkan luas area, dan populasinya
2. Buat windows application baru dengan nama Demographics
3. Property dan design form-nya sebagai berikut:
Object Property Value
frmDensities Text Demographics
btnDisplay Text Display Demographic
lstDensity


Gambar 6.2
4. Kemudian tuliskan kode programnya sebagai berikut:
publ i c par t i al cl ass f r mDensi t i es : For m
{
publ i c f r mDensi t i es( )
{
I ni t i al i zeComponent ( ) ;
}
/ / met hod unt uk menghi t ung kepadat an penduduk
publ i c voi d Cal cul at eDensi t y( st r i ng st r St at e, doubl e dbl Pop, doubl e
dbl Ar ea)
{
doubl e dbl RawDensi t y, dbl Densi t y;
dbl RawDensi t y = dbl Pop / dbl Ar ea;

/ / membul at kan sat u angka di bel akang koma
dbl Densi t y = Mat h. Round( dbl RawDensi t y, 1) ;
l st Densi t y. I t ems. Add( " Kepadat an penduduk dar i st at e " + st r St at e + "
adal ah " + dbl Densi t y) ;
l st Densi t y. I t ems. Add( " or ang per mi l e per segi ") ;
}

pr i vat e voi d bt nDi spl ay_Cl i ck( obj ect sender , Event Ar gs e)
{
l st Densi t y. I t ems. Cl ear ( ) ;
Cal cul at eDensi t y( " Hawai i ", 1257608, 6471) ;
l st Densi t y. I t ems. Add( " ") ;
Cal cul at eDensi t y( " Al aska", 648818, 591000) ;
}
}

Oleh: Erick Kurniawan, S.Kom, M.Kom
42
Pada contoh program 6.2 diatas method Cal cul at eDensi t y( ) memiliki tiga macam parameter
yang berbeda tipe datanya, yang pertama adalah st r St at e yang bertipe st r i ng, dan dbl Pop dan
dbl Ar ea yang bertipe doubl e. Method Cal cul at eDensi t y( ) digunakan untuk menghitung
kepadatan penduduk pada suatu daerah tertentu berdasarkan luas area (dbl Ar ea) dan jumlah
penduduknya (dbl Pop). Untuk memanggunakan method ini anda juga harus menginputkan nilai dari
ketiga parameternya Cal cul at eDensi t y( " Hawai i " , 1257608, 6471) .

Method Pass By Value dan Pass By Reference
Ada dua jenis parameter pada method yang sering digunakan pada pemrograman yaitu Pass By
Value dan Pass By Reference. Secara default parameter pada method adalah Pass By Value, jadi nilai
dari variabel yang dikirimkan melalui method, tidak direferensikan kembali ke variabel pemanggil
setelah method tersebut dijalankan. Adapun perbedaan penggunaan By Value dan By Reference akan
ditunjukan pada contoh 6.3 dibawah ini.

Contoh 6.3 Method Pass By Value dan Pass By Reference
1. Pada contoh program berikut akan dibuat aplikasi program untuk menghitung penjumlahan dari
dua bilangan, method parameter yang dibuat menggunakan Pass By Value dan Pass By
Reference agar dapat diketahui perbedaan dari pengguanaan kedua method parameter tersebut.
2. Buatlah aplikasi windows baru dengan nama AddTwoNumber
3. Property dan design formnya sebagai berikut
Object Property Value
frmAdd Text Add Two Number
txtFirstNum
txtSecondNum
btnCompute Text Compute Sum
txtResult ReadOnly True


Gambar 6.3
4. Kemudian tulis programnya sebagai berikut:
publ i c par t i al cl ass For m1 : For m
{
publ i c For m1( )
{
I ni t i al i zeComponent ( ) ;
}

publ i c voi d Get Number ( r ef doubl e dbl X, r ef doubl e dbl Y)
{
dbl X = Conver t . ToI nt 32( t xt Fi r st Num. Text ) ;
dbl Y = Conver t . ToI nt 32( t xt SecondNum. Text ) ;
}

Oleh: Erick Kurniawan, S.Kom, M.Kom
43

publ i c voi d Cal cul at eSum( doubl e dbl Num1, doubl e dbl Num2, r ef doubl e
dbl Tot al )
{
dbl Tot al = dbl Num1 + dbl Num2;
}

publ i c voi d Di spl ayResul t ( doubl e dbl Num1, doubl e dbl Num2, doubl e dbl Tot al )
{
t xt Resul t . Text = " J uml ah dar i " + dbl Num1 + " dan " + dbl Num2 + "
adal ah " + dbl Tot al ;
}

pr i vat e voi d bt nComput e_Cl i ck( obj ect sender , Event Ar gs e)
{
doubl e dbl X=0, dbl Y=0, dbl Tot al =0;
Get Number ( r ef dbl X, r ef dbl Y) ;
Cal cul at eSum( dbl X, dbl Y, r ef dbl Tot al ) ;
Di spl ayResul t ( dbl X, dbl Y, dbl Tot al ) ;
}
}

Pada contoh 6.3 diatas, method Get Number ( ) yang berfungsi untuk mengambil nilai dari
textbox, seperti dapat anda lihat method Get Number ( r ef dbl X, r ef dbl Y) mempunyai dua
parameter yang sifatnya pass by reference (ditandai dengan keyword r ef ). ketika pertama dipanggil
method Get Number ( ) melewatkan nilai dbl X, dan dbl Y yang awalnya diberi nilai 0, setelah method
Get Number ( ) dikerjakan maka nilai dari dbl X dan dbl Y diisi dengan nilai dari textbox, setelah itu
nilai tersebut dikembalikan ke pemanggil method sehingga nilai dbl X dan dbl Y yang ada pada method
bt n_Comput e_Cl i ck( ) sama dengan nilai yang ada pada textbox.
Demikian juga dengan method Cal cul at eSum( ) yang memiliki satu parameter reference yaitu
dbl Tot al , setelah method Cal cul at eSum( ) selesai dieksekusi maka nilai dari parameter dbl Tot al
dikembalikan ke method bt n_Comput e_Cl i ck( ) .

Local Variable
Pada saat anda mendeklarasikan variable di dalam sebuah method, maka variabel tersebut tidak
dapat diakses dari method yang lain karena variabel tersebut bersifat local atau hanya berlaku dalam
method dimana variabel tersebut didefinisikan, program dibawah ini akan menjelaskan penggunaan
local variabel dalam method.

Contoh 6.4 Penggunaan Local Variable
1. Buat aplikasi windows baru dengan nama LocalVariable
2. Kemudian tambahkan satu button dan satu listbox kedalam form
3. Ketikan kode dibawah ini:
publ i c par t i al cl ass For m1 : For m
{
publ i c For m1( )
{
I ni t i al i zeComponent ( ) ;
}

publ i c voi d Thr ee( )
{
doubl e num= 0;

Oleh: Erick Kurniawan, S.Kom, M.Kom
44
l st Resul t . I t ems. Add( num) ;
num= 3;
}

pr i vat e voi d bt nDi spl ay_Cl i ck( obj ect sender , Event Ar gs e)
{
Thr ee( ) ;
Thr ee( ) ;
}
}

Pada program diatas, dalam method Thr ee( ) didklarasikan variable num yang nilai awalnya
adalah 0, kemudian diakhir method variable numdirubah nilainya menjadi 3, tapi ketika method
Thr ee( ) dipanggil dari method yang lain yaitu method bt nDi spl ay_Cl i ck( ) sebanyak 2 kali,
variable numtetap bernilai 0 karena variable numhanya berlaku pada method Thr ee( ) saja (local
variable) dan tidak dapat diakses dari method yang lain seperti bt nDi spl ay_Cl i ck( ) .

Class-Level Variable
Jika anda ingin mendeklarasikan variable yang dapat diakses dari semua method yang ada, maka
anda dapat mendeklarasikannya di level Class (class-level-variable). Letak pendeklarasian variablenya
di dalam public class nya langsung, tidak berada dalam method tertentu.
Variable yang dideklarasikan didalam public classnya disebut class-level-scope sedangkan
variable yang dideklarasikan dalam method-nya disebut local-scope. Contoh program dibawah ini akan
menunjukan penggunaan class-level-scope variable dan local-scope variable.

Contoh 6.5 Penggunaan Class Level Variable
1. Buat aplikasi windows baru dengan nama ClassLevelVariable
2. Tambahkan satu button dan satu listbox kedalam form, sehingga design formnya menjadi:

Gambar 6.4
3. Kemudian ketikan kode berikut:
publ i c par t i al cl ass For m1 : For m
{
publ i c For m1( )
{
I ni t i al i zeComponent ( ) ;
}

/ / cl ass l evel scope
doubl e dbl Num1, dbl Num2;

Oleh: Erick Kurniawan, S.Kom, M.Kom
45

publ i c voi d AddAndI ncr ement ( )
{
l st Resul t . I t ems. Add( " Hasi l dar i " + dbl Num1 + " di t ambah dengan " +
dbl Num2 + " adal ah: " + ( dbl Num1 + dbl Num2) ) ;
dbl Num1 += 1;
dbl Num2 += 1;
}

pr i vat e voi d bt nDi spl ay_Cl i ck( obj ect sender , Event Ar gs e)
{
dbl Num1 = 2;
dbl Num2 = 3;
l st Resul t . I t ems. Cl ear ( ) ;
AddAndI ncr ement ( ) ;
l st Resul t . I t ems. Add( " ") ;
l st Resul t . I t ems. Add( " Number 1 = " + dbl Num1) ;
l st Resul t . I t ems. Add( " Number 2 = " + dbl Num2) ;
}
}

Dengan mendeklarasikan variable pada class-level seperti variable dbl Num1 dan dbl Num2 pada
contoh 6.5 diatas maka variabel tersebut dapat diaksed dari semua method dalam class tersebut.

Method Yang Mengembalikan Nilai
Pada contoh-contoh diatas method yang dibuat memiliki keyword void, ini berarti method yang
dibuat tidak mengembalikan nilai apapun, hanya menjalankan rutin tertentu saja. Selain method dengan
keyword void yang tidak mengembalikan nilai apapun ada juga method yang mengembalikan nilai
tertentu, method ini menggunakan keyword return untuk mengembalikan nilai ke pemanggilnya. Pada
contoh dibawah ini akan dibuat aplikasi dengan method yang mengembalikan nilai untuk
mengkonversi suhu dari farenheit ke celsius.

Contoh 6.6 Konversi Farenheit Ke Celsius
1. Buat aplikasi windows baru dengan nama FarToCelc
2. Adapun property dan design-nya sebagai berikut
Object Property Value
frmConvert Text Convert Farenheit to Celcius
btnConvert Text Convert to Celsius
txtFarenheit
txtCelsius ReadOnly true


Gambar 6.5
3. Kemudian tuliskan kode berikut ini:

Oleh: Erick Kurniawan, S.Kom, M.Kom
46
publ i c par t i al cl ass f r mConver t : For m
{
publ i c f r mConver t ( )
{
I ni t i al i zeComponent ( ) ;
}

/ / met hod mengembal i kan ni l ai ber t i pe doubl e
publ i c doubl e FToC( doubl e dbl T)
{
/ / mengembal i kan ni l ai
r et ur n Mat h. Round( ( 5. 0 / 9. 0) * ( dbl T - 32) , 2) ;
}

pr i vat e voi d bt nConver t _Cl i ck( obj ect sender , Event Ar gs e)
{
doubl e dbl Far Temp=0, dbl Cel cTemp=0;
dbl Far Temp = Conver t . ToDoubl e( t xt Far enhei t . Text ) ;
/ / memanggi l f ungsi unt uk konver si dar i f ar enhei t ke cel si us
dbl Cel cTemp = FToC( dbl Far Temp) ;
t xt Cel si us. Text = dbl Cel cTemp. ToSt r i ng( ) ;
}
}

Pada contoh program 6.6 mempunyai method dengan nama FToC( ) yang mengembalikan nilai
bertipe doubl e, method yang mengembalikan nilai memiliki keyword r et ur n.

Contoh 6.7 Method untuk Mendeteksi First Name
1. Pada contoh program berikut akan dibuat aplikasi untuk mendeteksi nama pertama dari nama
lengkap yang diinputkan.
2. Buat aplikasi windows dengan nama FirstName
3. Property dan design formnya sebagai berikut

Object Property Value
frmFirstName Text Extract First Name
txtFullName
btnDetermine Text Determine First Name
txtFirstName ReadOnly true


Gambar 6.6

publ i c par t i al cl ass f r mFi r st Name : For m
{
publ i c f r mFi r st Name( )
{

Oleh: Erick Kurniawan, S.Kom, M.Kom
47
I ni t i al i zeComponent ( ) ;
}

publ i c st r i ng Fi r st Name( st r i ng st r Name)
{
i nt i nt Fi r st Space;
i nt Fi r st Space = st r Name. I ndexOf ( " ") ;
r et ur n st r Name. Subst r i ng( 0, i nt Fi r st Space) ;
}

pr i vat e voi d bt nDet er mi ne_Cl i ck( obj ect sender , Event Ar gs e)
{
st r i ng st r Name;
st r Name = t xt Ful l Name. Text ;
t xt Fi r st Name. Text = Fi r st Name( st r Name) ;
}
}

Constoh 6.8 Menghitung Deposito
1. Pada contoh program berikut akan dibuat aplikasi untuk menghitung deposito berdasarkan
banyak deposit, bunga per tahun, lama penyimpanan deposito, compound interest / bunga
majemuk per tahunnya.
2. Buat aplikasi windows baru dengan nama BankDeposit
3. Property dan design formnya sebagai berikut:

Object Property Value
frmBank Text Bank Deposit
txtAmount
txtRate
txtNumComp
txtNumYrs
btnCompute Text Compute Balance
txtBalance ReadOnly True


Gambar 6.7
4. Kemudian ketikan kodenya sebagai berikut:
publ i c par t i al cl ass f r mBank : For m
{

Oleh: Erick Kurniawan, S.Kom, M.Kom
48
publ i c f r mBank( )
{
I ni t i al i zeComponent ( ) ;
}

publ i c voi d I nput Dat a( r ef doubl e dbl P, r ef doubl e dbl R, r ef doubl e dbl C,
r ef doubl e dbl N)
{
dbl P = Conver t . ToDoubl e( t xt Amount . Text ) ;
dbl R = Conver t . ToDoubl e( t xt Rat e. Text ) ;
dbl C = Conver t . ToDoubl e( t xt NumComp. Text ) ;
dbl N = Conver t . ToDoubl e( t xt NumYr s. Text ) ;
}

publ i c voi d Di spl ayBal ance( doubl e dbl P, doubl e dbl R, doubl e dbl C, doubl e dbl N)
{
doubl e dbl Bal ance;
dbl Bal ance = Fut ur eVal ue( dbl P, dbl R, dbl C, dbl N) ;
/ / f or mat cur r ency
t xt Bal ance. Text = St r i ng. For mat ( " {0: C}", dbl Bal ance) ;
}

/ * Menemukan f ut ur e val ue dar i bank savi ngs account
p pr i nci pal , t he amount deposi t ed / j uml ah t abungan
r annual r at e of i nt er est / bunga t ahunan
c number of t i mes i nt er est i s compounded per year / bunga maj emuk
n number of year s / l ama si mpanan dal amt ahun */

publ i c doubl e Fut ur eVal ue( doubl e dbl P, doubl e dbl R, doubl e dbl C, doubl e dbl N)
{
doubl e dbl I ; / / bunga r at a- r at a per per i ode / i nt er est r at e per per i od
doubl e dbl M; / / t ot al number of t i mes i nt er est i s compounded
dbl I = dbl R / dbl C;
dbl M = dbl C * dbl N;
/ / Mat h. Pow( ) unt uk pangkat
r et ur n dbl P * Mat h. Pow( 1 + dbl I , dbl M) ;
}

pr i vat e voi d bt nComput e_Cl i ck( obj ect sender , Event Ar gs e)
{
doubl e dbl P = 0, dbl R = 0, dbl C = 0, dbl N = 0;
I nput Dat a( r ef dbl P, r ef dbl R, r ef dbl C, r ef dbl N) ;
Di spl ayBal ance( dbl P, dbl R, dbl C, dbl N) ;
}
}
5. Hasilnya setelah dijalankan dapat dilihat pada tampilan dibawah ini:

Oleh: Erick Kurniawan, S.Kom, M.Kom
49

Gambar 6.8

Pada contoh program 6.8 memiliki dua macam method, yang mengembalikan nilai
Fut ur eVal ue( ) dan yang tidak mengembalikan nilai I nput Dat a( ) dan Di spl ayBal ance( ) .
Method yang digunakan juga memiliki parameter yang pass by reference dan pass by value.






























Oleh: Erick Kurniawan, S.Kom, M.Kom
50
BAB 7
ARRAY


Dalam programming selama ini anda menggunakan satu variabel untuk menyimpan satu buah
nilai dengan tipe data tertentu, misalnya:
doubl e a1, a2, a3, a4, a5;
Deklarasi variabel diatas digunakan untuk menyimpan 5 data bertipe double dimana masing-
masing variabel diberi nama a1, a2, a3, a4, dan a5. Tetapi bayangkan jika anda ingin menyimpan
seratus, seribu data atau mungkin jumlah datanya bersifat dinamis / tidak pasti yang semuanya bertipe
double, apakah harus mendeklarasikan seratus atau seribu variabel dengan nama yang berbeda?
Solusinya adalah anda harus menggunakan Array.

Definisi Array
Array adalah group atau kumpulan dari variabel (yang disebut elemen) yang mengandung nilai
dengan tipe yang sama dan mempunyai nama tertentu. Elemen-elemen array tersusun secara sequensial
didalam memory sehingga memiliki alamat yang berdekatan. Elemen-elemen dalam array memiliki
tipe data yang sama namun bisa bernilai sama atau berbeda. Array dapat berupa array 1 dimensi, 2
dimensi, bahkan n-dimensi.

Adapun cara pengaksesan elemen dalam array adalah sebagai berikut:
Elemen-elemen array dapat diakses oleh program menggunkan suatu indeks tertentu.
Pengaksesan elemen array dapat dilakukan berurutan atau random berdasarkan indeks tertentu
secara langsung.
Pengisian dan pengambilan nilai pada indeks tertentu dapat dilakukan dengan mengeset nilai
atau menampilkan nilai pada indeks yang dimaksud.

Deklarasi array 1 dimesi dalam C# dapat dituliskan sebagai berikut:
t i pe_dat a nama_var _ar r ay[ ukur an] ;
tipe_data : menyatakan jenis tipe data elemen array (int, double, char, string, dll).
nama_var_array : menyatakan nama variabel array yang digunakan.
ukuran : menunjukan jumlah maksimal elemen array.
Contoh :
i nt [ ] c;
c = new i nt [ 8] ;
doubl e[ ] d = new doubl e[ 8] ;
i nt [ ] ar r = { 31, 23, 45, 32, 12, 34, 23 };
i nt [ ] c; statement ini artinya anda mendeklarasikan array dengan nama c dan tipe datanya
adalah integer.
c = new i nt [ 8] ; setelah mendeklarasikan variabel diatas, statement yang kedua adalah
memesan tempat di memory komputer sebanyak 8 tempat (indeks 0-7) yang semua tipenya
adalah integer.

Oleh: Erick Kurniawan, S.Kom, M.Kom
51
doubl e[ ] d = new doubl e[ 8] ; ini adalah cara lain untuk pendeklarasian array langsung
dengan inisialisasi banyak elemen array yang akan dibuat.
int[] arr = { 31, 23, 45, 32, 12, 34, 23 }; statement ini juga merupakan cara lain untuk
mendeklarasikan array dengan cara langsung mengisikan elemen arraynya dengan nilai tertentu.
Pada array 1 dimensi tanda [] disebut juga elemen yang ke misal arr[0] berarti elemen
dari array arr yang ke-0.
Array yang sudah dipesan, misal 8 tempat tidak harus diisi semuanya, bisa saja hanya diisi 4
elemen saja baik secara berurutan maupun tidak. Namun pada kondisi yang tidak sepenuhnya
terisi tersebut, tempat pemesanan di memory tetap sebanyak 8 tempat, jadi tempat yang tidak
terisi tetap terpesan dan dibiarkan kosong.

Listing 7.1 Deklarasi Array
1. Buat windows form baru dengan nama Dekl ar asi Ar r ay
2. Kemudian masukan sebuah button dan sebuah listbox pada form, ubah property name pada
button menjadi btnTampil, kemudian double-click pada button untuk menambahkan kode
berikut:
pr i vat e voi d bt nTampi l _Cl i ck( obj ect sender , Event Ar gs e)
{
i nt [ ] ar r ;
ar r = new i nt [ 4] ;
ar r [ 0] = 23;
ar r [ 1] = 20;
ar r [ 2] = 54;
ar r [ 3] = 10;
l i st Box1. I t ems. Add( " I ndex\ t Val ue") ;
f or ( i nt x = 0; x < ar r . Lengt h; x++)
{
l i st Box1. I t ems. Add( x + " \ t " + ar r [ x] ) ;
}
}

Listing 7.2 I nisialisasi Array secara langsung
1. Buat windows form baru dengan nama I ni si al i sasi Ar r ay
2. Kemudian masukan sebuah button dan sebuah listbox pada form, ubah property name pada
button menjadi btnTampil, kemudian double-click pada button untuk menambahkan kode
berikut:
pr i vat e voi d bt nTampi l _Cl i ck( obj ect sender , Event Ar gs e)
{
i nt [ ] ar r = { 12, 34, 56, 78, 32, 45, 78, 97, 43, 23, 12, 23 };
l i st Box1. I t ems. Add( " I ndex\ t Val ue") ;
f or ( i nt x = 0; x < ar r . Lengt h; x++)
{
l i st Box1. I t ems. Add( x+" \ t "+ar r [ x] ) ;
}
}

Listing 7.3 Menghitung Sum dari Elemen Array
1. Buat windows form baru dengan nama SumEl emenAr r ay
2. Kemudian masukan sebuah button dan sebuah listbox pada form, ubah property name pada
button menjadi btnTampil, kemudian double-click pada button untuk menambahkan kode
berikut:

Oleh: Erick Kurniawan, S.Kom, M.Kom
52
pr i vat e voi d bt nTampi l _Cl i ck( obj ect sender , Event Ar gs e)
{
i nt [ ] i nt Ar r = { 87, 68, 94, 100, 83, 78, 85, 91, 76, 87 };
i nt i nt Tot al = 0;
l i st Box1. I t ems. Add( " I ndex\ t Val ue") ;
f or ( i nt x = 0; x < i nt Ar r . Lengt h; x++)
{
l i st Box1. I t ems. Add( x + " \ t " + i nt Ar r [ x] ) ;
i nt Tot al += i nt Ar r [ x] ;
}
l i st Box1. I t ems. Add( " Tot al \ t " + i nt Tot al ) ;
}

Listing 7.4 Menampilkan Statistik
1. Buat windows form baru dengan nama Tampi l Bi nt ang
2. Kemudian masukan sebuah button dan sebuah listbox pada form, ubah property name pada
button menjadi btnTampil, kemudian double-click pada button untuk menambahkan kode
berikut:
pr i vat e voi d bt nTampi l _Cl i ck( obj ect sender , Event Ar gs e)
{
i nt [ ] ar r = { 0, 0, 0, 0, 0, 0, 1, 2, 4, 2, 1 };
st r i ng st r Tampi l =" ";
l i st Box1. I t ems. Add( " Di st r i busi Ni l ai : ") ;
f or ( i nt x = 0; x < ar r . Lengt h; x++)
{
i f ( x == 10)
st r Tampi l = " 100 : ";
el se
st r Tampi l = Conver t . ToSt r i ng( x * 10) + " - " +
Conver t . ToSt r i ng( x * 10 + 9) + " : ";
f or ( i nt y = 0; y < ar r [ x] ; y++)
st r Tampi l += " *";

l i st Box1. I t ems. Add( st r Tampi l ) ;
st r Tampi l = " ";
}
}

Anda mungkin juga menyukai