Modul Praktikum Pemrograman III (C#

)

TUGAS PENDAHULUAN I

1. Apa yang anda ketahui tentang .Net Framework ? Dan jelaskan tujuannya ! 2. Apa saja yang termasuk pada editor C# ? Jelaskan ! 3. Sebut dan jelaskan komponen IDE Visual C# 2005 Express Edition ! 4. Jelaskan arti keyword di bawah ini ! a. using b.namespace c. using System d.class e. static void Main(string[] args) 5. Sebut dan jelaskan tipe data dan operator yang ada pada pemograman C# ! 6. Buatlah sebuah program konversi hari !

Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten

Page 1 of 62

Modul Praktikum Pemrograman III (C#)

BAB I PENGENALAN BAHASA PEMROGRAMAN C# Tujuan : • • • Pengenalan Framework. NET Mampu menggunakan variable, pernyataan, operator dan tipe data Mampu membuat aplikasi sederhana menggunakan C#

1.1 Pengenalan Framework .NET Framework .NET adalah suatu komponen windows terintegrasi yang dibuat dengan tujuan untuk mendukung pengembangan berbagai macam jenis aplikasi serta untuk dapat menjalankan berbagai macam aplikasi generasi mendatang termasuk pengembangan aplikasi Web Services XML. Framework .NET didisain untuk dapat memenuhi beberapa tujuan berikut ini : • Untuk menyediakan lingkungan kerja yang konsisten bagi bahasa pemrograman yang berorientasi objek ( object-oriented programming - OOP ) • Untuk menyediakan lingkungan meminimaliasi proses kerja di dalam mengeksekusi kode yang dapat deployment dan menghindari konflik

software

penggunaan versi software yang dibuat. • Untuk menyediakan lingkungan kerja yang aman dalam hal pengeksekusian kode, termasuk kode yang dibuat oleh pihak ketiga ( third party). • Untuk menyediakan lingkungan kerja yang dapat mengurangi masalah pada persoalan performa dari kode atau dari lingkungan interpreter nya.

Sekilas Pemrograman C# 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# 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

Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten

Page 2 of 62

Modul Praktikum Pemrograman III (C#)

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. 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 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.

Editor C# • Notepad

Kita dapat membuat aplikasi C# dalam notepad . File-file C# disimpan dengan ekstension .cs, jika kita tidak hati-hati pada saat menyimpan file C# di Notepad, misal kita bermaksud menyimpan file dengan nama test.cs maka tidak tertutup kemungkinan file tersebut akan menjadi test.cs.txt kecuali kita telah mensetting terlebih dahulu box drop down list pada fungsi Save As menjadi “All Files”. • Visual Studio 6

Jika anda telah terbiasa menggunakan Visual Studio 6, maka tools tersebut bisa digunakan untuk membuat aplikasi dengan C#, khususnya dengan menggunakan editor Microsoft Visual C++.

Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten

Page 3 of 62

Buka file baru pada aplikasi Notepad. Untuk proses kompilasi. Kemudian atur path sesuai dengan tempat penyimpanan HaloDunia. jalankan/eksekusi program tersebut dengan perintah : HaloCsharp HaloCsharp.exe. Namun.NET Visual Studio . kamu perlu buka “Visual Studio 2008 Command Prompt”. Perintah yang digunakan untuk kompilasi: csc HaaloCsharp. class HaloCsharp { // Bagian utama program C# public static void Main( string [] args) { System.NET. yang memudahkan kita pada saat membaca dan menganalisa kode-kode program kita. Editor ini tidak hanya menyediakan berbagai macam tools dan wizard untuk membuat aplikasi C#.cs menjadi HaloCsharp. 4.cs.1 using System. tapi juga termasuk fitur-fitur produktif seperti IntelliSense dan bantuan yang dinamis. Menulis Aplikasi dengan Notepad 1.cs Perintah tersebut akan mengkompilasi program HaloDunia.Modul Praktikum Pemrograman III (C#) Salah satu keuntungan menggunakan editor khusus buat pemrograman (seperti Microsoft Visual C++) adalah adanya syntax highlighting . termasuk aplikasi dengan bahasa C#.exe atau Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 4 of 62 . karena Visual Studio 6 (khususnya Visual C++) ini di buat sebelum adanya bahasa C#. maka perlu sedikit “kreatifitas” kita untuk memodifikasi setting editor tersebut agar dapat menampilkan syntax highlighting C#.Console. • Visual Studio . Setelah dikompilasi. Lalu simpanlah dengan nama HaloDunia.WriteLine("Ini adalah program pertamaku dengan C#").cs 2. } } 3.NET merupakan editor yang paling ideal untuk membuat aplikasi yang berbasis Framework . Ketiklah kode berikut ini Latihan1.

using System. Laboratorium Komputer Dasar asar 1 & 2 Unpad | Tim Asisten Page 5 of 62 . pilih File > New Project > Console Application kemudian beri nama belajar kemudian klik tombol OK . namespace belajar { class Program { static void Main( string [] args) { Console .Collections. } } } 3.WriteLine( "Selamat belajar C#" ). 2. using System. maka akan ditampilkan hasilnya sebagai berikut.Modul Praktikum Pemrograman III (C#) Menulis Aplikasi dengan Visual Studio 2008 1.Text. Buat aplikasi Console baru. Kemudian jalankan dengan menekan tombol Ctrl + F5 (untuk run tanpa debug).2 using System. Kemudian tuliskan source code-nya code sebagai berikut Latihan1.Generic.

1. 6. 7. delapan sisanya digunakan untuk kalkulasi numerik.1 dan 1.WriteLine digunakan untuk menampilkan output ke layar console. Salah satu keunggulan dari C# adalah tersedianya predefined class yang dapat langsung digunakan dalam aplikasi. ushort. 4. Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 6 of 62 . sbyte. dan ulong. Keyword class digunakan untuk mendeklarasikan class dengan nama Program. Kode atau keterangan di dalam tag komentar tidak akan dieksekusi oleh compiler. 2. Keyword namespace digunakan untuk mendeklarasikan ruang lingkup dari class yang kamu buat. Class di dalam namespace dapat dipanggil dengan mencantumkan nama namespace-nya terlebih dahulu . pada C# digunakan t ag // (jika hanya satu baris saja) atau diapit t ag /* */ (jika komentarnya lebih dari satu baris).2 Tipe Data C# mempunyai dua jenis built-in tipe data yaitu value types dan reference types. Keyword using System. Sintaks Console. long. uint. pada baris pertama mempunyai arti kamu dapat menggunakan class-class yang ada pada namespace System.Modul Praktikum Pemrograman III (C#) Penjelasan perbagian dari Latihan1. 5. Deklarasi static void Main(string[] args) adalah method utama yang dijalankan pada class Program . Tag // digunakan sebagai komentar. byte. Keyword using digunakan untuk memberitahu compiler class yang digunakan pada aplikasi. Tetapi char type digunakan untuk mendefinisikan tipe data karakter.2 di atas adalah sebagai berikut: 1. 3. Referenced type didefinisikan dengan menggunakan class. C# mempunyai 13 tipe data dasar yang ditunjukan pada table dibawah ini Tipe bool Byte Char Decimal Double Float Int long Keterangan Merepresentasikan nilai true/false 8-bit unsigned integer Character Numeric type untuk financial calculations Double-precision floating point Single-precision floating point Integer Long Integer Tipe Sbyte Short Uint Ulong ushort Keterangan 8-bit signed integer Short integer Unsigned integer Unsigned long integer Unsigned short integer Tipe-tipe data yang ada diatas disebut dengan simple types Tipe Data Integer C# mempunyai sembilan tipe integer: char.int. short.

Minutes). bulan.ToUInt16( Console . Console .Hours.WriteLine( "Umur kamu adalah {0} hari.Write( "Tanggal Lahir\t : " ). tahun. bulan.Message).WriteLine( "Hitung Usia" ). } catch ( Exception e) { Console . usia. } catch ( FormatException e) { Console . DateTime hariIni = DateTime . Console .Modul Praktikum Pemrograman III (C#) Latihan1. Console .WriteLine( "Data tanggal. DateTime ultah = new DateTime (tahun. TimeSpan usia = hariIni. Console . hari = Convert .WriteLine( "Terjadi Kesalahan : " .Now. Console .WriteLine( "-----------" ). bulan. bulan = Convert ." ). tahun harus berupa angka.e. hari).ToUInt16( Console .Subtract(ultah). try { Console . {1} jam " + "{2} menit. usia.Days. Console ." .3 : using System.Write( "Bulan Lahir\t : " ).ReadLine()).ToUInt16( Console .WriteLine( "------------------------------------------------------------------------" ).ReadLine()).ReadLine()). usia. tahun = Convert . } } } Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 7 of 62 .Write( "Tahun Lahir\t : " ). class Latihan1_3 { static void Main( string [] args) { ushort hari.

Let me introduce my self.15 R= 4/5*C Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 8 of 62 .4 Tugas Praktikum 1.Thank you. menit.Modul Praktikum Pemrograman III (C#) 1. Output : Assalamu’alaikum. Buatlah program konversi waktu dari detik ke jam. Reamur (R). 2. dan Kelvin (K). Suhu Celsius di masukkan melalui keyboard saat program dieksekusi ! F = C * 9/5 +32 K=C+273. My name is (nama lengkap). tempat lahir. Buatlah program untuk menginputkan biodata terdiri dari nama lengkap. My NPM is (npm). but you can call me (nama panggilan). nama panggilan. I was born in (tempat lahir) and I am (umur) years old.telepon. umur. don’t forget to call me before with the number (telepon). Buatlah program konversi suhu dari Celcius (C) ke Fahrenheit (F). So. detik! 3. I am very glad if you want to invite my house in (alamat). npm. dan alamat.

Sebut dan jelaskan operator-operator yang terkait dengan proses seleksi kondisi ! 6. Jelaskan maksud dari Case.Modul Praktikum Pemrograman III (C#) TUGAS PENDAHULUAN II 1. Jelaskan yang dimaksud dengan seleksi kondisi “nested if”. Jelaskan kegunaan perintah goto ! 7. Jelaskan kapan operasi seleksi kondisi switch digunakan ! 5. Break dan Default dalam seleksi kondisi switch ! 8. Jelaskan kapan operasi if – else digunakan ! 4.NET hanya dapat berjalan di Windows? Jelaskan! 3. berikan contoh kode programnya ! Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 9 of 62 . Apakah program-program .

Modul Praktikum Pemrograman III (C#) BAB II STRUKTUR RUNTUTAN & PERCABANGAN Tujuan : 1. Memahami struktur runtutan 2. struktur pemilihan dan struktur pengulangan. Operator-operator yang terkait dengan proses seleksi kondisi adalah Operator Logika dan Relasional (hubungan). Memahami struktur pemilihan if-else dan switch-case 3. Relational dan Logical Operators Berikut daftar relational operator pada C#: Operator > >= < <= == != Meaning Lebih besar Lebih besar sama dengan Lebih kecil Lebih kecil sama dengan Sama dengan Tidak sama dengan Relational operator pada C# biasanya digunakan dalam statement If untuk pengecekan kondisi. Struktur kontrol pemilihan dan pengulangan memanfaatkan operator dalam menentukan suatu kondisi. Mampu membuat program sederhana dengan menggunakan struktur percabangan 2.1 Pendahuluan Struktur kontrol yang ada pada bahasa C# adalah struktur runtutan. Dan berikut adalah logical operator pada C#: Operator & | ^ && || ! Meaning AND OR XOR (Exclusive OR) Short-circuit AND Short-circuit OR Not Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 10 of 62 .

ToInt32(Console.Write("Masukan nilai kedua :"). } } 2. number2 = Convert.2 Struktur Runtutan Secara umum. : : : Pernyataan n . class Tambah{ static void Main(string[] args){ int number1.ReadLine()).1 : //program menjumlahkan dua buah bilangan using System. dibahas pada sub bab selanjutnya. Console. //variabel unt menampung nilai pertama int number2. sum = number1 + number2. Latihan2. Namun tidak menutup kemungkinan dalam Pemrograman ada struktuk lain seperti struktur percabangan. Setiap baris dibaca mulai dari kiri ke kanan. //variabel unt menampung nilai kedua int sum. strukur pengulangan atau lainnya. } Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 11 of 62 .WriteLine("Jadi hasil penjumlahannya : "+sum).Modul Praktikum Pemrograman III (C#) 2. //konversi dari tipe string ke integer number1 = Convert. //variabel yg menampung hasil penjumlahan Console. cara compiler bekerja adalah membaca perintah mulai dari baris atas ke bawah secara berurutan .3 Stuktur Pemilihan Bentuk umum if if (kondisi yang diseleksi){ Pernyataan 1.ToInt32(Console. Console.Write("Masukan nilai pertama :").ReadLine()).

Setiap pernyataan sebelum else. } diakhiri tanda titik koma (.) walaupun Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 12 of 62 . Bentuk umum if – else if (kondisi yang diseleksi) { Pernyataan 1. } else if (kondisi yang diseleksi){ Pernyataan 3. } else { Pernyataan 4. Bentuk umum Nested if if (kondisi yang diseleksi){ Pernyataan 1. } else { Pernyataan 2. } else if (kondisi yang diseleksi){ Pernyataan 2.Modul Praktikum Pemrograman III (C#) Jika kondisi yang diseleksi benar maka pernyataan 1 sampai pernyataan n akan dikerjakan. maka harus menggunakan tanda ‘{‘ dan ‘}’. sedangkan jika kondisi tersebut tidak terpenuhi maka program akan keluar dari struktur if. Jika lebih dari satu pernyataan . } Jika kondisi yang diseleksi bernilai benar atau terpenuhi maka pernyataan pertama yang dilaksanakan dan jika kondisi yang diseleksi bernilai salah maka pernyataan yang kedua yang dilaksanakan.

break.2 : using System. class Latihan2_2 { static void Main( string [] args) { Console .ReadLine()).Write( "Masukan IPK : " ).    Case digunakan sebagai label yang menandai awal eksekusi deret instruksinya hingga ditemukan pernyataan break Default adalah label yang jika label-label Case diatasnya tidak ada yang memenuhi maka label ini yang akan dieksekusi Break adalah perintah pengontrol alur program yang berfungsi untuk keluar dari suatu blok kondisi ataupun iterasi.Modul Praktikum Pemrograman III (C#) Bentuk Umum Switch Switch (ekspresi) { case konst-1 : Pernyataan -1. : : case konst-n : Pernyataan -n. Latihan2. “ekspresi” dapat berupa konstanta integer atau karakter.ToSingle( Console . break. case konst-2 : Pernyataan -2. break. Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 13 of 62 . float ipk = Convert . } Struktur switch–case–default digunakan untuk penyeleksian kondisi dengan kemungkinan yang terjadi cukup banyak. default : Pernyataan -df. break.

else if (ipk > 3) predikat = "Sangat Memuaskan" . break.Parse(Console. case 5: Console.5) predikat = "Cum Laude" .ReadLine()). break. else if (ipk >= 2) predikat = "Cukup" . break. Pilpres { void Main() { static int intHari. predikat). intHari = Int32. switch (intHari){ case 1: Console.WriteLine("Hari Rabu").WriteLine("Hari Kamis").75) predikat = "Memuaskan" .WriteLine( "Predikat Anda adalah : {0}" .3 : using class System. else if (ipk >= 2. if (ipk > 3. case 4: Console. break.WriteLine("Hari Senin"). case 2: Console.WriteLine("Hari Selasa").Modul Praktikum Pemrograman III (C#) string predikat.WriteLine("Hari Minggu"). break. Console. else predikat = "Memuakkan" . case 6: Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 14 of 62 . Console .Write("Masukan Pilihan Hari (1-7) :"). case 3: Console. } } Latihan2.

} } } 2. atau yang lainnya ! Input : Masukkan Karakter : A Output: Karakter yang diinputkan adalah huruf besar 2.WriteLine("Hari Jumat"). apakah huruf Besar. spasi.Modul Praktikum Pemrograman III (C#) Console.4 Tugas Praktikum 1. break. digit.WriteLine("Anda salam memasukan input (1-7)").Judul Paku Kuntilanak Sumpah Pocong Rumah Hantu I Love You Now and Forever My Girl Harga Rp 7500 Rp 6000 Rp 4000 Rp 5000 Rp 3000 Rp 2500 Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 15 of 62 . break. default: Console. case 7: Console.WriteLine("Hari Sabtu"). break. Buatlah Tampilan Menu b. huruf kecil. Baru pilih horror atau romantic Horor : 2 Romantic : 3 c. Buatlah Program untuk mengetahui karakter yang diinputkan. 8500. Buatlah program untuk mempermudah pembayaran di suatu bioskop Jenis Horor No 1 2 3 Romantic 1 2 3 Output : a. Hitung total harga Total Harga Rp.

Ada beberapa macam bentuk pengulangan. Buatlah program tangga naik menggunakan struktur pengulangan sehingga hasil output : 1 12 123 1234 Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 16 of 62 . sebut dan jelaskan masing masing pada tiap penggunaanya! 4.Modul Praktikum Pemrograman III (C#) TUGAS PENDAHULUAN III 1. Kapan kita membutuhkan suatu proses pengulangan? 2. Jelaskan pengertian dari penggunaan: 3.

kondisi. dan do-while. Ada empat struktur pengulangan yang dapat digunakan pada bahasa C#. Memahami struktur lompat break. dan iterasi. Struktur for b. Struktur do…while d. goto . dan continue(untuk melakukan 3. Page 17 of 62 Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten .1 Pendahuluan Sering kali dalam membuat program. Memahami struktur pengulangan for. pengulangan selanjutnya) . Struktur foreach Berkaitan dengan proses pengulangan. kamu menuliskan beberapa perintah baris yang sama. Beberapa hal penting pada struktur pengulangan adalah adanya inisialisasi. Struktur while c. kondisi. Bentuk Umum : for (inisialisasi.Modul Praktikum Pemrograman III (C#) BAB III STRUKTUR PENGULANGAN Tujuan : 1.iterasi) { Pernyataan . } Keterangan: Inisialisasi : pernyataan untuk menyatakan keadaan awal dari variable kontrol. while. while. do-while. Penulisan perintah tersebut dapat disingkat dengan menggunakan struktur pengulangan. continue dan goto 3. pemrograman C# juga menyediakan pernyataan break (untuk mengakhiri pengulangan) . yaitu: a. Mampu membuat program sederhana dengan menggunakan struktur pengulangan 3. seperti for.2 Struktur for Struktur pengulangan for biasa digunakan untuk mengulang suatu proses yang telah diketahui jumlah pengulangannya.foreach 2.

i >= 1. int besar = 0. Iterasi : pengatur perubahan nilai variabel kontrol. int i = 1. int banyak. Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 18 of 62 . <optional) } Latihan3.3 Struktur While Pengulangan ini banyak digunakan bila jumlah pengulangannya belum diketahui.WriteLine().ReadLine()). Console. iterasi.1 : static void Main(string[] args) { //mencetak bilangan dari 1-10. i++) Console. i <= 10.ToInt32(Console. Proses pengulangan akan terus berlanjut selama kondisinya bernilai benar (true) dan akan berhenti bila kondisinya bernilai salah. } 3. //mencetak bilangan dari 10 ke 1. i--) Console. decrement for (int i = 10. Latihan3.WriteLine(i).WriteLine(i). increment for (int i = 1.Write("Masukan Bilangan ke-"+i+": ").Modul Praktikum Pemrograman III (C#) - Kondisi : ekspresi relasi yang menyatakan kondisi untuk keluar dari pengulangan.Write("Masukan banyak bilangan yang akan dicek :"). <optional> while (kondisi){ pernyataan. Bentuk Umum : Inisialisasi.2 : static void Main(string[] args){ int bil. while (i <= banyak){ Console. Console. banyak = Convert.

int nextdigit.Modul Praktikum Pemrograman III (C#) bil = Convert. num = num / 10. } Console. Console.. Console. } i++. Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 19 of 62 .3 : static void Main(string[] args){ int num.while sekurang-kurangnya akan terjadi satu kali pengulangan.. kamu menggunakan counter untuk iterasi.} 3.ToInt32(Console.Write("Bilangan setelah dibalik :").Write(nextdigit).5 Struktur foreach Pada struktur for. } 3..4 Struktur do. Console. Jadi dengan menggunakan struktur do. Dengan struktur foreach. if (bil >= besar){ besar = bil.ReadLine()).while Pengulangan ini digunakan bila jumlah pengulangan do.WriteLine("Bilangan sebelum dibalik "+num). iterasi . num = Convert.WriteLine("Jadi bilangan yang terbesar adalah :"+besar). Bentuk Umum : Inisialisasi <optional> do { Pernyataan .while sama saja dengan struktur while.ReadLine()). do{ nextdigit = num % 10. hanya saja pasa proses seleksi kondisi letaknya berada di bawah batas pengulangan. Console.ToInt32(Console. } while (num > 0). Latihan3. <optional> } while (kondisi).Write("Masukan bilangan :").

Ketika break statement dieksekusi maka kalang / loop akan secara otomatis berhenti.Modul Praktikum Pemrograman III (C#) kamu tidak perlu membuat counter. pernyataan yang sama. Kekurangannya adalah tidak bias mengakses nilai dari suatu indeks tertentu.7 Pernyataan Continue Pernyataan berikutnya pada continue do { continue. item). Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 20 of 62 . foreach ( string item in strings){ Console . public class ForeachDemo { void Main() { static string [] strings = { "Matematik" . "Bahasa" }. Sintaks foreach foreach ( tipe_data nama_var in nama_array) statement.4 //Progam Demo foreach using System. }while(kondisi) } while(kondisi){ continue. continue loop digunakan untuk mengarahkan eksekusi ke proses do-while dan while . Pada menyebabkan eksekusi menuju ke pengulangan kembali.WriteLine( "{0}" . tipe_data : menyatakan tipe data dari variable nama_var : menyatakan tempat penampungan nilai elemen dari array nama_array : menyatakan array yg digunakan statement : menyatakan badan program yang akan diiterasi Latihan 3. Kelebihannya adalah cepat mendapatkan nilai array secara keseluruhan.6 Pernyataan Break Break statement digunakan untuk keluar dari kalang bila kondisi tertentu yang tambahkan dipenuhi. karena proses iterasi dilakukan secara internal array. 3. } } } 3.

Modul Praktikum Pemrograman III (C#) 3. 3. Label merupakan suatu pengenal yang diikuti dengan tanda titik koma(. Masukan tiap program di atas kedalam suatu menu pilihan! Laboratorium Komputer Dasar asar 1 & 2 Unpad | Tim Asisten Page 21 of 62 .9 Tugas Praktikum 1. .8 Pernyataan Goto Pernyataan goto ini merupakan perintah yang digunakan untuk untuk mengarahkan eksekusi ke pernyataan yang di awali dengan suatu label.). Input : UNPAD b. Masukan Bilangan : 7 1 1 2 3 3 6 4 10 5 15 6 21 7 28 Output : DAPNU 2. Buatlah program dengan menggunakan conditional looping! 3. Buatlah program menggunakan nested loop! a.

berkaitan dengan tidak adanya suatu tipe khusus berbentuk string pada bahasa c#? 5. Bagaimana cara membentuk suatu array string. Jelaskan pengertian Generics Class! Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 22 of 62 . Apa fungsi dari perulangan dalam array? Dan mengapa pengaksesan array bisa menggunakan perulangan FOR? 4. Tuliskan deklarasi array dimensi 1 dan dimensi 2/banyak ? 3. Jelaskan bagaimana penginisialisasian array yang berukuran tetap juga yang tidak berukuran! 6.Modul Praktikum Pemrograman III (C#) TUGAS PENDAHULUAN IV 1. Apakah perbedaan larik dengan variabel biasa? 2.

1 Array (Larik) Pemrograman membutuhkan variabel untuk menyatakan suatu kegiatan proses tertentu. Di dalam pemrograman dikenal dengan nama array. terkadang membutuhkan kumpulan data yang sama dalam tipe. Misal : int numbers[3]. Mengetahui sekilas mengenai cara penulisan array dan collection dalam pemrograman bahasa C# 2.1.1 Array satu dimensi Deklarasi umum : <tipe_data_array>[] <nama_array> = new <tipe_data_array>[size]. Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 23 of 62 . Mengetahui penerapan array dan collection dalam pemrograman bahasa C 3. Dalam kondisi tertentu. Dengan demikian. < nama_array > [indeks] Ket :  <type_data_array> = semua jenis tipe data  [] = penanda array  <nama_array> = nama suatu array sebagai identifikasi  [indeks] = elemen ke-berapa dari <nama_array>  [size] = jumlah terhingga yang dapat dimiliki <nama_array> = nilai. 4.Modul Praktikum Pemrograman III (C#) BAB IV ARRAY DAN COLLECTION Tujuan : 1. array disebut kumpulan variabel berindeks terhingga yang mempunyai tipe data yang sama. Mampu membuat program sederhana dengan menggunakan array dan collection 4. Array mempunyai keterbatasan. yaitu harus memdefinisikan banyaknya data yang dibutuhkan.

[] = penanda dimensi array  <nama_array> = nama suatu array sebagai identifikasi  [indeks] = elemen ke-berapa dari <nama_array>  [size] = jumlah terhingga yang dapat dimiliki <nama_array> Misal : int numbers[3][5].8}".[]. bil[i])..} 4. i++){ Console.1 Array dari Array <tipe_data_array>[][].Length. } Console.} for (int i = 0.Write("Masukkan bilangan : "). i.ReadLine().. Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 24 of 62 . "indeks". < nama_array > [indeks][indeks]..2 Array Multi Dimensi 4. [][]. //Console. i < bil. "nilai").WriteLine("{0}{1.WriteLine("{0}{1.. for (int i = 0.Length.1.1.2. i++){ bil[i] = i + i..1 : static void Main(string[] args) { int[] bil = new int[10].8}".[] <nama_array> = new <tipe_data_array>[size][].[]. i < bil. Console.Modul Praktikum Pemrograman III (C#) Latihan program 4. <nama_array>[indeks]= new <tipe_data_array>[size].[indeks] Ket :  <type_data_array> = semua jenis tipe data  = nilai.

2. .2 : using System. … .j<matriks[i]. . Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 25 of 62 .Write( "{0} " . for ( int i = 0.Length. < nama_array > [indeks.Parse( Console . … . matriks[i][j]). } } } 4. Console .1. i.WriteLine(). j < matriks[i].ReadLine()). size.2 Multidimensi Array <tipe_data_array>[ . matriks[i][j] = int . for ( int j = 0. indeks] Ket :  <type_data_array> = semua jenis tipe data  [ .WriteLine( "Menampilkan nilai matriks" ). namespace Bab4 { class Latihan42 { // Array-of-arrays (jagged): public static void Main( string [] args) { int [3][]. size].WriteLine( "Masukkan nilai matriks" ). int [][] matriks= new Console . … . ] = penanda dimensi array = nilai. indeks. } Console . for ( int i = 0.Length. ] <nama_array> = new <tipe_data_array>[size. i++) { for ( int j=0.Length. i < matriks.Write( "matriks[{0}][{1}]= " .WriteLine(). j++) { Console . } Console .Modul Praktikum Pemrograman III (C#) Latihan program 4. i < matriks.Length. i++) { matriks[i]= new int [3]. } } Console . j).ReadLine().j++) { Console . … .

3 : using System.Collections”.NET Framework menyediakan paket yang bernama Collection yang terdapat di bawah paket “System. matriks[i. i++) { for ( int j = 0. } Console .NET Framework mempunyai paket (kumpulan kelas) untuk menangani kebutuhan data yang tidak bisa ditentukan jumlah banyaknya data suatu array yang dibutuhkan.] matriks = new Console . namespace Bab4 { class Latihan43 { // Multidimensional arrays: public static void Main( string [] args){ int [3.3]. Console .2 Collections . for ( int i = 0. {1}]= " . for ( int i = 0.WriteLine( "Menampilkan nilai matriks" ).Modul Praktikum Pemrograman III (C#)  <nama_array> = nama suatu array sebagai identifikasi  [indeks] = elemen ke-berapa dari <nama_array>  [size] = jumlah terhingga yang dapat dimiliki <nama_array> Latihan program 4. j++) { Console .WriteLine( "Masukkan nilai matriks" ). Untuk menangani permasalahan di atas. } } Console . Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 26 of 62 .WriteLine(). i < 3. .j]). int [. } } } 4. i. matriks[i.ReadLine().Parse( Console .Write( "matriks[{0}. i < 3. i++) { for ( int j = 0.WriteLine(). } Console .j] = int . j < 3. j).Write( "{0} " . j++) { Console . j < 3.ReadLine()).

hash dan sebagainya. Untuk membangkitkan berapa banyak-nya data yang ada di dalam kelas Collection dapat meminta bantuan dari kelas IEnumerator disebabkan keterbatasan ukuran maksimum dari nilai integer. Contoh di bawah ini adalah satu kasus penggunaan ArrayList.ReadLine().1 Kelas-kelas Collection Kelas-kelas Collection mempunyai tipe data yang sama. while ( true ) { Console .Equals( "y" )) { break .Add( Console .Collections. arrayList. Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 27 of 62 .4 : using System.Modul Praktikum Pemrograman III (C#) Dalam paket tersebut mempunya kelas-kelas. seperti stack. Semua data akan diubah tipe data-nya ke dalam tipe data object.Generic. using System.ReadLine()). Latihan program 4. Console .Write( "Selesai (Y/T)= " ). IEnumerator iterator = arrayList. Data yang dapat diterima menjadi anggota suatu kelas Collection tidak terbatas jumlahnya. using System.WriteLine( "Tampilkan semua kata" ). Console .GetEnumerator(). queue. } } Console .Write( "Sembarang kata= " ). ArrayList arrayList = new Console .ToLower().WriteLine(). list.2. IEnumerator adalah `interface` yang mendukung iterasi dari suatu koleksi baik dari kelas-kelas Collection atau array. 4.Collections.WriteLine( "Masukkan nilai array" ). string jawab = Console . namespace Bab4 { class Latihan44 { // Penggunaan ArrayList public static void Main( string [] args) { ArrayList (). if (jawab.

MoveNext()) { Console . LinkedList < string > listString = new Console .WriteLine( "Masukkan nilai array" ). } Console .0.ToLower().Generic. Ket :  <collection_class> = kelas-kelas yang mendukung generic tipe data.2. Generic di sini adalah tipe data dari suatu kelas koleksi telah didefinisikan.NET Framework mendukung penggunaan array yang telah diidentifikasikan tipe datanya.ReadLine()). Dukungan ini dimulai dari . Misal: LinkedList<string>  <T> = tipe data generic yang digunakan Latihan program 4. string jawab = Console .Current).ReadLine().Modul Praktikum Pemrograman III (C#) while (iterator. listString. } } } 4. if (jawab.2 Generic Collection Class .Collections. Console .ReadLine().NET Framework 2.AddLast( Console . while ( true ) { Console .Generic” <collection_class><T> = new <collection_class><T>(). Dibutuhkan framework dari “System.5 : using System. using System.Write( "Sembarang kata= " ).WriteLine(iterator.Write( "Selesai (Y/T)= " ).Collections. } Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 28 of 62 . namespace Bab4 { class Latihan45 { // Penggunaan Array Generic public static void Main( string [] args) { LinkedList < string >().Equals( "y" )) { break .

IEnumerator < string > iterator = listString.WriteLine( "Tampilkan semua kata" ). Console . Buatlah program penjumlahan. Buatlah program konversi dari : i) Desimal ke Biner ii) Desimal ke Hexadesimal 4. Buatlah program yang menghitung nilai maksimum.3 Tugas Praktikum 1.MoveNext()) { string str = iterator. } Console . pengurangan serta perkalian matriks menggunakan Array Multidimensi! 5. Buatlah program polling angka (menunjukan berapa banyak tiap huruf diinputkan)! 3. Buatlah program yang dapat memunculkan : i) Deretan Bilangan Prima ii) Deretan Bilangan Fibbonaci Dengan menggunakan konsep Array! 2. while (iterator.Modul Praktikum Pemrograman III (C#) } Console . Console . minimum dan rata-rata dari semua bilangan yang diinputkan menggunakan ArrayList (non-generic) dan List (generic) ! Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 29 of 62 .GetEnumerator().WriteLine(str).Current.ReadLine(). } } } 4.WriteLine().

Jelaskan pengertian sorting dan searching menggunakan bahasa anda sendiri! 2. Sebutkan jenis sorting yang telah anda ketahui! 3. Apakah dalam bahasa c# telah disediakan library khusus untuk proses sorting dan searching? jika ada sebutkan! 5. Berikan gambaran mengenai 3 methode berikut ini: a) Exchange b) Selection c) Insertion 6.Modul Praktikum Pemrograman III (C#) TUGAS PENDAHULUAN V 1. Apakah perbedaan antara searching sequential dengan searching binary? Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 30 of 62 . Jelaskan masing masing jenis sorting yang telah anda sebutkan diatas! 4.

Length. 3.Modul Praktikum Pemrograman III (C#) BAB V SORTING DAN SEARCHING Tujuan : 1. Insertion 5. Tetapi dalam pembelajaran kali ini kita dituntut untuk menguasai proses pengurutan data secara manual. i--) { Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 31 of 62 . int temp. Pada umumnya fungsi misalnya qshort() tidak dapat diaplikasikan pada semua situasi. Exchange a) Bubble Sort b) Shaker Sort 2. Ada 3 metode yang dapat digunakan pada shorting array : 1.meskipun baik digunakan pada proses yang umum. . for ( int i = (count . Selection 3. i >= 0. 2. Mengetahui penerapan searching(pencarian) data pada bahasa C# SORTING Sorting merupakan proses pengelompokan suatu informasi yang berhubungan secara berurutan baik ascending(dari kecil ke besar) atau descending(dari besar ke kecil). Karena qshort() adalah suatu parameter yang khusus untuk untuk pengoperasian data dalam jumlah besar.tetapi bukanlah proses shorting yang terbaik.1 BUBLE SORT static void BubbleSort( int [] array) { int count = array. Mengetahui konsep dasar pengurutan data dalam bahasa C# 2. Alogaritma quickshort (yang biasanya diterapkan pada qshort()). sehingga prosesnya berjalan sangat pelan dibanding proses pengurutan data dengan cara yang lain. dengan alasan sebagai berikut : 1.NET Framework juga menyediakan dalam kelas koleksi untuk mengurutkan data.1).

c. int b. b = i. d. ++i){ if (array[i . for ( int i = c. d = count .1].1. do { for ( int i = d. j++) { if (array[j .1.1] = array[i].2 SHAKER SORT static void ShakerSort( int [] array) { int count = array. } 5.1]. c = 1. array[i . int temp. Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 32 of 62 .Length. j <= i. array[j] = temp.Modul Praktikum Pemrograman III (C#) for ( int j = 1.1] > array[j]) { temp = array[j . --i) { if (array[i .1] > array[i]) { temp = array[i . b = count . array[i] = temp. } } } PrintArray(array). array[j .1] = array[j]. } } c = b + 1. i >= c.1] > array[i]) { temp = array[i .1]. i < d + 1.

for ( int i = 1. for ( int i=0. } while (c <= d). int temp. } 5. while (j >= 0 && temp < array[j]) { Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 33 of 62 .i<count-1. int j = i .++j){ if (array[j]<temp){ indeks=j.Length. for ( int j=i+1.Modul Praktikum Pemrograman III (C#) array[i . b = i. i < count.++i){ indeks=i. PrintArray(array).3 SELECTION SORT static void SelectionSort( int [] array) { int count= array. array[i] = temp. temp=array[i]. temp=array[j].1] = array[i]. } } d = b . int indeks. } PrintArray(array). } } array[indeks]=array[i].1. } 5.4 INSERTION SORT static void InsertionSort( int [] array) { int count = array. ++i) { temp = array[i].Length. array[i]=temp.j<count.1. int temp.

public int [] numbers = new 6455.WriteLine( "Bubble Sort" ). } static void BubbleSort( int [] array) { int count = array. 9364. 9645. for ( int i = (count . } array[j + 1] = temp. using System. Console . namespace Bab5 { class Latihan51 { static void Main( string [] args) { int [] { 1488. 5435. Console . 9208. i >= 0. 6333.Length.1). 6385. 6965. 4548. j++) { Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 34 of 62 .WriteLine( "Insertion Sort" ). 8958. i--) { for ( int j = 1. Console . 1973. } using System. 7104. 3665. ShakerSort(numbers). 1578. j <= i.WriteLine( "Shaker Sort" ). 9550. SelectionSort(numbers). int temp.ReadLine(). j--. 7230. BubbleSort(numbers).WriteLine( "Selection Sort" ). 5446.Generic.Collections. Console . } PrintArray(array). 9686 }. 6937. 8340.Modul Praktikum Pemrograman III (C#) array[j + 1] = array[j]. 4426. SelectionSort(numbers). Console . 6504.

for ( int i = c.1] = array[i]. c = 1. array[i] = temp. } Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 35 of 62 . int b. c. array[i] = temp. } static void ShakerSort( int [] array) { int count = array. do { for ( int i = d. i < d + 1.1] = array[j]. d = count . array[j . b = i. array[i . --i) { if (array[i .1] > array[j]) { temp = array[j . int temp. b = count .Modul Praktikum Pemrograman III (C#) if (array[j . i >= c. ++i) { if (array[i .1.Length.1] = array[i].1] > array[i]) { temp = array[i . d. b = i. } } } PrintArray(array).1]. } } c = b + 1.1.1]. array[j] = temp. array[i .1] > array[i]) { temp = array[i .1].

temp=array[i].Length.++i){ indeks=i. int temp. int indeks. int temp.1.Modul Praktikum Pemrograman III (C#) } d = b . for ( int i = 1.i<count-1. for ( int i=0. int j = i . array[i]=temp.++j){ if (array[j]<temp){ indeks=j. PrintArray(array).1. i < count.j<count. } PrintArray(array). } static void InsertionSort( int [] array) { int count = array. ++i) { temp = array[i]. } static void SelectionSort( int [] array) { int count= array. temp=array[j].Length. } while (c <= d). } } array[indeks]=array[i]. while (j >= 0 && temp < array[j]) { Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 36 of 62 . for ( int j=i+1.

} PrintArray(array). if (v == a[i]) return i..Length. for ( int i = 0. Fungsi pencarian itu sendiri adalah untuk memvalidasi (mencocokkan) data. i <= a. i++) { Console . i < a. } } } } SEARCHING Pencarian (Searching) merupakan proses yang fundamental dalam pemrograman. guna menemukan data (nilai) tertentu di dalam sekumpulan data yang bertipe sama.. int v) { int count = 0. } static void PrintArray( int [] a) { for ( int i = 0. ++count).Modul Praktikum Pemrograman III (C#) array[j + 1] = array[j].WriteLine( "Checking . } array[j + 1] = temp. Metode Pencarian Bagi Dua (Binary Search) 5. j--. Metode Pencarian Beruntun (Sequential Search) 2.Length. {0}" . i++) { Console .5 SEQUENTIAL SEARCH static int SequentialSearch( int [] a.WriteLine(a[i]). Metode pencarian dibagi menjadi 2. } Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 37 of 62 . yaitu: 1. } return -1.

4426. Console . 6965. } return -1.. for ( int i = 0..WriteLine( "Checking . 5435)). 6504. 7230.. 6937. 9686}. 7104. 9208. int count = 0. namespace Bab5 { class Latihan52 { static void Main( string [] args) { int [] { 1488.Length. int v) { int count = 0. ++count). if (v < a[m]) r = m . } using System. Console . while (r >= l){ Console .Generic. 8958. {0}" .6 BINARY SEARCH static int BinarySearch( int [] a. int r = a. 5435. i <= a. 6385.Length.WriteLine( "Indeks ke : {0}" . using System. 3665.WriteLine( "Checking .Modul Praktikum Pemrograman III (C#) 5. i++) { Console .. 5435)).ReadLine(). 8340. } static int SequentialSearch( int [] a. else l = m + 1. {0}" . if (v == a[i]) Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 38 of 62 .WriteLine( "Indeks ke : {0}" . 9645. BinarySearch(numbers. SequentialSearch(numbers. public int [] numbers = new 6455. int m = (l + r) / 2. 9364. if (v == a[m]) return m. 1578. Console . 4548.1.Collections. 6333. 1973. 9550. ++count). int v) { int l = 0. 5446.

int count = 0.1..Length. } return -1. } } } 5. } static int BinarySearch( int [] a. ++count).WriteLine( "Checking . int v) { int l = 0.7 Tugas Praktikum 1. while (r >= l){ Console . else l = m + 1. Bandingkan dari semua metode sorting yang anda ketahui menggunakan sebuah progam dengan menggunakan perbandingan selisih waktu! Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 39 of 62 .Modul Praktikum Pemrograman III (C#) return i. {0}" .. } return -1. int m = (l + r) / 2. Carilah bentuk sorting lain menggunakan : a) Shell Short b) Quick Sort Kemudian aplikasikan dalam bentuk program aplikasi shorting karakter! 2. if (v < a[m]) r = m . if (v == a[m]) return m. int r = a.

dan property ! 4. access modifier. Jelaskan teknik pemrograman berbasis objek ! 6.Modul Praktikum Pemrograman III (C#) TUGAS PENDAHULUAN VI 1. Sebutkan dan jelaskan jenis – jenis operasi karakter ! 3. Buat sebuah program factorial dengan menggunakan teknik OOP ! Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 40 of 62 . Sebutkan dan jelaskan jenis – jenis operasi string ! 2. Sebutkan dan Jelaskan hak access modifier dalam C# ! 5. Apa yang Anda ketahui tentang konstruktor.

Fungsi adalah urutan instruksi terurut yang harus menghasilkan suatu nilai ( return value ). mail dan sebagainya. Misalnya mahasiswa mencetak kartu ujian.Modul Praktikum Pemrograman III (C#) BAB VI CLASS Tujuan : 1. Fungsi Class adalah cetak biru dari suatu objek riil di dunia. Di dalam mempresentasikan ciri-ciri khusus di dalam class Mahasiswa disebut atribut atau variabel. bertanya. Misalnya mahasiswa menjawab soal. Objek mahasiswa memiliki beberapa prosedur khusus untuk mendeskripsikan mahasiswa. Prosedur dikatakan fungsi yang tidak menghasilkan suatu nilai. nama. Misalnya objek mahasiswa. Misalnya nomor induk mahasiswa (nim). Di dalam programming OOP di representasikan sebagai fungsi dengan keyword “void”. Objek mahasiswa mempunyai ciri-ciri khusus yang dimiliki oleh mahasiswa. Mengetahui penerapan object dari class C# 6. Misalnya. Prosedur adalah urutan intruksi terurut.1 Class. Menjawab soal adalah fungsi karena ketika dosen menerima jawaban dari mahasiswa maka dosen akan memberi hasil nilai seberapa tepat jawaban mahasiswa. Ciri-ciri khusus mahasiswa tersebut harus menjadi identitas utama sebagai objek mahasiswa dan bukan objek dosen. Penerapan objek riil direpresentasikan dalam bentuk class. variabel dan fungsi 2. Mahasiswa merupakan objek dari dunia nyata dan dapat dipresentasikan ke dalam suatu class yaitu class Mahasiswa. Mengetahui sekilas mengenai cara penulisan class. Struktur class: <access_modifier> class <nama_class> Struktur variable: Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 41 of 62 . mendapatkan nilai suatu ujian mata kuliah dan sebagainya. mahasiswa menjawab soal. Variabel. Objek mahasiswa memiliki beberapa fungsi khusus untuk mendeskripsikan mahasiswa.

Struktur fungsi: <access_modifier> <return_type> <nama_fungsi>(<tipe_data> <nama_parameter>. // instruksi-intruksi lainnya return nilai. string nama.. namespace Bab6 { public class Mahasiswa { private private private int nim. public int Jawab( string soal) { int nilai = 0.. } } } Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 42 of 62 . variabel.WriteLine( "Nomor Induk Mahasiswa: " + nim). property dan fungsi (sementara diterima dulu)  <nama_class> = nama suatu class sebagai identifikasi  <tipe_data> = jenis-jenis tipe data  <nama_variabel> = nama suatu variabel sebagai identifikasi  <return_type> = nilai yang dihasilkan dari suatu fungsi  <nama_fungsi>() = nama suatu fungsi sebagai identifikasi  <tipe_data> = jenis-jenis tipe data  <nama_parameter> = nama suatu parameter sebagai identifikasi Latihan program 6.).1 : using System. string mail. Ket :  <access_modifier> = cara mengakses class. Console .Modul Praktikum Pemrograman III (C#) <access_modifier> <tipe_data> <nama_variabel>. } public void CetakKartuUjian() { Console .WriteLine( "Nama Mata Kuliah: Matematika Dasar" ).

string mail. variabel. string nama. Class Mahasiswa dapat terdiri dari beberapa construktor antara lain contruktor tidak ber-parameter.. construktor tidak ber-parameter. Construktor Construktor/Konstruktor adalah fungsi khusus yang sama dengan nama class dan tidak mempunyai nilai balik atau return value. Secara default.Modul Praktikum Pemrograman III (C#) a.2 : using System.. <access_modifier> class <nama_class> { <access_modifier> <nama_class>() { } <access_modifier> <nama_class>(<tipe_data> <nama_parameter>. ber-parameter nim dan nama dan/atau beberapa kombinasi yang lain dari paramater. namespace Bab6 { public class Mahasiswa { private private private int nim. property dan fungsi (sementara diterima dulu) <nama_class> = nama suatu class sebagai identifikasi <nama_class>() = kontruktor <tipe_data> = jenis-jenis tipe data <nama_parameter> = nama suatu parameter sebagai identifikasi Latihan program 6. ber-parameter nim. Kegunaan utama adalah untuk mendefinisikan suatu objek dari class. public Mahasiswa() Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 43 of 62 .) { } } Ket :      <access_modifier> = cara mengakses class.

string nama). Parameter tidak terbatas banyak-nya. this . Yang membedakan adalah fungsi dari parameter-nya yang satu sebenarnya untuk nama dan satu lagi untuk mail.nama = nama. } Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 44 of 62 . Latihan program 6. Konstruktor ada tidak ber-parameter (default) dan ada yang ber-parameter c.nim = nim. string mail) itu artinya sama dengan Mahasiswa(string mail.nim = nim. string nama. nama = "Amir" . } public Mahasiswa( string nama. } } } Syarat-syarat dalam membuat konstruktor: a. d. this . string nama) { this . string mail.nama = nama. Misal: Mahasiswa(string nama.Modul Praktikum Pemrograman III (C#) {} public Mahasiswa( int nim. Parameter berdasarkan tipe data dan bukan berdasarkan nama paramater-nya. int nim) { this . namespace Bab6 { public class Mahasiswa { private private private int nim. Sama dengan nama kelas b. public Mahasiswa() { nim = 3. Fungsi parameter adalah mendefinisikan suatu objek dari kelas.3 : using System.

WriteLine( "NIM: {0}" . nama). Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 45 of 62 . akses terbatas pada class itu sendiri 2. public.WriteLine( "Nama: {0}" . this . } } } b. using System. akses tidak terbatas pada dan dari luar bebas mengakses ke class tersebut. aku = new Mahasiswa (4.CetakMahasiswa(). Mahasiswa aku = new aku. } public void CetakMahasiswa() { Console .nama = nama. 5). this . int nim) { this .nama = nama. aku.CetakMahasiswa(). Console . Access Modifier Access Modifier ada 4 jenis yang umum: 1. private. "Budi" ). protected. namespace Bab6 { public class Mahasiswa2 { private int nim.CetakMahasiswa(). aku = new Mahasiswa ( "Wati" . nim). } public static void Main( string [] args) { Mahasiswa (). string nama) { this . akses terbatas pada class itu sendiri atau dapat diturunkan ke class turunannya dan berganti akses ke private. } public Mahasiswa( string nama.nim = nim. aku.Modul Praktikum Pemrograman III (C#) public Mahasiswa( int nim. 3.nim = nim.

} public static void Main( string [] args) { Mahasiswa3 (). name).WriteLine( "NIM: {0}" . name). Console . name). mail). Console . } Mahasiswa4 mahasiswa = new } } Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 46 of 62 . nim).WriteLine("NIM: {0}". //Console.WriteLine( "Nama: {0}" . public Mahasiswa2() { Console .WriteLine("Nama: {0}". Mahasiswa3 mahasiswa = new } } public class Mahasiswa4 : Mahasiswa3 { public Mahasiswa4() { //Console. string mail. Console . Console . mail).Modul Praktikum Pemrograman III (C#) protected public string name. Console . } public static void Main( string [] args) { Mahasiswa4 ().WriteLine("NIM: {0}".WriteLine( "Mail: {0}" . Mahasiswa2 mahasiswa = new } } public class Mahasiswa3 : Mahasiswa2 { public Mahasiswa3() { //Console. } public static void Main( string [] args) { Mahasiswa2 ().WriteLine( "Nama: {0}" .WriteLine( "Mail: {0}" .WriteLine( "Mail: {0}" . nim). nim). mail).

} } } public class PropertyMahasiswa { static void Main( string [] args) { Mahasiswa65 (). Console . Property Salah satu sifat dari Pemrograman Berbasis Objek adalah bagaimana menyembunyikan ciri karakteristik (variabel) yang dimiliki oleh class (enkapsulasi).NomorIndukMahasiswa). Salah satu penyembunyian karakteristik adalah dengan menggunakan “Property” di dalam . namespace Bab6 public class Mahasiswa65 { private public int nim. siswa.NomorIndukMahasiswa = "2009" . Sehingga user dibatasi untuk mengakses ciri khas class melalui “Property”. public Mahasiswa65 siswa = new siswa. // Ganti Nomor Induk Mahasiswa siswa. siswa.NET Framework dimaksudkan untuk menyediakan metode get atau set terhadap variabel tertentu. mahasiswa dan pegawai ! Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 47 of 62 . User akan mengakses variabel tersebut melalui “Property”. Di sini diminta untuk diterima dulu. } } } 6. } set { nim = value .4 : using System.Modul Praktikum Pemrograman III (C#) Catatan: keyword “:” yang terdapat pada Mahasiswa3 : Mahasiswa2 adalah extends.NET Framework.NomorIndukMahasiswa = "1999" . Console . Latihan program 6. c.WriteLine( "Nomor Induk Mahasiswa= {0}" .2 Tugas Praktikum Buatlah beberapa kelas yang merepresentasikan entitas dosen. int NomorIndukMahasiswa { get { return nim.NomorIndukMahasiswa).WriteLine( "Nomor Induk Mahasiswa= {0}" . Property .

Modul Praktikum Pemrograman III (C#)

BAB VII CLASS LANJUTAN

Tujuan : 1. Mengetahui sekilas mengenai pewarisan, abtract class, interface 2. Mengetahui penerapan pewarisan, abtract class, interface

7.1 Pewarisan Pewarisan (inheritance) adalah kemampuan class untuk menurunkan sifat-sifat ke class turunannya. Class turunan dapat diturunkan hanya satu class kecuali interface. Struktur pewarisan: <access_modifier> class <nama_class_turunan> : <nama_class_induk> Latihan program 7.1 :
using System; namespace Bab7 { public class Induk { int nim;

protected

public Induk() { nim = 1999; } } public class Turunan : Induk { {

public Turunan()

Console .WriteLine( "NIM: {0}" , nim); }

public

static

void Main( string [] args) { Turunan ();

Turunan turunan = new } } }

Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten

Page 48 of 62

Modul Praktikum Pemrograman III (C#)

7.2 Abstract Class Abstract class adalah class yang belum lengkap strukturnya. Class ini belum dapat menciptakan objek, dalam artian abstract class baru class setengah jadi. Yang belum jadi adalah fungsi-fungsi. Sehingga harus di override di kelas turunan-nya. Override adalah penulisan ulang fungsi di kelas turunannya. Turunan class hanya dapat diturunkan dari satu class induk. Struktur pewarisan: <access_modifier> abstract class <nama_class_turunan> : <nama_class_induk> Latihan program 7.2 :
using System; namespace Bab7 { public abstract class AbstractClass {

protected

int nim;

public } public

abstract

void setNIM( int nim); {

class

AbstractTurunan : AbstractClass { void setNIM( int nim) {

public

override

this .nim = nim; } public int getNIM() {

return nim; } public static void Main( string [] args) { AbstractTurunan ();

AbstractTurunan at = new at.setNIM(1999);

Console .WriteLine( "NIM: {0}" , at.getNIM()); } } }

7.3 Interface

Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten

Page 49 of 62

Modul Praktikum Pemrograman III (C#)

Interdace adalah class yang belum lengkap strukturnya dan berisi definisi fungsi-fungsi belum implementasi. Interface ini belum dapat menciptakan objek, dalam artian interface baru class setengah jadi. Yang belum jadi adalah fungsi-fungsi. Sehingga harus di override di kelas turunan-nya. Override adalah penulisan ulang fungsi di kelas turunannya. Turunan class hanya dapat diturunkan dari beberapa interface. Struktur pewarisan: <access_modifier> interface <nama_class_turunan> : <nama_interface_induk1>, <nama_interface_induk2>, …, <nama_interface_indukN> Latihan program 7.2 :
using System; namespace Bab7 { public interface Shape {

void Draw(); } public class Rectangle : Shape {

public

void Draw() {

Console .WriteLine( "Draw Rectangle" ); } } public class Cirle : Shape {

public

void Draw() {

Console .WriteLine( "Draw Cirle" ); } } public class Implementasi { void Main( string [] args) {

public

static

// Shape untuk rectangle Shape shape = new shape.Draw(); // Shape untuk cirle shape = new shape.Draw(); } } } Cirle (); Rectangle ();

Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten

Page 50 of 62

…. 6000 Jika jumlah jam lembur >=3. Ketentuan: Jumlah jam kerja = 8 jam atau kurang..... JJK …. Buatlah program untuk menghitung gaji harian seorang pegawai disuatu proyek Ved Corporation. NIP …. Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 51 of 62 .. dengan ketentuan : Input : Nama. diberi uang makan = Rp. Jumlah jam kerja. Jika jumlah jam kerja > 8 maka Lembur = jjk – 8 x 3/2 x honor/jam Selain itu lembur=0 dan honor/jam=Rp. Buatlah program pembelian barang dengan menggunakan kelas-kelas ! DVD Asus Gigabyte 185000 200000 Mainboard 650000 700000 2.4 Tugas Praktikum 1. ……… ……dst ……… ……….. NIP.. …..5... ….Modul Praktikum Pemrograman III (C#) 7. Honor = jjk x honor/jam Total = honor + lembur + uang makan Gunakan fungsi dan struktur dalam array OUTPUT Daftar Gaji Harian Pegawai Ved Corporation No 1 2 Nama …. 7000 selain itu tidak mendapat uang makan. Honor/jam Honor 6000 6000 Lembur Uang makan Total ……. ……. ……… ……….

}} Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 52 of 62 . Mampu menangani exception menggunakan try .ReadLine()).ToInt32( Console . int pembagi = Convert . 3 atau lainnya). Mampu membuat exception sendiri 8.ToInt32( Console .1 //Simulasi pembagi nol tanpa exception using System.Write( "Masukan nilai pembagi: " ). using System. lalu menampilkan hasil ke layar int hasil = bilang / pembagi. pengguna program dan pemogram dapat mengetahui penyebab kesalahan yang terjadi pada program. Karena suatu bilangan dibagi dengan nol. Console . //membagi dua integer. Fasilitas penanganan kesalahan bisa disebut dengan istilah Exception. hasil).ReadLine()).Modul Praktikum Pemrograman III (C#) BAB VIII EXCEPTION Tujuan : 1. hasilnya adalah tak tentu (jawaban bisa 1. 2. bilang.1 Pendahuluan Kesalahan saat eksekusi program sering kali terjadi. Console .WriteLine( "\nHasil: {0:D} / {1:D} = {2:D}" . int bilang = Convert . class DivideByZeroNoExceptionHandling { static void Main(){ // mendapatkan pembilang dan pembagi Console . Pemrograman C# menyediakan fasilitas penanganan kesalahan yang dialami program selama eksekusi. Latihan 8. Latihan 8. Memahami konsep penanganan kesalahan 2.Write( "Masukan nilai pembilang: " ). pembagi. Sebagai contoh pertama adalah masalah penyebut/pembagi yang bernilai nol pada saat pembagian suatu bilangan. seperti tidak adanya kesesuaian antara data yang diinput dengan tipe data variablenya.Forms.Windows. Dengan adanya exception.catch – finally 3.1 menggambarkan tidak adanya penangan kesalahan untuk kasus pembagi sama dengan nol.

Untuk lebih jelasnya . maka kamu klik don’t send . program akan berjalan dengan normal. seperti gambar berikut 8. Setelah di klik don’t send. lihat gambar berikut.2 Penanganan kesalahan dengan Try – catch . padahal di program telah dideklarasikan tipe datanya adalah integer. pesan kesalahan DivideByZeroException akan muncul di command prompt.Modul Praktikum Pemrograman III (C#) Selama kamu masukan nilai pembagi tidak sama dengan nol. Jika pesan kesalahan ini tidak mau dikonformasi dikonformasi ke Microsoft. Pembuatan penanganan kesalahan dapat memanfaatkan kelas Laboratorium Komputer Dasar asar 1 & 2 Unpad | Tim Asisten Page 53 of 62 . Kasus ini menyebabkan munculnya pesan kesalahan incorrect number format .finally Permasalahan di atas dapat ditanggulanginya dengan cara membuat penanganan kesalahan ( error handling ). seperti terlihat pada gambar berikut Bagaimana jika nilai pembagi diberi nilai nol(0)? Program akan menampilkan sebuah window pesan kesalahan. Bagaimana jika nilai yang dimasukan bukan merupakan tipe data integer(seperti string “halo”).

2 //Simulasi pembagi nol dengan exception using System.Windows. class Pecahan { Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 54 of 62 . Sintaks try … catch … finally try { //baris program pada blok try } catch (TipeException-1 var) { //baris program aksi terhadap eksepsi jenis-1 } catch (TipeException-2 var) { //baris program aksi terhadap eksepsi jenis-2 } catch (TipeException-n var) { //baris program aksi terhadap eksepsi jenis-3 } finally { //baris program untuk eksepsi lain-lain } Berikut ini adalah aspek kunci tentang sintak dari konstruksi try-catch-finally: · · · · Notasi blok bersifat perintah Setiap blok try. · Setiap blok catch mendefinisikan sebuah penanganan exception. terdapat satu atau lebih blok catch. atau keduanya. tetapi hanya satu blok finally Blok catch dan blok finally harus selalu muncul dalam konjungsi dengan blok try Blok try harus diikuti oleh paling sedikit satu blok catch atau satu blok finally. jika di dalam blok try terjadi sebuah exception. Dalam sebuah blok try bisa menangkap lebih dari satu jenis exception dengan catatan setiap exception tersebut harus ditangkap dalam blok catch yang bersesuaian dengan tipe dari exception yang bersangkutan atau super classnya.Forms. maka eksekusi pada blok try tersebut akan segera dihentikan dan berpindah ke blok catch dengan tipe exception yang sesuai dengan jenis exception yang terjadi. Header dari blok catch harus membawa satu argumen. Sebuah method yang melemparkan sebuah exception hanya dapat dipanggil di dalam sebuah blok try yang diikuti dengan blok catch. dimana exception pada blok tersebut akan ditangani. Latihan 8. Exception harus menjadi class pelempar atau satu dari subclasses -nya. using System.Modul Praktikum Pemrograman III (C#) dan method exception yang disediakan oleh C#.

Show( "Anda harus masukan dua bil. "Berusaha membagi dengan nol" .WriteLine( "\nHasil: {0:D} / {1:D} = {2:D}" .Modul Praktikum Pemrograman III (C#) static void Main() { try { // mendapatkan pembilang dan pembagi Console . } catch ( FormatException ) { //Console.Message.ReadLine()). MessageBox.ToInt32( Console . Console . kamu akan belajar cara pembuatan exception yaitu dengan menggunakan keyword throw. int pembagi = Convert . Caranya kamu buat suatu method atau kelas . MessageBoxIcon. } catch ( DivideByZeroException e) { //Console.ToInt32( Console .Write( "Masukan nilai pembagi: " ). // bagi dua bilangan dan tampilkan hasilnya int hasil = bilang / pembagi.OK.OK.ReadLine()). MessageBox. Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 55 of 62 .Write( "Masukan nilai pembilang: " ). MessageBoxButtons.WriteLine(e)." .Show(e. Console .Error).3 Pembuatan Exception Sendiri Selain penggunaan kelas exception. } } // end Main } // end class pecahan 8. Berikut ini. bilang. MessageBoxButtons. MessageBoxIcon.WriteLine(e).WriteLine( "keluar Program" ). Penanganan kesalahan dapat juga kamu definisikan sendiri. pembagi. hasil). "Format bilangan tidak valid" .Error). } finally { Console . integer. int bilang = Convert .

bilang.ReadLine()). Console .Windows. Buat sebuah aplikasi untuk menghitung akar kuadrat dari suatu bilangan bulat positif yang dimasukan oleh user.Forms. } new Exception ( "Pembagi tidak boleh nol" ). Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 56 of 62 . jika user memasukan bilangan negatif atau bilangan real positif. MessageBoxButtons. // bagi dua bilangan dan tampilkan hasilnya int hasil = bagi(bilang.Modul Praktikum Pemrograman III (C#) Latihan 8.Show(e. MessageBoxIcon.pembagi). int pembagi = Convert .Write( "Masukan nilai pembagi: " ).Message. using System. int bilang = Convert .4 Tugas Praktikum 1.WriteLine( "\nHasil: {0:D} / {1:D} = {2:D}" . pembagi.Error). Namun. "Pembagi Nol" . int y) { if (y == 0) { throw } else return x/y.OK.Write( "Masukan nilai pembilang: " ).3 //Simulasi pembagi nol dengan exception sendiri using System. hasil).ToInt32( Console . static void Main() { try { // mendapatkan pembilang dan pembagi Console . } } // end Main } // end class 8.ToInt32( Console . class PecahanExceptionSendiri static { int bagi( int x. } catch ( Exception e) { MessageBox. Console .ReadLine()). maka aplikasi akan memberikan informasi kesalahan yang sesuai.

yaitu mscorlib. Memahami konsep stream 2. Kelas StreamWriter merupakan turunan dari kelas abstrak TextWriter. kamu bisa lihat pada msdn library for Visual Studio 2008. Untuk memahami kemampuan StreamWriter.1 Menciptakan File Kelas StreamWriter dan StreamReader berguna untuk membaca atau menulis data karakter (seperti string). Kelas TextWriter dan StreamWriter digunakan untuk menulis data teks ke aliran karakter. buffer secara otomatis dibersihkan Flush() Method ini membersikan semua buffer dan Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 57 of 62 . Namun. Pada proses. Dalam framework . Kelas pada System. structure. kita harus mempelajari anggota kelas TextWriter terlebih dahulu. basis binary.Encoding. Anggota kelas abstrak TextWriter dapat dilihat pada tabel berikut: Anggota Kelas Deskripsi Close() Method ini menutup writer dan membebaskan sumber daya yang berkaitan.Modul Praktikum Pemrograman III (C#) BAB IX FILE DAN STREAM Tujuan : 1. basis string.NET. interface.IO. Mampu menciptakan file 3.IO kebanyakan menangani manipulasi direktori dan file. kita dapat merubah konfigurasinya pada System.IO mendefinisikan sekumpulan kelas. dan delegate yang mana dikemas dalam kelas library.Text. Kelas-kelas ini didefinisikan dalam namespace System. System. Mampu membaca dan memanipulasi file C# menyediakan suatu kelas yang mampu membaca dari dan menulis ke basis karakter. Secara default . kedua kelas ini bekerja pada lingkungan karakter Unicode. 9. ada juga kelas yang melayani pembacaan dan penulisan ke string buffer seperti lokasi memori. enumeration. dan basis memori.dll. Penjelasan tentang kelas library. Tetapi.dll dan System.

Write() Method overloaded yang menulis data ke aliran teks tanpa memberikan garis baru WriteLine() Method overloaded yang menulis data ke aliran teks dengan sbuah garis baru Latihan 9.WriteLine( "Tut-tut-tut" ). sw. sw. Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 58 of 62 .WriteLine( "Siapa hendak turut" ).Modul Praktikum Pemrograman III (C#) tidak menutup writer NewLie Properties ini menunjukan penambahan baris baru.txt" ). } public new } }} static void Main( string [] args) { StreamWriter ( @"d:\\ CiptakanFile (). using System. sw.1 using System.Close(). Console . //memasukan baris baru sw.NewLine).ReadLine(). // selalu dibutuhkan untuk menutup stream sw.WriteLine( "File berhasil dibuat" ).WriteLine( "Ke Bandung Surabaya" ).Write(sw.WriteLine( "Kereta Api" ). sw." ). sw. namespace BelajarFile { public class CiptakanFile { public CiptakanFile() { StreamWriter sw = new ciptakanfile.IO.. Console .Write( "Naik kereta api..

Kelas StreamReader merupakan turunan dari kelas abstrak TextReader. using System.2 using System.2 Membaca File Kamu dapat menggunakan kelas StreamReader untuk membaca dan mengubah data file teks menjadi aliran ( stream ) karakter. Tanda -1 menunjukan akhir dari stream. namespace BelajarFile { public class MembacaFile { public MembacaFile() { StreamReader sr = new StreamReader ( @"d:\\ Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 59 of 62 . anggota kelas StreamRader minimal seperti kelas TextReader. dimulai dari awal indeks ReadLine() Membaca sebaris karakter dari aliran dan mengembalikan data sebagai sebuah string (string null menunjukan EOF) ReadToEnd() Membaca semua karakter dari posisi tertentu sampai akhir aliran dan mengembalikannya sebagai string tunggal Latihan 9.IO. Cara bacanya adalah perbaris Read() Membaca data dari aliran masukan ReadBlock() Membaca sekelompok karakter dari aliran dan menulis data ke buffer. Jadi.Modul Praktikum Pemrograman III (C#) 9. Adapun anggota kelas TextReader dapat dilihat pada tabel berikut: Anggota Kelas Deskripsi Peek() Mengembalikan nilai karakter selanjutnya tanpa merubah posisi pembaca ( reader ).

//StreamWriter sw = fi. yaitu dengan cara membuat sebuah objek StreamWriter sebagai tempat stream dan menggunakan method AppendText() dari kelas File sebagai penambah teks ke file. Latihan 9.Peek() >= 0) { str = str + sr. Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 60 of 62 . sw.IO.WriteLine(str). public new } } } static void Main( string [] args) { MembacaFile (). Console .Close().txt").Modul Praktikum Pemrograman III (C#) ciptakanfile.txt" ). using System. string str = "" . namespace BelajarFile { public class MenambahkanIsi { public MenambahkanIsi() { //Penggunaan kelas File dengan static StreamWriter sw = File . Console .ReadLine(). sw. / /Penggunaan kelas FileInfo dengan instansiasi //FileInfo fi = new FileInfo(@"d:\\ praktikum\modul7\ciptakanfile. } "\n" . 9.txt" ).WriteLine( "bolehlah naik dengan percuma" ).ReadLine() + } sr.AppendText( @"d:\\ ciptakanfile. while (sr.3 using System.3 Menambah Isi File File teks yang sudah ada dapat kita tambah isinya.Close().AppendText().

Console . 3. } public new } } } static void Main( string [] args) { MenambahkanIsi ().WriteLine( "Menambahkan isi berhasil" ). mengambil tabungan dan melihat saldo! Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 61 of 62 . Buatlah program untuk mendaftarkan/membuat list semua file dan direktori yang ada di drive C. 9. 2. Buatlah program tabungan yang disimpan dalam file ! Informasi terdiri dari : menabung.ReadLine().Modul Praktikum Pemrograman III (C#) Console . Buatlah program counter untuk pengunjung ! data file disimpan satu folder dengan program aplikasi.4 Tugas Praktikum 1.

baris yang sama Tabulasi horizontal Tabulasi vertical Mengubah karakter ascii menjadi oktal Mengubah karakter ascii menjadi heksadesimal Karakter petik ganda Garis miring terbalik (backslash) Mengubah karakter kontrol ascii ke dalam heksadesimal Escape o001B Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 62 of 62 .Modul Praktikum Pemrograman III (C#) TABEL LAPIRAN Tabel Operator Jenis Operator Operator Numerik * / % ++ -Operator Bitwise << >> ~ >= < <= == != Operator Logika && || ! Operator Address & * Operator Kali Bagi Modulo Increment (plus 1) Decrement (minus 1) Shift Left (pergeseran bit ke kiri) Shift Right (pergeseran bit ke kanan) Not Lebih besar sama dengan Lebih kecil Lebih kecil sama dengan Sama dengan Tidak sama dengan And Or Not Address of (menghasilkan pointer) Indirection operator (mengakses memori yang ditunjuk pointer) Keterangan Table escape Sequence Karakter Escape \a \b \f \n \r \t \v \0+0 \x20 \” \\ \uD020 \e Arti Bunyi Bel (bell atau alert) Mundur satu spasi (backspace) Ganti Halaman (form feed) Ganti baris bar (new line) Ke kolom pertama.

Modul Praktikum Pemrograman III (C#) Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 63 of 62 .