P. 1
49841901-Modul-C

49841901-Modul-C

|Views: 715|Likes:
Dipublikasikan oleh Nooer Chytieolemoettentlye

More info:

Published by: Nooer Chytieolemoettentlye on Aug 21, 2011
Hak Cipta:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

11/23/2012

pdf

text

original

Sections

  • 1.1 Pengenalan Framework .NET
  • 1.2 Tipe Data
  • 1.4 Tugas Praktikum
  • 2.1 Pendahuluan
  • 2.2 Struktur Runtutan
  • 2.3 Stuktur Pemilihan
  • 3.1 Pendahuluan
  • 3.2 Struktur for
  • 3.3 Struktur While
  • 3.4 Struktur do..while
  • 3.5 Struktur foreach
  • 3.6 Pernyataan Break
  • 3.7 Pernyataan Continue
  • 3.8 Pernyataan Goto
  • 3.9 Tugas Praktikum
  • 4.1.1 Array satu dimensi
  • 4.1.2.1 Array dari Array
  • 4.1.2.2 Multidimensi Array
  • 4.2.1 Kelas-kelas Collection
  • 4.2.2 Generic Collection Class
  • 4.3 Tugas Praktikum
  • 5.1 BUBLE SORT
  • 5.2 SHAKER SORT
  • 5.3 SELECTION SORT
  • 5.4 INSERTION SORT
  • 5.5 SEQUENTIAL SEARCH
  • 5.6 BINARY SEARCH
  • 5.7 Tugas Praktikum
  • 6.1 Class, Variabel, Fungsi
  • 6.2 Tugas Praktikum
  • 7.1 Pewarisan
  • 7.2 Abstract Class
  • 7.3 Interface
  • 7.4 Tugas Praktikum
  • 8.1 Pendahuluan
  • 8.2 Penanganan kesalahan dengan Try – catch - finally
  • 8.3 Pembuatan Exception Sendiri
  • 8.4 Tugas Praktikum
  • 9.1 Menciptakan File
  • 9.2 Membaca File
  • 9.3 Menambah Isi File
  • 9.4 Tugas Praktikum

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

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

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

Keyword using digunakan untuk memberitahu compiler class yang digunakan pada aplikasi. long. 1. Keyword class digunakan untuk mendeklarasikan class dengan nama Program. delapan sisanya digunakan untuk kalkulasi numerik. ushort. sbyte. Tetapi char type digunakan untuk mendefinisikan tipe data karakter. Salah satu keunggulan dari C# adalah tersedianya predefined class yang dapat langsung digunakan dalam aplikasi. short. Kode atau keterangan di dalam tag komentar tidak akan dieksekusi oleh compiler. Keyword using System. Deklarasi static void Main(string[] args) adalah method utama yang dijalankan pada class Program . pada C# digunakan t ag // (jika hanya satu baris saja) atau diapit t ag /* */ (jika komentarnya lebih dari satu baris). 5. 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.1 dan 1.2 Tipe Data C# mempunyai dua jenis built-in tipe data yaitu value types dan reference types. 2.int. Sintaks Console. 6.WriteLine digunakan untuk menampilkan output ke layar console. 4. 3. Class di dalam namespace dapat dipanggil dengan mencantumkan nama namespace-nya terlebih dahulu . Keyword namespace digunakan untuk mendeklarasikan ruang lingkup dari class yang kamu buat.Modul Praktikum Pemrograman III (C#) Penjelasan perbagian dari Latihan1. Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 6 of 62 . Tag // digunakan sebagai komentar. pada baris pertama mempunyai arti kamu dapat menggunakan class-class yang ada pada namespace System. 7.2 di atas adalah sebagai berikut: 1. dan ulong. uint. byte.

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

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

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

