Dasar-dasar C#
Dasar-Dasar C# A. Berkenalan dengan C# Dari awal dikembangkannya, C# (baca: C Sharp) memang diposisikan untuk bersaing dengan Java, terutama dari sisi keunggulan Java yang menggunakan object oriented programming (OOP) atau pemrograman berorientasi objek. Sebelum membuat C#, Microsoft mengembangkan Microsoft Visual J++. Akan tetapi karena bermasalah soal legalitas dengan Sun Microsystem (pemilik legal dari Java), maka proyek J++ pun dihentikan. Microsoft pun beralih pada pengembangan C#, baik kompiler maupun mesin virtualnya. Microsoft, menunjuk Anders Helsberg sebagai pimpinan proyek ini. Helsberg sendiri adalah mantan karyawan Borland yang membuat bahasa Turbo Pascal, dan Borland Delphi, dia juga ikut menrancang Windows Foundation Classes (WFC) yang digunakan di dalam J++. C# pertama kali diperkenalkan pada bulan Juli 2000 sebagai sebuah bahasa pemrograman modern berorientasi objek yang menjadi sebuah bahasa pemrograman utama untuk pengembangan di dalam platform Microsoft .NET Framework. Mengenai penamaan C# itu sendiri, jika kita lihat lebih teliti simbol # adalah rangkaian empat buah simbol + yang dirangkai sedemikian rupa, hal ini melambangkan bahwa C# adalah bahasa yang lebih tinggi dibandingkan C yang tidak memiliki simbol +, maupun C++ yang hanya memiliki simbol + sebanyak dua buah. Selain itu, jika mengambil analogi notasi musik, nada yang diberi tanda # (kres) akan berbunyi lebih tinggi daripada nada awalnya. Demikian pula dengan C# adalah bahasa pemrograman yang lebih tinggi dari C. B. Tipe Data dan Variabel B.1. Tipe Data Agar bahasa pemrograman yang kita gunakan bisa memproses data dengan benar maka kita harus terlebih dahulu menentukan termasuk ke dalam jenis apakah data tersebut. Secara umum tipe data terbagi atas empat kelompok: a. Tipe Bilangan Bulat Yang termasuk ke dalam tipe ini adalah semua data yang berbentuk bilangan bulat (tidak mengandung tanda koma), baik itu bilangan positif ataupun bilangan negatif. Pada Tabel 1, bisa dilihat apa saja tipe data yang tergolong tipe bilangan bulat.
1
[email protected]
Dasar-dasar C# b. Tipe Bilangan Pecahan Yang termasuk ke dalam tipe ini adalah semua data yang berbentuk bilangan pecahan (mengandung tanda koma). Pada Tabel 2, bisa dilihat apa saja tipe data yang tergolong tipe bilangan pecahan.
c. Tipe Karakter dan String Yang termasuk ke dalam tipe ini adalah semua data yang berupa satu buah karakter maupun gabungan dari karakter-karakter. Gabungan dari karakterkarakter inilah yang disebut dengan String. d. Tipe Logika (Boolean) Tipe data ini hanya memiliki dua buah nilai yaitu true (benar) dan false (salah). B.2. Variabel Variabel bisa diartikan sebagai tempat untuk menyimpan data yang akan diproses oleh program. Data yang tersimpan pada variabel hanya bersifat sementara saja. Selama ada aliran listrik ke komputer atau program yang bersangkutan belum ditutup maka data akan tetap ada di dalam variabel. Untuk penamaan variabel sendiri ada aturan-aturan yang harus diperhatikan, sebagai berikut. 1. Nama variabel tidak boleh diawali oleh angka, ataupun angka semua. 2. Nama variabel tidak boleh menggunakan spasi. 3. Nama variabel tidak boleh menggunakan simbol-simbol, seperti /, #, ?, dan lain-lain. 4. Nama variabel tidak boleh menggunakan keyword atau kata kunci khusus yang telah digunakan / didefinisikan oleh bahasa pemrograman yang bersangkutan. 5. Nama variabel sebaiknya mudah diingat dan dipahami. Sebaiknya tidak terlalu panjang, akan tetapi jika nama yang panjang lebih baik daripada berusaha untuk menyingkatnya tapi justru susah untuk diingat dan dipahami, maka apa salahnya jika gunakan nama variabel yang panjang. C. Operator C.1. Operator Aritmatika Biasanya digunakan dalam proses penghitungan matematika.
C.2. Operator Relasional Digunakan untuk menentukan hubungan atas dua buah nilai. Hasil atau kembaliannya berupa true atau false.
2
[email protected]
Dasar-dasar C#
C.3. Operator Logika Digunakan untuk menentukan apakah status dari kedua kondisi yang telah ditetapkan memenuhi syarat yang diingikan. Hasil atau kembaliannya berupa true atau false.
C.4. Operator Assignment Digunakan untuk memasukan nilai ke dalam suatu variabel. Simbol yang digunakan adalah = (sama dengan satu kali).
3
[email protected]
Dasar-dasar C#
C.5. Operator Increment dan Decrement Digunakan untuk menambah atau mengurangi nilai sebanyak 1 angka. Biasanya operator ini digunakan pada proses perulangan.
D. Statement D.1. Statement Pemilihan Digunakan dalam proses untuk menentukan apakah kondisi tertentu telah terpenuhi untuk dapat melanjutkan proses tertentu juga. a. IF Contoh penggunaan statement IF adalah :
b. IF ELSE Contoh penggunaan statement IF ELSE adalah :
Keterangan: - Baris 1: karena setiap input yang diperoleh dari TextBox, Label, ComboBox, dan lain-lain itu masih memiliki tipe data String maka harus diubah dulu ke tipe data yang sesuai denga variabel penampungnya.
4
[email protected]
Dasar-dasar C# - Hasil: misal yang diinput 5, maka akan tampil MessageBox yang kedua. c. IF ELSE IF Contoh penggunaan statement IF ELSE IF adalah :
Keterangan: - Hasil: karena yang diinput 5, maka akan tampil MessageBox yang kedua. d. SWITCH Biasanya digunakan pada pemilihan yang memiliki nilai pasti. Contoh penggunaan statement SWITCH adalah :
5
[email protected]
Dasar-dasar C#
Keterangan: - Hasil: jika yang dipilih (pada comboBox1) adalah Red, maka MessageBox yang keluar adalah yang ada pada baris 5. - Baris 4-12: membandingkan apakah nilai variabel warnaFavorit sama dengan yang ada pada masing-masing case. Jika sama maka jalankan perintah di bawahnya, yaitu menampilkan MessageBox yang berisikan warna favorit yang dipilih. Pada setiap akhir statement pemilihan ditambahkan perintah break; - Baris13-15: baris perintah default ini harus selalu disertakan, karena jika pada baris di atasnya tidak ada kondisi yang terpenuhi, maka baris inilah yang akan dieksekusi. D.2. Statement Perulangan Sering juga disebut iterasi atau looping. Digunakan jika ada proses yang akan dikerjakan berulangulang. a. FOR Contoh penggunaan statement FOR adalah : Menentukan berapa banyak jumlah bilangan genap dalam range angka 1-10.
Keterangan: - Hasil: 5 (yaitu, 2, 4, 6, 8, 10). - Baris 1: mendefinisikan empat buah variabel: i, jmlBilGenap, temp, angka. - Baris 2: menyiapkan nilai awal proses looping (i=0;), lalu nilai batas akhir looping (i<10;), dan terakhir seberapa besar nilai i bertambah setiap proses looping (i++). Jadi proses perulangan akan dimulai dari 0 sampai 9, dan karena penambahan i hanya sebesar 1 poin, berarti proses looping yang terjadi adalah sebanyak 10 kali. - Baris 3 dan 7: tanda awal ( { ) dan tanda akhir ( } ) proses yang akan diulang. - Baris 4, 5, dan 6: statement yang akan dieksekusi sebanyak 10 kali. - Baris 4: nilai pada variabel angka dimodulus (sisa bagi) dengan 2, lalu simpan ke variabel temp.
6
[email protected]
Dasar-dasar C# - Baris 5: menambah isi variabel angka sebanyak 1 poin. - Baris 6: periksa apakah nilai / isi dari variabel temp sama dengan 0,jika true, tambah nilai pada variabel jmlBilGenap sebanyak 1 poin. - Baris 8: tampilkan MessageBox yang menampilkan hasil dari proses perulangan sebelumnya, yaitu isi dari variabel jmlBilGenap. b. WHILE Biasanya digunakan untuk melakukan proses perulangan apabila jumlah perulangannya tidak diketahui. Contoh penggunaan statement WHILE adalah :
Keterangan: - Baris 3: mendefinisikan variabel boolean berhenti, sebagai parameter apakah proses looping akan berhenti atau tidak. - Baris 4: proses looping akan terus berlangsung selama variabel berhenti masih bernilai false. - Baris 6: periksa apakah isi variabel usiaBertambah sama dengan isi dari variabel usiaAnda. - Baris 7: jika true, hentikan proses perulangan dengan cara set nilai variable berhenti menjadi true; - Baris 9: jika false, tambah satu poin pada variabel usiaBertambah. - Baris 10: variabel yang akan menghitung berapa kali proses perulangan terjadi. - Baris 12: jika proses looping selesai, tampilkan pesan yang berisi berapa banyak proses looping yang terjadi, yang dicatat oleh variable jmlProsesUlang. c. DO - WHILE Berbeda dengan statement While, statement ini pasti akan mengeksekusi baris perintah yang akan diulang paling tidak sebanyak satu kali. Karena pada statement ini, pemeriksaan kondisi/parameter, apakah program akan terus diulang atau tidak, dilakukan pada bagian akhir statement. Contoh penggunaan statement DO - WHILE adalah :
7
[email protected]
Dasar-dasar C#
Keterangan: - Baris 4 dan 5: memberitahu compiler akan ada baris perintah yang diulang, dimulai dari tanda kurawal buka ( { ). - Baris 6-10: baris perintah yang akan diulang. - Baris 11: tanda kurawal tutup ( } ), tanda akhir program yang diulang. - Baris 12: pengecekan paramater, apakah program masih boleh untuk diulang atau tidak. E. Array Array atau larik adalah variabel yang digunakan untuk mengelompokkan data yang sama, baik yang memiliki tipe data sama maupun yang memiliki arti yang sama. Contoh, data nama-nama hari, tipe data yang dimiliki samasama String dan arti dari datanya itu sendiri sama-sama menrepresentasikan nama-nama hari yang ada. Contoh penggunaan Array adalah :
Keterangan Program:
8
[email protected]
Dasar-dasar C# - Baris 1 contoh 1: membuat array baru dengan nama namaHari, memiliki tipe data String, dan langsung mendefinisikan isi dari array tersebut. - Baris 2 contoh 1: menampilkan isi array yang berada pada indeks 3. - Baris 1 contoh 2: membuat array baru dengan nama namaHari, memiliki tipe data String, dengan panjang array / jumlah indeks sebanyak 7. - Baris 2-8 contoh 2: memasukkan nilai ke dalam array sesuai indeks masing-masing, 0-6.
F. Membuat Program Pertama F.1. Membuka Program Microsoft Visual C# 2005/2008/2010 Sebelum kita memulai untuk membuat program pertama kita, ada baiknya jika kita lihat dahulu bagaimana cara untuk membuka program Microsoft Visual C# 2005. Program ini berada dalam paket instalasi Microsoft Visual Studio 2005. Berikut langkah-langkahnya. 1. Klik tombol Start , pada Windows Taskbar, kemudian pilih All Programs > Microsoft Visual Studio 2005 > Microsoft Visual Studio 2005, lihat Gambar 1.
9
[email protected]
Dasar-dasar C#
F.2. Membuat Project Baru Selanjutnya kita akan belajar bagaimana cara untuk membuat project baru. Berikut langkahlangkahnya. 1. Pada Start Page ini kita akan membuat project baru, caranya adalah sebagai berikut. Klik Project... yang berada disamping tulisan Create. Seperti pada gambar di bawah ini.
2. Lalu akan tampil kotak dialog New Project. Pada Project types: klik Visual C# lalu pilih Windows. Kemudian bagian Templates: pilih Windows Application. Setelah itu klik tombol Browse.. . Lihat gambar di bawah ini.
10
[email protected]
Dasar-dasar C#
3. Akan muncul kotak dialog Project Location. Pilih lokasi penyimpanan file project Anda, klik tombol Create New Folder, isikan nama foldernya (saya menggunakan nama ‘e-Trik_1’). Tekan OK, akan otomatis masuk ke folder baru tersebut, lalu tekan tombol Open. Lihat Gambar 5.
4. Setelah itu tampilan akan kembali lagi ke kotak dialog New Project, kotak dialog seperti yang ada di Gambar 4. 5. Pada bagian Name:, isi dengan nama project Anda, untuk tahap ini nama project-nya lebih baik disamakan dulu dengan penulis untuk menghindari adanya kebingungan yang mungkin timbul nantinya. Nama project-nya, yaitu menghitungPointSepakBola, perhatikan cara penulisannya, besarkecil hurufnya, dan harus tanpa spasi. 6. Pastikan checkbox Create directory for solution dicentang, lalu tekan tombol OK. Lihat Gambar 6 untuk langkah 5 dan 6.
11
[email protected]
Dasar-dasar C# 7. Selanjutnya kita akan dibawa ke area kerja (workspace). Disinilah kita akan melakukan berbagai aktivitas kita, mulai dari mendesain tata letak objek, coding, hingga debugging program. Lihat Gambar 7.
F.3. Membuat Program Pada bagian ini kita akan mulai belajar bagaimana cara untuk membuat program kita sendiri. Berikut deskripsi program yang akan kita buat. • Program berguna untuk menghitung poin yang diterima sebuah klub sepakbola. • Nilai yang diinput oleh user adalah, jumlah kemenangan, jumlah kekalahan, dan jumlah hasil seri yang dialami oleh klub tersebut. • Program juga akan memutuskan apakah klub bersangkutan berada di peringkat utama atau kedua. • Dengan kondisi, jika poin-nya lebih besar dari 50, maka berada di peringkat 1. Sedangkan, jika poin-nya sama dengan atau lebih kecil dari 50, maka berada di peringkat 2. • Tampilan hasil akhir program yang akan kita buat nanti adalah seperti pada Gambar 8.
Langkah-langkah membuat tampilan program tersebut adalah sebagai berikut: 1. File project yang kita gunakan adalah yang sebelumnya kita menghitungPointSepakBola.
12
[email protected]
buat,
yaitu
Dasar-dasar C# 2. Jika Anda sudah menutup project-nya, Anda bisa membukanya dengan cara. Klik File > Open > Project/Solution..., lalu cari file project yang tadi kita buat. 3. Setelah itu, pada ToolBox, bagian Common Controls, anda klik komponen Label, lalu drag ke Form1 (Gambar 9). Mengenai letaknya sembarang saja dulu, karena nanti kita akan mengaturnya melalui Properties.
4. Masukkan lagi 7 buah Label, 5 buah TextBox , 3 buah Button , atur tata letaknya kira-kira seperti Gambar 10.
5. Setelah itu, kita akan mengatur Properties dari masing-masing komponen. Caranya adalah, jika Panel Properties yang berada di sebelah kanan layar monitor (Panel Properties seperti yang ada pada Gambar 7), di bawah Solution Explorer belum tampil. Maka, klik kanan pada salah satu komponen, misalkan Label1. Lalu pilih Properties. 6. Ubah Value (nilai) dari Properties Text dengan kata ‘Main’ (Gambar 11). 7. Lalu ubah juga Properties Location, dengan nilai (lihat Gambar 12). 8. Lalu ubah nilai Properties Font, dengan cara klik (lihat Gambar 13). Maka akan tampil kotak dialog Font. Pada bagian Font Style, pilih Bold, tekan OK (lihat Gambar 14).
13
[email protected]
Dasar-dasar C#
9. Untuk langkah selanjutnya, kita akan mengubah semua nilai properties pada masing-masing objek yang ada pada Form1, termasuk Form1 itu sendiri. Untuk mengetahui objek dan properties yang mana yang akan diubah, dan apa nilainya, silahkan Anda lihat pada Tabel 8.
14
[email protected]
Dasar-dasar C#
15
[email protected]
Dasar-dasar C#
16
[email protected]
Dasar-dasar C#
Sampai disini kita telah selesai mengerjakan tahap yang disebut pembuatan User Interface atau antarmuka pengguna. Program yang kita buat ini sudah bisa dijalankan, coba Anda tombol F5 pada keyboard. Akan tetapi belum bisa berinteraksi dengan user atau pengguna, maka dari itu kita perlu melakukan tahap yang disebut coding atau pengkodean. Langkah-langkah melakukan pengkodean program adalah sebagai berikut: 1. Klik ganda pada komponen txtMenang, ketikkan kode yang berwarna merah seperti dibawah ini
17
[email protected]
Dasar-dasar C#
Keterangan Program: - Baris 1, 2, dan 4: akan tercipta dengan sendirinya begitu kita melakukan klik ganda pada komponen txtMenang tadi. Jadi tidak perlu diketik lagi. - Baris 1: txtMenang_TextChanged adalah nama komponen (txtMenang) dan nama event-nya (TextChanged). - Event adalah trigger yang akan memicu baris kode di dalamnya untuk dijalankan. Biasanya event dipicu oleh interaksi pengguna dengan program yang kita buat. - Pada event untuk komponen txtMenang ini, baris kode akan dijalankan jika pada komponen txtMenang terjadi perubahan teks atau isinya. - Baris 3: berguna untuk memanggil method HitungJumlahMain(), method ini sendiri nanti akan kita buat. 2. Kembali lagi ke form design, dengan cara klik tab pada bagian atas yang bertuliskan Form1.cs [Design]. 3. Setelah itu, lalukan cara yang sama seperti pada langkah 1, untuk komponen txtSeri dan txtKalah. Sehingga hasilnya nanti seperti ini.
4. Kembali lagi ke form design dengan cara yang sama seperti pada langkah 2. 5. Lalu klik ganda pada komponen cmdHitung untuk masuk kembali ke editor kode, dan ketikkan kode berikut.
18
[email protected]
Dasar-dasar C#
Keterangan Program: - Baris 1 dan 2: mendeklarasikan tujuh buah variabel bertipe data Integer. - Baris 5: mengambil isi dari komponen txtMenang, dan karena datanya bertipe String maka harus dikonversi dulu ke tipe Integer. Setelah itu masukkan hasilnya ke variabel jmlMenang. - Baris 6 dan 7: sama dengan baris 6. Untuk setiap data dari komponen TextBox, Label, ComboBox, dll, tipe datanya adalah String. Maka jika variabel penampungnya bukan String juga, harus dikonversi ke tipe data yang sesuai. - Baris 8, 10, 12: adalah baris komentar. Komentar tidak akan diparsing oleh bahasa pemrograman, jadi tidak akan berpengaruh dengan program yang kita buat. - Dalam membuat program biasakanlah untuk memberikan komentar seperlunya, hal ini sangat berguna untuk mengingatkan kita, misalnya, apa maksud dan guna dari kode ini, variabel ini berguna untuk program yang mana, dan lain-lain. - Baris 9: menghitung jumlah poin yang diperoleh untuk kemenangan (jmlPoinMenang), dengan rumus banyaknya kemenangan yang diraih (jmlMenang) dikalikan dengan 3. - Baris 11: menghitung jumlah poin yang diperoleh untuk hasil seri (jmlPoinSeri), dengan rumus banyaknya hasil seri yang diraih (jmlSeri) dikalikan dengan 1. - Baris 13: menghitung jumlah poin yang diperoleh untuk kekalahan (jmlPoinKalah), dengan rumus banyaknya kekalahan yang diraih (jmlKalah) dikalikan dengan 0. Sebetulnya baris kode ini bisa diganti dengan jmlPoinKalah = 0, karena bagaimanapun juga, hasil dari perhitungan ini akan tetap menghasilkan nilai 0 (nol). - Baris 14: menjumlahkan hasil dari proses pada baris 11, 14, dan 17, lalu hasilnya disimpan ke variabel jmlPoint. - Baris 15: menampilkan isi variabel jmlPoint, melalui komponen txtPoint. Akan tetapi, sebelumnya harus dikonversi dulu ke tipe String (ToString()). - Baris 16: menentukan klub kita ada diperingkat berapa berdasarkan jmlPoint, dengan menggunakan method TentukanPeringkatKlub().
19
[email protected]
Dasar-dasar C#
Lalu hasilnya akan ditampilkan melalui lblPeringkatKlub. 6. Klik ganda cmdReset, ketikkan kode berwarna merah berikut ini.
Keterangan Program: - Kode ini berguna untuk me-reset atau mengembalikan kondisi tampilan seolah-olah seperti program baru dijalankan. - Baris 3-7: mengisi masing-masing komponen dengan angka 0. Karena angka 0 bukan bertipe string jadi harus dikonversi dulu ke tipe String, dengan menggunakan perintah Convert.ToString() . - Sebenarnya untuk baris 3-7 bisa saja kodenya diganti dengan, missal txtMain.Text = “0”; . Akan tetapi yang harus diingat, meskipun jumlah karakternya hanya 1 (yaitu 0), akan tetapi jangan dianggap sebagai karakter dan ditulis dengan petik satu ( ‘0’ ), karena akan menyebabkan program error. - Baris 8: mengisi komponen lblPeringkatKlub dengan simbol ? . 7. Klik ganda cmdKeluar, ketikkan kode berikut ini.
Keterangan Program: - Kode ini berguna untuk keluar dari program. - Baris 3: this, maksudnya Form1. Close(), adalah method untuk menutup program 8. Selanjutnya kita akan membuat method kita sendiri, yaitu method dengan nama HitungJumlahMain(). Ketikkan kode yang berwarna merah berikut dibawah kode sebelumnya tadi. Lihat kode dibawah ini.
20
[email protected]
Dasar-dasar C#
Keterangan Program: - Baris 1 dan 2: potongan kode program langkah 7, untuk menunjukkan dimana posisi kita mulai mengetikkan kode langkah 8. - Baris 4: karena method ini tidak punya nilai kembalian (return value), jadi bertipekan void. - Baris 7-14: adalah salah satu kelebihan yang dimiliki oleh C#, yaitu perangkap kesalahan (exception handling). - Baris 7-10: mencoba (try) untuk mengkonversi isi dari variabel txtMenang ke tipe data Integer. Jika ada kesalahan (error), misalnya, txtMenang masih kosong, atau diinput yang bukan angka. Maka program akan menjalankan baris kode di dalam catch, yaitu men-set isi komponen txtMenang dengan angka 0 (nol).
21
[email protected]
Dasar-dasar C# - Baris 31: menjumlahkan variabel jmlMenang, jmlSeri, jmlKalah, hasilnya simpan ke variabel jmlMain. - Baris 35: tampilkan isi variabel jmlMain, ke dalam komponen txtMain, setelah sebelumnya (lagilagi) dikonversi ke tipe data String. 9. Dan untuk yang terakhir, kita akan membuat method dengan nama TentukanPeringkatKlub(). Ketikkan kode berikut ini.
Keterangan Program: - Baris 2: berbeda dengan method yang pertama kita buat (langkah 7), method kali ini memiliki parameter, yaitu variabel int jumlahPoin. Selain itu karena tipe data yang akan dikembalikan adalah Integer, maka method ini pun harus bertipe Integer (private int TentukanPeringkatKlub()). - Baris 4-7: periksa apakah nilai yang ada pada variabel jumlahPoin, bernilai lebih besar dari 50. Jika iya, maka nilai kembalian (return value)-nya adalah 1. - Baris 8-11: jika tidak, maka nilai kembalian (return value)-nya adalah 2. - Coba Anda lihat lagi penggunaan method ini pada langkah 5 (untuk komponen cmdHitung). lblPeringkatKlub.Text = TentukanPeringkatKlub(jmlPoint).ToString(); Jadi, apabila jmlPoint, misalkan bernilai 65, maka yang akan tampil pada komponen lblPeringkatKlub adalah angka 1. Karena 65 lebih besar dari 50, dan nilai kembaliannya adalah 1. 10. Setelah itu tekan tombol F6, untuk melakukan Build Solution. Jika ada error, coba Anda teliti lagi apakah ada kode yang terlewat atau salah dalam pengetikannya. Jika tidak ada error, tekan tombol F5. Maka program akan dijalankan. Dan tahap terakhir dalam pembuatan program adalah tahap yang disebut testing atau ujicoba program. Langkah-langkah melakukan ujicoba program adalah sebagai berikut: 1. Setelah program dijalankan, isi Menang dengan angka 25 (misalkan), Seri dengan angka 12, dan Kalah dengan angka 5. 2. Klik tombol Hitung atau tekan kombinasi tombol ALT + H, pada keyboard. Maka program akan menghitung jumlah point dan menampilkannya. Bersamaan dengan itu juga program akan menentukan berada pada peringkat berapakah klub kita. 3. Klik tombol Reset atau ALT + R, untuk mengulangi proses penghitungan. 4. Klik tombol Keluar atau ALT + K, untuk menutup atau keluar dari program.
22
[email protected]
Dasar-dasar C#
23
[email protected]