Memahami struktur runtutan 2. struktur pemilihan dan struktur pengulangan. Mampu membuat program sederhana dengan menggunakan struktur percabangan 2. Memahami struktur pemilihan if-else dan switch-case 3. Struktur kontrol pemilihan dan pengulangan memanfaatkan operator dalam menentukan suatu kondisi.1 Pendahuluan Struktur kontrol yang ada pada bahasa C# adalah struktur runtutan. Operator-operator yang terkait dengan proses seleksi kondisi adalah Operator Logika dan Relasional (hubungan). 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 .Modul Praktikum Pemrograman III (C#) BAB II STRUKTUR RUNTUTAN & PERCABANGAN Tujuan : 1. 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.

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

} 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. Jika lebih dari satu pernyataan .) walaupun Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 12 of 62 . sedangkan jika kondisi tersebut tidak terpenuhi maka program akan keluar dari struktur if. maka harus menggunakan tanda ‘{‘ dan ‘}’. Bentuk umum Nested if if (kondisi yang diseleksi){ Pernyataan 1. } else if (kondisi yang diseleksi){ Pernyataan 3. Setiap pernyataan sebelum else. } 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. } diakhiri tanda titik koma (. } else { Pernyataan 2. } else { Pernyataan 4. Bentuk umum if – else if (kondisi yang diseleksi) { Pernyataan 1.

Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 13 of 62 . break. break.Modul Praktikum Pemrograman III (C#) Bentuk Umum Switch Switch (ekspresi) { case konst-1 : Pernyataan -1. case konst-2 : Pernyataan -2. break.Write( "Masukan IPK : " ). : : case konst-n : Pernyataan -n.ReadLine()).2 : using System. “ekspresi” dapat berupa konstanta integer atau karakter. class Latihan2_2 { static void Main( string [] args) { Console . float ipk = Convert . Latihan2. } Struktur switch–case–default digunakan untuk penyeleksian kondisi dengan kemungkinan yang terjadi cukup banyak.ToSingle( Console . break.    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. default : Pernyataan -df.

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

Buatlah Tampilan Menu b. Hitung total harga Total Harga Rp. Baru pilih horror atau romantic Horor : 2 Romantic : 3 c. atau yang lainnya ! Input : Masukkan Karakter : A Output: Karakter yang diinputkan adalah huruf besar 2. default: Console. 8500. break. case 7: Console. } } } 2. break. apakah huruf Besar. break.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 . digit. spasi.WriteLine("Hari Jumat"). huruf kecil.Modul Praktikum Pemrograman III (C#) Console.4 Tugas Praktikum 1. Buatlah program untuk mempermudah pembayaran di suatu bioskop Jenis Horor No 1 2 3 Romantic 1 2 3 Output : a.WriteLine("Hari Sabtu").WriteLine("Anda salam memasukan input (1-7)"). Buatlah Program untuk mengetahui karakter yang diinputkan.

Kapan kita membutuhkan suatu proses pengulangan? 2. Ada beberapa macam bentuk pengulangan.Modul Praktikum Pemrograman III (C#) TUGAS PENDAHULUAN III 1. Jelaskan pengertian dari penggunaan: 3. 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.

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

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

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

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

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

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.Modul Praktikum Pemrograman III (C#) TUGAS PENDAHULUAN IV 1. Apakah perbedaan larik dengan variabel biasa? 2. Tuliskan deklarasi array dimensi 1 dan dimensi 2/banyak ? 3. Jelaskan bagaimana penginisialisasian array yang berukuran tetap juga yang tidak berukuran! 6.

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

//Console.} 4. Console..2 Array Multi Dimensi 4..8}". "nilai")..[]. i.1. "indeks".ReadLine().} for (int i = 0. bil[i]).[indeks] Ket :  <type_data_array> = semua jenis tipe data  = nilai.[] <nama_array> = new <tipe_data_array>[size][].1.[]. Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 24 of 62 .Write("Masukkan bilangan : ")..[] = 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].Length.WriteLine("{0}{1. i++){ bil[i] = i + i.2.. } Console.1 : static void Main(string[] args) { int[] bil = new int[10].Modul Praktikum Pemrograman III (C#) Latihan program 4. < nama_array > [indeks][indeks].Length. <nama_array>[indeks]= new <tipe_data_array>[size]. i < bil.WriteLine("{0}{1. [][]. i++){ Console. for (int i = 0.8}". i < bil.1 Array dari Array <tipe_data_array>[][].

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

matriks[i.3 : using System. i < 3.ReadLine(). i++) { for ( int j = 0. j < 3.] matriks = new Console .WriteLine( "Masukkan nilai matriks" ). j < 3. matriks[i.Collections”.WriteLine(). Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 26 of 62 .j] = int .WriteLine( "Menampilkan nilai matriks" ).NET Framework mempunyai paket (kumpulan kelas) untuk menangani kebutuhan data yang tidak bisa ditentukan jumlah banyaknya data suatu array yang dibutuhkan. j++) { Console .j]).ReadLine()). Console .NET Framework menyediakan paket yang bernama Collection yang terdapat di bawah paket “System.WriteLine(). i++) { for ( int j = 0. i. for ( int i = 0. for ( int i = 0. .Write( "{0} " . j++) { Console . Untuk menangani permasalahan di atas. } Console . } } } 4. i < 3.Parse( Console . int [. } } Console . } Console .2 Collections . namespace Bab4 { class Latihan43 { // Multidimensional arrays: public static void Main( string [] args){ int [3.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. {1}]= " .Write( "matriks[{0}. j).3].

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

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

IEnumerator < string > iterator = listString.Current. Buatlah program polling angka (menunjukan berapa banyak tiap huruf diinputkan)! 3. 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 .WriteLine( "Tampilkan semua kata" ). pengurangan serta perkalian matriks menggunakan Array Multidimensi! 5. Buatlah program yang menghitung nilai maksimum. } } } 4.GetEnumerator(). while (iterator.MoveNext()) { string str = iterator.Modul Praktikum Pemrograman III (C#) } Console . Buatlah program penjumlahan. Console . Buatlah program yang dapat memunculkan : i) Deretan Bilangan Prima ii) Deretan Bilangan Fibbonaci Dengan menggunakan konsep Array! 2.WriteLine(str). } Console .3 Tugas Praktikum 1.WriteLine(). Buatlah program konversi dari : i) Desimal ke Biner ii) Desimal ke Hexadesimal 4.ReadLine().

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

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

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

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

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

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

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

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

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

7 Tugas Praktikum 1. if (v == a[m]) return m.Modul Praktikum Pemrograman III (C#) return i.WriteLine( "Checking . {0}" .Length. } } } 5.1. int count = 0. int m = (l + r) / 2. } return -1. int r = a.. else l = m + 1. } static int BinarySearch( int [] a. while (r >= l){ Console . if (v < a[m]) r = m . } return -1. int v) { int l = 0. ++count).. 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 . Carilah bentuk sorting lain menggunakan : a) Shell Short b) Quick Sort Kemudian aplikasikan dalam bentuk program aplikasi shorting karakter! 2.

dan property ! 4. access modifier.Modul Praktikum Pemrograman III (C#) TUGAS PENDAHULUAN VI 1. Jelaskan teknik pemrograman berbasis objek ! 6. 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 . Apa yang Anda ketahui tentang konstruktor. Sebutkan dan Jelaskan hak access modifier dalam C# ! 5. Sebutkan dan jelaskan jenis – jenis operasi string ! 2.

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

Ket :  <access_modifier> = cara mengakses class. // instruksi-intruksi lainnya return nilai.WriteLine( "Nama Mata Kuliah: Matematika Dasar" ). Struktur fungsi: <access_modifier> <return_type> <nama_fungsi>(<tipe_data> <nama_parameter>. namespace Bab6 { public class Mahasiswa { private private private int 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. Console .. } } } Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 42 of 62 . string mail.WriteLine( "Nomor Induk Mahasiswa: " + nim). string nama. variabel.Modul Praktikum Pemrograman III (C#) <access_modifier> <tipe_data> <nama_variabel>. } public void CetakKartuUjian() { Console ..).1 : using System. public int Jawab( string soal) { int nilai = 0.

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

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

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

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

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

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

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

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

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

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. Latihan 8.Windows. 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. using System. maka eksekusi pada blok try tersebut akan segera dihentikan dan berpindah ke blok catch dengan tipe exception yang sesuai dengan jenis exception yang terjadi.2 //Simulasi pembagi nol dengan exception using System. atau keduanya. Exception harus menjadi class pelempar atau satu dari subclasses -nya.Modul Praktikum Pemrograman III (C#) dan method exception yang disediakan oleh C#. Header dari blok catch harus membawa satu argumen. · Setiap blok catch mendefinisikan sebuah penanganan exception. jika di dalam blok try terjadi sebuah exception. Sebuah method yang melemparkan sebuah exception hanya dapat dipanggil di dalam sebuah blok try yang diikuti dengan blok catch. 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. terdapat satu atau lebih blok catch.Forms. class Pecahan { Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 54 of 62 . dimana exception pada blok tersebut akan ditangani.

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

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

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

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

anggota kelas StreamRader minimal seperti kelas TextReader. 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.2 using System. Kelas StreamReader merupakan turunan dari kelas abstrak TextReader. Cara bacanya adalah perbaris Read() Membaca data dari aliran masukan ReadBlock() Membaca sekelompok karakter dari aliran dan menulis data ke buffer. Jadi. namespace BelajarFile { public class MembacaFile { public MembacaFile() { StreamReader sr = new StreamReader ( @"d:\\ Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 59 of 62 .Modul Praktikum Pemrograman III (C#) 9.IO. Adapun anggota kelas TextReader dapat dilihat pada tabel berikut: Anggota Kelas Deskripsi Peek() Mengembalikan nilai karakter selanjutnya tanpa merubah posisi pembaca ( reader ). 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.

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

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

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. 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#) Laboratorium Komputer Dasar 1 & 2 Unpad | Tim Asisten Page 63 of 62 .

You're Reading a Free Preview

Mengunduh
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->