TUGAS
BAHASA PEMROGRAMAN
Kelompok III :
Monalica
Erica W. (123214003)
Dinni
Rahma Oktaviani (123214004)
Darul Yuliana (123214015)
Alfiyatuz
Zahra (123214204)
Febby Sintanova (123214212)
Aisyah
N.A (123214217)
Erva
Ani Dwi K. (123214221)
Amalia
Sri Wulandari (123214222)
Masfukhatul
Wakhidah (123214224)
KELAS 2012 B
MATEMATIKA
JURUSAN MATEMATIKA
FAKULTAS
MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS
NEGERI SURABAYA
A. Fungsi String
Di
C#, ada banyak fungsi manipulasi yang bisa digunakan tapi yang benar-benar
punya manfaat, menurut saya dan didukung oleh artikel yang saya baca ada 6
fungsi yaitu concat(gabung), insert(memasukkan), remove(menghapus),
extract(mengambil), replace(mengganti), dan copy(menyalin).
1. Concat String
Metode
ini digunakan untuk mengkombinasi atau menggabungkan sebuah string untuk
ditambahkan pada akhir string lainnya. Parameter yang digunakan yaitu
string.Concat (string1, string2), contoh:
string awal =
"ini adalah ";
string akhir = "string digabung!";
string concat =
string.Concat(awal, akhir); //hasil: concat="ini adalah
string digabung!"
2.
Insert String
Jikalau
metode concat string digunakan untuk menggabungkan string hanya di posisi awal
atau di akhir saja, maka metode insert string digunakan untuk menggabungkan
kata di posisi manapun. Metode ini membutuhkan 2 parameter, parameter pertama
adalah sebagai indikasi posisi dimana string dimasukkan dan parameter kedua
adalah sebagai parameter string apakah yang dimasukkan. Contoh:
string template =
"Tolong Nama Dimasukkan";
string tutor =
"Lisa";
Console.WriteLine(template.Insert(12,
tutor));
// Outputs:
"Tolong Nama Lisa Dimasukkan"
3.
Remove String
Metode
insert memiliki metode yang berkebalikan yaitu metode remove. Dengan melakukan
akses terhadap metode ini, maka dengan mudah karakter yang diminta akan
dihapus. Metode ini memiliki parameter overload(mempunyai 2 / lebih metode yang
sama dengan parameter yang berbeda). Secara umum saya lebih banyak menggunakan
metode yang memiliki 2 parameter yaitu parameter untuk menentukan posisi awal
dari parameter yang dihapus, dan parameter yang digunakan untuk menentukan
jumlah karakter yang akan dihapus. Daripada bingung langsung saja saya beri
contoh:
string contoh =
"seorang anak melempar bola pada temannya";
string hasil =
contoh.Remove(21); // contoh = "seorang anak melempar "
hasil = contoh.Remove(21,
11); // contoh = "seorang anak
melempar temannya"
4.
Extract String
Bagian
ini adalah metode favorit saya, karena saya tidak perlu menghapus atau memotong
beberapa character untuk mengambil sebuah string dari sebuah kalimat. Metode
yang digunakan memiliki parameter yang mirip dengan metode remove. Langsung
saja ke contoh:
string contoh =
"seorang anak melempar bola pada temannya";
string hasil =
contoh.Substring(21); // contoh = "bola pada temannya"
hasil =
contoh.Substring(0, 12); // contoh = "seorang anak"
5.
Replace String
Untuk metode ini, paling banyak digunakan waktu kita
malas untuk mengganti tiap string secara manual. Metode ini memiliki dua
parameter, pertama adalah untuk teks yang akan diganti dan parameter kedua
adalah teks pengganti. Contoh yang saya lampirkan:
string contoh =
"Warna sapi itu putih dan abu-abu";
string hasil =
contoh.Replace("putih", "kuning"); // hasil = "Warna sapi itu
kuning dan abu-abu"
6.
Copy String
Ini
merupakan metode terakhir yang menurut saya bermanfaat dalam melakukan penipuan
terhadap(baca:manipulasi) string. Hasil keluaran dari metode ini berupa copy
dari string yang ada. Contohnya:
string contoh =
"Warna sapi itu putih dan abu-abu";
string hasil =
string.Copy(contoh); // hasil = "Warna sapi itu putih dan abu-abu”;
B.
Fungsi Matematika
Dalam
class math banyak sekali fungsi-fungsi yang tersedia, diantaranya
perpangkatan, akar dan trigonometri dan fungsi-fungsi sebagainya. disini saya
akan contohkan operasi perpangkatan dan akar kuadrat, gambar disamping ini
adalah salah satu contoh hasil operasi operasi yang ada di class math.
Untuk membuat
projectnya silahkan ikuti instruksi instruksi dibawah ini
1.
Buat project baru
pada IDE visual studio 2010, untuk nama project silahkan sesuaikan.
2.
Tambahkan dua
componen button, empat komponen textbox dan empat komponen label. atur dan tata
sedemikian rupa.
3.
Double klik pada
button satu untuk membangkitkan event klik pada button satu. tambahkan code
berikut ini
double
bilangan =0;
double
hasil =0;
bilangan =
Convert.ToDouble(textBox1.Text);
hasil =Math.Pow(bilangan,2);textBox2.Text=hasil.ToString();
4.
Double klik pada
button dua untuk membangkitkan event klik pada button tersebut, tambahkan code
berikut ini
double
bilangan =0;
double
hasil =0;
bilangan =
Convert.ToDouble(textBox3.Text);
hasil = Math.Pow(bilangan, 0.5);
textBox4.Text =
hasil.ToString();
5.
Done. program selesai
dibuat. sekarang running program yang telah selesai dibuat, jika langkah
langkah diatas dilakukan dengan benar maka saat program running program akan
seperti pada gambar diatas.
C.
Fungsi Date/Time dalam Bahasa Pemrograman
Tutorial ini adalah
operasi penjumlahan dan operasi pengurangan(Operasi aritmatika) pada type data
tanggal (date). Sekilas memang
tampak sederhana, akan tetapi operasi aritmatika pada type data tanggal (date) disuatu
bahasa pemrograman sangat
penting. terutama jika aplikasi yang dibangun melibatkan data-data type tanggal seperti aplikasi
rental buku, aplikasi persewaan dan lain-lain
Sebagaicontoh akan
dilakukan operasi-operasi yang sederhana, agar mudah dimengerti. Seperti biasa
langkah pertama adalah menyiapkan form aplikasi.
File->new project,
masukan nama project, klik OK
1.
Setelah form
terbentuk tambahkan 4 label, 2 textbox,1 datetimerpicker, dan 1 button.
atur dan tata komponen-komponen.
2.
Setelah itu tambahkan
kode berikut ini pada button proses
3.
DateTime sekarang;
DateTime akhir;
sekarang=dateTimePicker1.Value; akhir=sekarang.addDays(convert.toInt16(textbox1.text)); textBox2.Text=akhir.ToString();
DateTime akhir;
sekarang=dateTimePicker1.Value; akhir=sekarang.addDays(convert.toInt16(textbox1.text)); textBox2.Text=akhir.ToString();
4.
Setelah selesai
lakukan runing pada program, lihat hasilnya.
Memang operasi ini
sangat sederhana, akan tetapi jika suatu aplikasi yang besar yang
mengincludekan operasi-operasi type data tanggal programer akan
dipusingkan dengan operasi tersebut, sehingga dengan operasi-operasi aritmatika type data tanggal (date) diharapkan
programer fokus akan algoritma mereka, tidak disibukan lagi dengan
operasi-operasi penjumlahan maupun penguranganjam,hari,tanggal,tahun dan sebagainya.
D.
User
Defined Function
User
define function adalah fungsi yang dibuat sendiri oleh pengguna dikarenakan fungsi
yang disediakan program (fungsi built-in) kurang sesuai dengan yang dibutuhkan
pengguna sehingga harus menggabungkan beberapa fungsi bult-in untuk membuat
fungsi yang sesuai dengan pengguna.
Contoh
user-defined function:
Procedure:
@class program
{
public
static void MenuPilihan ()
{
Console.WriteLine(“MENU
PROGRAM”);
Console.WriteLine(“1.
Hitung luas segitiga”);
Console.WriteLine(“2.
Hitung luas lingkaran”);
Console.WriteLine(“3.
Hitung luas persegi panjang”);
Console.WriteLine(“Exit”);
Console.WriteLine();
Console.Write(“Pilihan
Anda=”);
}
public
static double lSegitiga(double a, double t)
{
return
0.5*a*t;
}
public
static double lLingkaran (double r)
{
return
Math.Pi*r*r;
}
public
static double lPersegiPanjang(double p, double l)
{
return p*l
}
static
void Main(string[] args)
{
int pilih;
int alas,
tinggi, panjang, lebar, jari;
MenuPilihan();
pilih=int.Parse(Console.ReadLine());
switch
(pilih)
{
case 1:
Console.Write(“Alas=”);
alas=int.Parse(Console.ReadLine());
Console.Write(“Tinggi=”);
tinggi=int.Parse(Console.ReadLine());
Console.Write(“Luas
segitiga=”+lSegitiga(alas,tinggi));
break;
case 2:
Console.Write(“Jari-jari=”);
jari=int.Parse(Console.ReadLine());
Console.Write(“Luas
segitiga=”+lLingkaran(jari));
break;
case 3:
Console.Write(“Panjang=”);
panjang=int.Parse(Console.ReadLine());
Console.Write(“Lebar=”);
lebar=int.Parse(Console.ReadLine());
Console.Write(“Luas
segitiga=”+lPersegiPanjang(panjang,lebar));
break;
case 4:
break;
}
Console.Readkey();
}
E.
Pengertian OOP
Pemrograman berorientasi objek (Inggris: object-oriented programming disingkat OOP) merupakan paradigma pemrograman
yang berorientasikan kepada objek. Semua data dan fungsi di dalam paradigma ini
dibungkus dalam kelas-kelas atau objek-objek.
Perbedaan
Class dan object dapat dianalogikan jika anda ingin membangun rumah Class
adalah blueprint / gambar (berisi spesifikasi lengkap dari rumah yang akan
dibuat, ukuran, jumlah, dll). Sedangkan object adalah bentuk fisik / rumah yang
dibangun berdasarkan blueprint / class yang sudah ada, biasa disebut instan
class / object.
C# memiliki beberapa
modifier class yaitu:
Access Modifiers
digunakan untuk menentukan hak akses dari class dan method, adapun access
modifier yang ada pada C# sebagai berikut:
Class pada C# terdiri dari :
•
Instance Variable / Field
•
Method
•
Method
Method pada C# dapat
memiliki banyak argumen dengan tipe data yang berbeda.
•
Instance
Member
Field,
property, dan method dalam suatu class bisa merupakan instance member atau static
member. Instance member dibentuk ketika class tersebut dibuat instan-nya,
secara default field, property, dan method yang tidak diberi keyword static
merupakan instance member.
Konstruktor adalah method yang
namanya sama dengan nama class-nya. Konstruktor digunakan untuk inisialisasi
variabel ketika membuat instan class / objek baru.
Bandingkan
dengan logika pemrograman terstruktur.
Setiap objek dapat menerima pesan, memproses data, dan mengirim
pesan ke objek lainnya,
Para programmer mengembangkan teknik yang diberi nama
“Objcet Oriented Programming”, dengan tujuan yang sederhana yaitu mengatur
kompleksitas dengan memodelkan aspek esensial yang ada. Jika model yang
dikembangkan semakin mendekati problem yang akan dipecahkan maka semakin mudah.
Persoalan tersebut dapat dimengerti sehingga program lebih mudah ditulis dan
di-maintain.
F.
Konsep Object Oriented Programing
Empat
konsep yang harus dapat dimiliki oleh suatu bentuk pemrograman yang
berorientasi object adalah:
1. Enkapsulasi
2. Abstrasi
3. Inheritance
4. Polymorphism
1.
Enkapsulasi
Enkapsulasi adalah penyatuan antara proses-proses yang terjadi dan sejumlah
data yang dikelolah kedalam suatubentuk kelompok tertentu. Pada OOP informasi
dibungkus dalam sebuah Class sehingga orang yang menggunakan class tersebut
tidak perlu tahu detail-nya, hanya cukup mengetahui method dan property apa
saja yang ada dalam class tersebut beserta kegunaannya.
Anda bisa membuat public
method set dan get untuk memberi dan mengambil nilai variabel , misal:
1:// private member variables
2:privateint Year;
3:
4:publicint getYear() //get method
5: {
6:returnthis.Year;
7: }
8:
9:publicvoid setYear(int Year) //set method
10: {
11:this.Year = Year;
12: }
Selain menggunakan cara tersebut diatas pada C# disediakan object
property untuk memberi nilai dan mengambil nilai dari private variabel
dalam suatu class. Penggunaan object property lebih memudahkan anda dalam
penulisan kode dibandingkan harus membuat dua method set dan get untuk
mengakses satu variabel private. Contoh penggunaan property dapat dilihat pada
contoh kode dibawah ini.
1:class Mahasiswa {
2:privatestring nim;
3:privatestring nama;
4:
5:publicstring Nim {
6: get {
7:return nim;
8: }
9: set {
10:this.nim = value;
11: }
12: }
13:
14:publicstring Nama {
15: get {
16:return nama;
17: }
18: set {
19:this.nama = value;
20: }
21: }
22:
23:publicstring DisplayInfo() {
24:return Nim + " " + Nama;
25: }
26: }
27:
28:class ClassProperty {
29:publicstaticvoid Main(string[] args) {
30: Mahasiswa mhs1 = new Mahasiswa();
31: mhs1.Nim = "22002321";
32: mhs1.Nama = "Erick";
33:
Console.WriteLine(mhs1.DisplayInfo());
34: }u
35: }
2.
Abstraction
Abstraction memiliki pengertian bahwa dalam
mengembangkan perangkat lunak seorang programer akan menggunakan atau
menciptakan sejumlah obyek dimana obyek tersebut akan ada dan berprilaku pada
sistem.
Setiap tipe Window pasti mempunyai bentuk
tampilan yang berbeda misal combobox, listbox, button, dll. Berarti setiap
class turunan dari Window harus mempunyai method DrawWindow() nya sendiri yang
berbeda satu sama lain. Untuk memastikan bahwa setiap class turunan Control
harus mempunyai method DrawWindow() maka anda harus mendefinisikan class
tersebut sebagai abstract class dan memiliki method abstract yang
belum diimplementasikan.
Abstract method tidak mempunyai
implementation, abstract method hanya semacam kontrak yang harus dipenuhi.
Semua class yang diturunkan dari class yang mempunyai abstract method harus
mengimplementasikan method tersebut.
Class yang didefinisikan sebagai abstract
class tidak dapat dibuat instan class / objek, class yang didefinisikan
abstract hanya dapat digunakan dengan cara diturunkan.
1:publicabstractclass Control {
2:privateint top;
3:privateint left;
4:
5:protectedint Top {
6: get { returnthis.top;}
7: set { this.top = value;}
8: }
9:protectedint Left {
10: get {returnthis.left;}
11: set {this.left = value;}
12: }
13:public Control(int top, int left) {
14: Top = top;
15: Left = left;
16: }
17://abstract method harus diimplementasikan
18:publicabstractvoid DrawWindow();
19: }
20:
21:publicclass ListBox : Control {
22:privatestring listBoxContent;
23:public ListBox(int top, int left, string contents)
24: : base(top, left) {
25:this.listBoxContent = contents;
26: }
27:
28:publicoverridevoid DrawWindow() {
29: Console.WriteLine("Position :({0},{1})", Top, Left);
30: Console.WriteLine("Menuliskan string pada listbox: {0}",
31: listBoxContent);
32: }
33:
34: }
35:
36:publicclass Button : Control {
37:public Button(int top, int left) : base(top, left) { }
38:publicoverridevoid DrawWindow() {
39: Console.WriteLine("Menggambar button pada ({0},{1})", Top, Left);
40: }
41: }
42:class LatAbstract {
43:staticvoid Main(string[] args) {
44: Control[] winArray = new Control[3];
45: winArray[0] = new ListBox(5, 10, "Pada ListBox");
46: winArray[1] = new Button(5, 6);
47:for (int i = 0; i < 2; i++) {
48: winArray.DrawWindow();
49: }
50: }
51: }
Tapi untuk kasus diatas abstract masih
mempunyai keterbatasan, jika anda ingin membuat class DropDownList yang hendak
diturunkan dari class ListBox, maka anda tidak dapat memaksakan method
DrawWindow() harus ada di class tersebut.
3.
Inheritance
Inheritance atau
pewarisan adalah merupakan konsep dimana suatu obyek memiliki sejumlah perilaku
yang dimiliki oleh obyek lain dalam suatu hirarki tertentu.
Pada C# hubungan spesialisasi diimplementasikan
menggunakan prinsip inheritance. Penulisan inheritance di C# sebagai berikut
public class ListBox : Window
Kode diatas berarti class ListBox adalah
turunan dari class Window
Penggunaan inheritance dapat dilihat pada
program dibawah ini
1:publicclass Window {
2://variabel dideklarasikan private sehingga tidak bisa diakses oleh kelas
3://turunannya
4:privateint top;
5:privateint left;
6:
7://objek konstruktor
8:public Window(int top, int left) {
9:this.top = top;
10:this.left = left;
11: }
12:
13:publicvoid DrawWindow() {
14: Console.WriteLine("Draw window pada ({0},{1})",
15: top, left);
16: }
17: }
18:
19:publicclass ListBox : Window {
20://member variable baru pada class anak
21:privatestring listBoxContent;
22:public ListBox(int top, int left, string contents):base(top,left) {
23:this.listBoxContent = contents;
24: }
25:
26://versi baru karena override dari base classnya
27:publicnewvoid DrawWindow() {
28:base.DrawWindow();
29: Console.WriteLine("Menuliskan string pada listbox: {0}",
30: listBoxContent);
31: }
32: }
33:
34:class LatInheritance {
35:publicstaticvoid Main(string[] args) {
36: Window objWindow = new Window(10, 15);
37: objWindow.DrawWindow();
38:
39: ListBox objList = new ListBox(15, 20, "Hello ListBox");
40: objList.DrawWindow();
41: }
42: }
Ada dua aspek yang paling penting pada
inheritance yang pertama adalah code reuse, sebagai contoh ketika anda membuat
class ListBox maka anda dapat menggunakan logic yang sudah dibuat pada class
Window.
Aspek kedua yang tidak kalah penting dari
inheritance adalah polymorhism, poly berarti banyak dan morph berarti bentuk,
jadi polymorphism dapat berarti dapat menggunakan banyak bentuk tanpa harus
mengacu details yang sama.
4. Polymorphism
Polymorphism adalah konsep dimana beberapa obyek
memiliki metode yang sama dengan aksi yang berbeda.
Dari istilahnya Polymorphism kesannya
sulit dan kompleks, tetapi sebenarnya simple, ilustrasinya begini ketika sebuah
perusahaan telpon / provide telpon mengirimkan signal ke anda (dering telpon),
mereka tidak tahu telpon apa yang anda gunakan, bisa model lama dengan dering
kuno, bisa HP dengan dering music mp3, TV Phone, PDA Phone dll. yang provider
tahu bahwa masing-masing telepon mempunyai ‘base type’ telepon dan mempunyai
method untuk berdering. Ketika provider mengirimkan signal mereka hanya
berharap bahwa telepon akan berdering tidak peduli jenis telponnya, nah
provider telepon memperlakukan telepon anda secara polymorphism.
Dari gambar diatas dapat anda lihat,
ListBox is-a Control (karena ListBox turunan dari Control), Button is-a
Control, kita berharap bahwa dapat memperlakukan keduanya sebagai Control.
Misal anda mempunyai banyak control di collection untuk digambar ke windows,
dan mengharapkan ketika memanggil method draw() pada control maka control2
tersebut akan tergambar sesuai dengan tipe objectnya (mis: ListBox,
RadioButton, Command, dll).
Anda dapat mengimplementasikan
polymorphism dengan dua cara yaitu:
·
Membuat virtual method
pada base class (class induk)
·
Membuat class turunan yang mempunyai
method dengan keyword override yang mengganti isi dari method
dengan keyword virtual yang ada pada base class-nya.
Penggunaan prinsip
polymorphism dapat dilihat pada contoh program dibawah ini
1:publicclass Control {
2://variabel dideklarasikan private sehingga tidak bisa diakses oleh
kelas
3://turunannya
4:privateint top;
5:privateint left;
6:
7:protectedint Top {
8: get {
9:returnthis.top;
10: }
11: set {
12:this.top = value;
13: }
14: }
15:
16:protectedint Left {
17: get {
18:returnthis.left;
19: }
20: set {
21:this.left = value;
22: }
23: }
24:
25://objek konstruktor
26:public Control(int top, int left) {
27: Top = top;
28: Left = left;
29: }
30:
31:publicvirtualvoid DrawWindow() {
32: Console.WriteLine("Draw window pada ({0},{1})",
33: top, left);
34: }
35:
36: }
37:
38:publicclass ListBox : Control {
39://member variable baru pada class anak
40:privatestring listBoxContent;
41:public ListBox(int top, int left, string contents)
42: : base(top, left) {
43:this.listBoxContent = contents;
44: }
45:
46://versi baru karena oSverride dari base classnya
47:publicoverridevoid DrawWindow() {
48:base.DrawWindow();
49: Console.WriteLine("Menuliskan string pada listbox: {0}",
50: listBoxContent);
51: }
52:
53: }
54:
55:publicclass Button : Control {
56:public Button(int top, int left) : base(top, left) {}
57:
58:publicoverridevoid DrawWindow() {
59://base.DrawWindow();
60: Console.WriteLine("Menggambar button pada ({0},{1})", Top, Left);
61: }
62: }
63:class LatPolymophism {
64:staticvoid Main(string[] args) {
65: Control win = new Control(10, 15);
66: ListBox lstBox = new ListBox(5, 10, "Text pada ListBox");
67: Button b = new Button(5, 6);
68: win.DrawWindow();
69: lstBox.DrawWindow();
70: b.DrawWindow();
71:
72: Control[] winArray = new Control[3];
73: winArray[0] = new Control(10, 15);
74: winArray[1] = new ListBox(5, 10, "Pada ListBox");
75: winArray[2] = new Button(5, 6);
76:
77:for (int i = 0; i < 3; i++) {
78:
winArray.DrawWindow();
79: }
80: }
81: }
Dapat dilihat dari contoh diatas bahwa
base class yaitu Window mempunyai method yang bernama DrawWindow() yang
mempunyai keyword virtual, ini berarti method tersebut dapat di override atau
diganti implementasinya dengan method yang nama dan parameternya sama persis di
kelas turunannya yaitu class ListBox.
Secara singkat OOP adalah pemrograman yang berorientasi obyek yang dibahas
di struktur data algoritma, pembahasannya mengenai array (data dengan indeks
dimulai dari 0), arraylist (data yang diurutkan dalam indeks), queue (antrian
data maksudnya adalah data yang masuk duluan itulah data yang akan diproses
duluan), stack (data yang masuk terakhir itu yang diproses duluan), list (data
string) , dan dictionary(data string yang diurutkan abjadnya).
J. Operasi
File
Operasi file adalah bagian dari
suatu program untuk menjalankan atau menghentikan proses kerja suatu program
yang dijalankannya. Dalam hal ini hal yang mengenai operasi file tersebut adalah sebagai
berikut:
1.
Deleting a File
Jika Anda
memiliki File yang tidak dibutuhkan lagi, dalam program c# dapat dilakukan
penghapusan file dengan menggunakan metode FileInfo.Delete(). Sintaks-nya
adalah public override void Delete();
Berikut
salah satu contohnya:
using
System;
using
System.IO;
public class
Program
{
static int Main(string[] args)
{
var fleMembers = new
FileInfo("First.txt");
if (fleMembers.Exists == true)
fleMembers.Delete();
return 0;
}
}
2. Copying a
File
Anda dapat membuatsalinanfile
darisatu direktorike yang lain. Untuk
melakukan ini, Anda dapat menggunakanmetode
FileInfo.CopyTo()yangkelebihan beban dengandua versi.
Versi pertamamemiliki sintaks berikut:
public
FileInfo CopyTo(string destFileName);
Ketikamenggunakan metode ini,
menentukan pathatau direktoriyangakan menjadi tujuandari
filedisalin. Berikutadalah contoh:
using
System;
using
System.IO;
public class
Program
{
static int Main(string[] args)
{
var fleMembers = new
FileInfo("Reality.txt");
var strMyDocuments =
Environment.GetFolderPath(Environment.SpecialFolder.Personal);
if (fleMembers.Exists == true)
fleMembers.CopyTo(string.Concat(strMyDocuments,
"\\Federal.txt"));
return 0;
}
}
Dalam contoh ini, sebuah file bernama Reality.txt di direktori proyek akan
diambil dan isinya akan diterapkan ke file baru bernama Federal.txt dibuat
dalam folder My Documents dari pengguna saat ini. Saat menggunakan versi
pertama dari metodeFileInfo.CopyTo () metode, jika file sudah ada, operasi
tidak akan berlanjut dan Anda hanya akan menerima kotak pesan. Jika Anda
bersikeras, Anda dapat menimpa file target. Untuk melakukan ini, Anda dapat
menggunakan versi kedua metode ini. Sintaks-nya adalah:
public FileInfo
CopyTo(string destFileName, bool overwrite);
Argumen pertama adalah sama dengan versi pertama dari metode ini. Argumen
kedua menentukan tindakan apa yang harus diambil jika file sudah ada dalam
direktori target. Jika Anda ingin menimpanya, melewati argumen sebagai benar,
jika tidak, lulus sebagai palsu.
3. Moving a
File
Jika Anda menyalinfile darisatu
direktorike yang lain, Andaakanmemiliki
dua salinandari file yang samaatauisi yang samadalam dua file. Jika Anda ingin menyalin, Anda hanya dapatmemindahkan filedari
satudirektori ke yang lainnya. Operasi inidapat
dilakukandengan menggunakanmetode FileInfo.MoveTo(). Sintaks-nya
adalah:
public void
MoveTo(string destFileName);
Argumen kemetode iniadalahsama
denganmetodeCopyTo(). Setelah
menjalankanmetode ini, obyekFileinfoakan dipindahkan
kejalurDestfilename.
Berikut contohnya:
using
System;
using
System.IO;
public class
Program
{
static int Main(string[] args)
{
var fleMembers = new
FileInfo("pop.txt");
var strMyDocuments =
Environment.GetFolderPath(Environment.SpecialFolder.Personal);
if (fleMembers.Exists == true)
fleMembers.MoveTo(string.Concat(strMyDocuments,
"\\Federal.txt"));
return 0;
}
}
K. Random Number
Random Number adalah salah satu fungsi untuk memunculkan nilai acak saat
program dijalankan dalam bahasa pemrograman.
Fungsi ini nantinya dipergunakan untuk memaksimalkan tampilan games dan media
pembelajaran matematika.
Fungsi random
bilangan dalam c# yang kita akan
pelajari ada dua:
1.
Fungsi random bilangan bulat yang merandom bilangan dari batas atas yang
kita tentukan.
Kode berikut akan
menghasilkan bilangan random kurang dari 100:
{
Random random
= new Random();
Int num =
random.Next(100);
Console.WriteLine(num);
Console.ReadKey();
}
2.
Fungsi random bilangan bulat yang merandom bilangan dari batas bawah dan
batas atas yang kita tentukan.
Kode untuk menghasilkan bilangan
random antara bilangan minimum dan maksimum yang kita tentukan adalah sebagai
berikut:
{
Random random = new Random();
int num =
random.Next(min, max);
Console.WriteLine(num);
Console.ReadKey();
}
L. Fungsi Rekursif dalam Bahasa C#
Fungsi rekursif adalah suatu fungsi yang memanggil
dirinya sendiri. Pada beberapa persoalan, fungsi rekursif sangat berguna karena
mempermudah solusi. Namun demikian, fungsi rekursif juga memiliki kelemahan,
yakni memungkinkan terjadinya overflow pada stack, yang berarti stack tidak
lagi mampu menangani permintaan pemanggilan fungsi karena kehabisan memori(
stack adalah area memori yang dipakai untuk variable lokal untuk mengalokasikan
memori ketika suatu fungsi dipanggil. Oleh karena itu, jika bisa diselesaikan dengan metode iteratif.
Secara singkat
fungsi rekursif ada hubungannya dengan matematika diskrit seperti
permutes/kombinasi, rekursif bisa diartikan nilai baru didapat dari nilai sebelumnya
seperti baris fibanacci, factorial.
Bentuk umum fungsi rekursif.
return_data_type function_name(parameter_list)
{ ...
function_name(...);
... }
Contoh
Algoritmaprogram rekursif :
Faktorial
Fungsi
rekursif dapat digunakan untuk menghitung faktorial. Berikut penjelasan beserta dengan contoh listing
programnya.
Fungsi faktorial dapat dinyatakan dalam bentuk rekursif seperti berikut:
fak(n) = 1,
untuk n = 0 atau n = 1
fak(n) = n x
(n-1)!, untuk n > 0
|
faktorial(4)
|
|
2 * faktorial(1)
|
|
3 * faktorial(2)
|
|
faktorial(1)
|
|
4 * faktorial(3)
|
Hasil akhir: 24
Misalkan
kita membuat project baru, klik file new project, pada kotak project name
silahkan isi nama project sesuai dengan keinginan, tidak ada aturan khusus
dalam penamaan project. untuk langkah-langkah selanjutnya silahkan ikuti
intruksi dibawah ini.
Langkah 1 : Tambahkan
satu button dan satu datagridview padam form1. atur dan tata sedemikian rupa
sehingga tampilannya seperti pada gambar dibawah ini khusus untuk datagridView
tambahkan 2 kolom dengan cara klik kana pada datagridview dan klik add colomn
Gambar 1. Preview desain aplikasi
Langkah 2: Pada button
satu tambahkan source code berikut ini
dataGridView1.Rows.Add(1000);
for (int i = 0; i < 1000; i++)
{
Thread.Sleep(3);
dataGridView1.Rows[i].Cells[0].Value =
for (int i = 0; i < 1000; i++)
{
Thread.Sleep(3);
dataGridView1.Rows[i].Cells[0].Value =
acak(10).ToString();
}
for (int i = 0; i < 1000; i++)
{
Thread.Sleep(2);
dataGridView1.Rows[i].Cells[1].Value =
}
for (int i = 0; i < 1000; i++)
{
Thread.Sleep(2);
dataGridView1.Rows[i].Cells[1].Value =
acak(10).ToString();
}
for (int i = 0; i < 1000; i++)
{
Thread.Sleep(1);
dataGridView1.Rows[i].Cells[2].Value =
}
for (int i = 0; i < 1000; i++)
{
Thread.Sleep(1);
dataGridView1.Rows[i].Cells[2].Value =
acak(10).ToString();
}
}
jangan lupa tambahkan library thread pada header program denganusing system.thread
Langkah 3: Kita
tambahkan fungsi rekursif, fungsi rekursif telah disiapkan, tinggal copy paste
ke form. berikut ini fungsi rekursif tersebut.
fungsi rekursif tersebut bernama acak.
private
int acak(int data)
{
int temp = 0;
Random acakku = new Random();
temp=acakku.Next(0, data);
if (temp == 8)
{
temp = acakku.Next(0, data);
return acak(6);
}
return temp;
}
{
int temp = 0;
Random acakku = new Random();
temp=acakku.Next(0, data);
if (temp == 8)
{
temp = acakku.Next(0, data);
return acak(6);
}
return temp;
}
Pada source function diatas, sebenarnya mirip dengan fungsi biasa seperti
dengan fungsi lain yang dibuat dengan C#, akan
tetapi jika dilihat lebih cermat akan ada sedikit perbedaan, pada fungsi diatas
fungsi acak melakukan pemanggilan terhadap dirinya sendiri, padahal pemanggilan
itu terjadi di block statement fungsi acak. inilah yang dimaksud dengan
rekursif fungsi, yaitu fungsi yang mengizinkan dirinya memanggil dirinya
sendiri.
Langkah 4:
Done, jalankan program.
Jika langkah-langkah
diatas dilakukan dengang benar, sewaktu program dijalankan program akan
menampilkan bilangan random pada datagrid. perhatikan seksama pada
dataGridview1. tampilannya mungkin seperti pada gambar dibawah ini.
Gambar 2. Preview hasil running program
Tapi setiap kali running hasilnya akan berbeda, tidak harus sama seperti
pada gambar diatas, karena kita menggunakan konsep random. pada datagridView1
perhatikan dengan seksama, pada dataGridView1 angka-angka yang dihasilkan
adalah angka antara 0 sampai 9, dan pada datagridVew1 tidak pernah ada nilai 8.
ini dikarenakan pada fungsi acak setiap kali
function tersebut menghasilkan nilai 8 fungsi
tersebut memanggil ulang dirinya sebelum sempat me return nilainya ke fungsi. sehingga angka 8 tidak pernah di return kan
ke fungsi. inilah yang dinamakan dengan fungsi
rekursif.
Contoh fungsi rekursif tidak
pada windows form application:
factorial.@class program.
{
Static int factorial (int n)
{
int temp=1,fak;
for (int i=1;i<=n;i++)
{
fak=i*temp;
temp=fak;
}
return temp;
}
Static int rekfaktorial (int n)
{
if(n==0)
{
return 1;
}
else
{
return n*refaktorial(n-1);
}
Static void Main (string[] args)
{
int n;
Console.Write(“Jumlah n factorial=”);
n=int.Parse(Console.ReadLine());
Console.Write(n+”Faktorial=”+factorial(n).Tostring());
Console.Readkey();
}
The System.Text.RegularExpressions.Regex class dapat digunakan untuk string pencarian. Pencarian tersebut dapat berkisar kompleksitas
dari yang sangat sederhana untuk membuat penuh penggunaan reguler expression. Berikut ini
adalah dua contoh string pencarian menggunakan kelas Regex. Untuk
informasi lebih lanjut, lihat NET. Kerangka Regular Expressions .
Kode berikut adalah aplikasi console yang melakukan
pencarian kasus sensitif sederhana dari string dalam
array. Statis pencarian string yang diberikan untuk pencarian dan
string yang berisi pola pencarian. Dalam hal ini, argumen ketiga digunakan
untuk menunjukkan kasus yang harus diabaikan. Untuk informasi lebih lanjut,
lihat System.Text.RegularExpressions.RegexOptions.
TestRegularExpressions Class
{
static
void Main ()
{
String [] kalimat =
{
"Sapi selama bulan",
"Betsy Sapi",
"Meringkuk di sudut",
"Tidak cocok di sini"
};
String sPattern = "sapi";
foreach
(string in kalimat)
{
System.Console.Write ("{} 0,24", s);
if (System.Text.RegularExpressions.Regex.IsMatch(s,sPattern,
System.Text.RegularExpressions.RegexOptions.IgnoreCase))
{
System.Console.WriteLine ("(cocok untuk
'{0}' ditemukan)", sPattern);
}
lain
{
System.Console.WriteLine ();
}
}
}
}
Keluaran
sapi selama bulan (sesuai untuk 'sapi' ditemukan)
Betsy Sapi (cocok untuk 'sapi' ditemukan)
meringkuk di sudut (cocok untuk 'sapi' ditemukan)
tidak cocok di sini
|
Kode
berikut adalah aplikasi console yang menggunakan reguler expression untuk memvalidasi format setiap
string dalam array. Validasi mensyaratkan bahwa setiap string berbentuk nomor
telepon di mana tiga kelompok angka yang dipisahkan oleh tanda hubung, dua
kelompok pertama berisi tiga digit, dan kelompok ketiga berisi empat digit. Hal ini dicapai dengan ekspresi
reguler
^\\d{3}-\\d{3}-\\d{4}$ .
TestRegularExpressionValidation Class
{
static
void Main ()
{
String [] angka =
{
"123-456-7890",
"444-234-22450",
"690-203-6578",
"146-893-232",
"146-839-2322",
"4007-295-1111",
"407-295-1111",
"407-2-5555",
};
String sPattern = "^ \ \ d {3} - \ \ d {3} - \ \ d
{4} $";
foreach
(string s in jumlah)
{
System.Console.Write ("{} 0,14", s);
if (System.Text.RegularExpressions.Regex.IsMatch (s, sPattern))
{
System.Console.WriteLine ("-
berlaku");
}
lain
{
System.Console.WriteLine ("- tidak
valid");
}
}
}
}
Keluaran
123-456-7890 - berlaku
444-234-22450 - tidak valid
690-203-6578 - berlaku
146-893-232 - tidak valid
146-839-2322 - berlaku
4007-295-1111 - tidak valid
407-295-1111 - berlaku
407-2-5555 - tidak valid
|
Contoh
berikut menggunakanreguler expression untuk memeriksa kejadian berulang
kata-kata dalam sebuah string. Ekspresi reguler \
b (? <word> \ W +) \ s + (\ k <word>) \ b dapat diartikan seperti yang
ditunjukkan dalam tabel berikut.
|
Pola
|
Deskripsi
|
|
\ B
|
Mulai pertandingan di batas kata.
|
|
(? <word> \ W +)
|
Cocok dengan satu atau lebih karakter kata sampai batas kata. Nama
ini kata kelompok
ditangkap.
|
|
\ S +
|
Cocok dengan satu atau lebih karakter white-space.
|
|
(\ K <word>)
|
Cocokkan kelompok ditangkap yang bernama kata.
|
|
\ B
|
Sesuai batas kata.
|
Contoh:
using System;
menggunakan System.Text.RegularExpressions;
public
class Tes
{
public
static void Main ()
{
/ / Tentukan ekspresi reguler untuk kata-kata diulang.
Regex rx = new Regex (@ "\ b (? <word> \ W +) \ s
+ (\ k <word>) \ b",
RegexOptions.Compiled |
RegexOptions.IgnoreCase);
/ / Tentukan string tes.
string teks = "The quick brown fox fox melompati anjing anjing
malas.";
/ / Cari yang sesuai.
MatchCollection cocok =
rx.Matches (teks);
/ / Laporan jumlah pertandingan ditemukan.
Console.WriteLine ("{0} cocok ditemukan di: \ n
{1}",matches.Count,teks);
/ / Laporan setiap pertandingan.
foreach (Pertandingan in pertandingan)
{
Kelompok GroupCollection
= match.Groups;
Console.WriteLine ("'{0}' diulang pada posisi {1} dan {2}",
kelompok ["kata"]. Nilai,
kelompok [0]. Index,
kelompok [1] Index).;
}
}
}
/ / Contoh ini menghasilkan output berikut ke konsol:
/ / 3 pertandingan ditemukan di:
/ / The quick brown fox fox melompati anjing anjing malas.
/ / 'The' diulang pada posisi 0 dan 4
/ / 'Rubah' diulang pada posisi 20 dan 25
/ / 'Anjing' diulang pada posisi 50 dan 54
Contohberikut menggambarkan penggunaan
ekspresi reguler untuk memeriksa apakah string baik mewakili nilai mata uang
atau memiliki format yang benar untuk mewakili nilai mata uang.
|
Pola
|
Deskripsi
|
|
|
^
|
Mulai pada awal string.
|
|
|
\ S *
|
Cocok dengan nol atau lebih karakter white-space.
|
|
|
[\ + -]?
|
Cocok dengan nol atau satu kejadian baik tanda positif atau tanda
negatif.
|
|
|
\ S?
|
Cocok dengan nol atau satu karakter white-space.
|
|
|
\ $?
|
Cocok dengan nol atau satu kejadian tanda dolar.
|
|
|
\ S?
|
Cocok dengan nol atau satu karakter white-space.
|
|
|
\ D *
|
Cocok dengan nol atau lebih angka desimal.
|
|
|
\.?
|
Cocok dengan nol atau satu desimal simbol titik.
|
|
|
\ D {2}?
|
Pertandingan dua angka desimal nol atau satu waktu.
|
|
|
(\ D * \.? \ D {2}?) {1}
|
Cocok dengan pola integral dan pecahan angka yang dipisahkan oleh titik
desimal simbol minimal satu kali.
|
|
|
$
|
Cocokkan akhir string.
|
|
Dalam kasus ini, ekspresi reguler
mengasumsikan bahwa string mata uang yang valid tidak mengandung simbol pemisah
kelompok, dan bahwa ia memiliki baik tidak ada digit pecahan atau jumlah digit
pecahan yang didefinisikan oleh CurrencyDecimalDigits properti.
Contoh
using System;
usingSystem.Globalization;
using System.Text.RegularExpressions;
Contoh public
class
{
public
static void Main ()
{
/ / Dapatkan obyek NumberFormatInfo saat ini untuk membangun biasa
/ / Ekspresi pola dinamis.
NumberFormatInfo NFI =
NumberFormatInfo.CurrentInfo;
/ / Tentukan pola ekspresi reguler.
pola string;
Pola = @ "^ \ s * [";
/ / Dapatkan simbol tanda positif dan negatif.
Pola + = Regex.Escape
(nfi.PositiveSign + nfi.NegativeSign) + @ "] \ s?";
/ / Dapatkan simbol mata uang.
Pola + = Regex.Escape
(nfi.CurrencySymbol) + @ "\ s?";
/ / Tambahkan terpisahkan digit ke pola.
Pola + = @ "(\ d *";
/ / Tambahkan pemisah desimal.
Pola + = Regex.Escape
(nfi.CurrencyDecimalSeparator) + "?";
/ / Tambahkan angka pecahan.
Pola + = @ "\ d {";
/ / Tentukan jumlah digit pecahan nilai mata uang.
Pola + =
nfi.CurrencyDecimalDigits.ToString () + "}) {1} $?";
Regex rgx = new Regex (pola);
/ / Tentukan beberapa string tes.
String [] = tes {"-42", "19.99", "0.001", "100 USD",
".34", "0.34", "1,052.21", "$
10,62",
"1,43", "- $ 0,23"};
/ / Periksa setiap string uji terhadap ekspresi reguler.
foreach (uji string in tes)
{
if (rgx.IsMatch (test))
{Console.WriteLine ("{0} adalah nilai mata uang.", Test);}
lain
{Console.WriteLine ("{0} bukan nilai mata uang.", Test);}
}
}
}
/ / Contoh menampilkan output sebagai berikut:
/ / -42 Adalah nilai mata uang.
/ / 19.99 adalah nilai mata uang.
/ / 0,001 bukan nilai mata uang.
/ / 100 USD bukanlah nilai mata uang.
/ / .34 Adalah nilai mata uang.
/ / 0,34 adalah nilai mata uang.
/ / 1,052.21 bukan nilai mata uang.
/ / $ 10,62 adalah nilai mata uang.
/ / 1,43 adalah nilai mata uang.
/ / - $ 0,23 adalah nilai mata uang.
Karena reguler
expression dalam
contoh ini dibangun secara dinamis, kita tidak tahu apakah pada saat desain
mata simbol budaya saat ini, tanda desimal, atau tanda-tanda positif dan
negatif mungkin disalahartikan oleh mesin reguler
expression sebagai
operator bahasa reguler expression.
N. String Builder
Sebuah kelas yang digunakan untuk membuat obyek
string yang dapat dimodifikasi.String dan StringBuilder adalah tipe
referensi. Tapi String bertindak seperti jenis nilai. StringBuilder
terletak di namespace System.Text.
Tabel berikut berisi daftar metode yang dapat Anda
gunakan untuk memodifikasi isi dari StringBuilder.
|
METHOD
|
DESCRIBTION
|
|
StringBuilder.Append
|
Menambahkan
informasi ke akhir StringBuilder saat ini.
|
|
StringBuilder.AppendFormat
|
Menggantikan
format specifier berlalu dalam string dengan teks berformat.
|
|
StringBuilder.Insert
|
Sisipan string
atau benda lainnya ke dalam indeks tertentu dari StringBuilder saat ini.
|
|
StringBuilder.Remove
|
Menghapus
sejumlah karakter tertentu dari StringBuilder saat ini.
|
|
StringBuilder.Replace
|
Menggantikan
karakter ditentukan pada indeks tertentu.
|
Perbedaan string dan string builder
|
STRING
|
STRING BUILDER
|
|
System.String adalah kekal
|
System.StringBuilder bisa berubah
|
|
Rangkaian ini digunakan untuk menggabungkan dua
string
|
Append metode yang digunakan.
|
|
String pertama dikombinasikan dengan string lain
dengan membuat salinan baru dalam memori sebagai objek string, dan kemudian
string lama dihapus
|
Penyisipan dilakukan pada string yang ada.
|
|
String efisien untuk manipulasi string kecil
|
StringBuilder lebih efisien dalam hal jumlah besar
manipulasi string harus dilakukan
|
Contoh
Programnya. . . . . . .
namespace
builder
{
class Program
{
static void Main(string[] args)
{
StringBuilder febby = new StringBuilder("We study
mathematic");
Console.WriteLine(febby);
febby.Append(" we are the people");
Console.WriteLine(febby);
float currency = 3400.50f;
febby.AppendFormat(" Our individual salary :
{0:C}. ", currency);
Console.WriteLine(febby);
febby.Insert(11, "people of
");
Console.WriteLine(febby);
febby.Remove(11, 20);
Console.WriteLine(febby);
febby.Replace("world",
"ARAB");
Console.WriteLine(febby);
Console.ReadKey();
}
}
}
Tampilan
program saaat dijalankan
O. Error
Handling (Exception Handling)
Exception handling adalah suatu mekanisme penanganan
eror yang mungkin terjadi dalam suatu program. Misalnya sebuah program yang
memiliki operasi pembagian, dimana suatu ketika user menginputkan bilangan
pembagi atau denumerator 0, maka program tersebut harus memiliki suatu
exception handling untuk kasus tersebut. Selain contoh diatas exception
handling disini juga berguna saat program kita membutuhkan akses ke CD ROM,
USB, Audio&Video File, Internet dll, sehingga apabila alat alat yang kita
butuhkan dalam program kita tersebut tiba-tiba
terputus aksesnya maka program kita tidak secara tiba-tiba mati
dan agar program kita bisa terus berjalan.
Program yang tidak menggunakan exception handling:
· Menjalankan
perintah
· Jika dalam
menjalankan perintah menemui error
· Program berhenti
Program yang menggunakan exception handling :
· Menjalankan
perintah
· Jika dalam
menjalankan perintah menemui error
· Exception
akan melemparkan error tersebut
· Catch akan
menerima dan memproses error tersebut
· Program
menjalankan perintah selanjutnya
Sehingga dengan menggunakan Exception Handling kita
dapat memprevent terjadinya runtime error yang menyebabkan program kita
berhenti ditengah tengah jalan.
Sebelum
kita merambah ke programnya, mari kita klasifikasikan jenis-jenis error
terlebih dahulu, dalam
ilmu pemrograman, terdapat 3 jenis error. yaitu :
1. Syntax
Error
Syntax
Error adalah suatu kesalahan dari penulisan syntax pada program sehingga syntax
tersebut tidak dapat dieksekusi oleh program yang pasti membuat program
tersebut error.
contoh
:
public static voit main
pastinya program akan error, tahukah dimana letak
errornya? VOIT tidak dikenali oleh C#, sehingga program akan error.
2. Logical
Error
Logical
Error adalah suatu kesalahan yang disebabkan oleh si programmer sendiri, lah
kok bisa? hal ini disebabkan oleh kesalahan penulisan atau rumus yang
diterapkan oleh si programmer.Anda
pasti tahu bila semua angka tidak dapat dibagi oleh 0 (nol). Lah kalau si programmer tetep
ngotot,pasti programnya error.
contoh :
int a = 6;
int b = 0;
double c= a / b;
Console.WriteLine(c);
bagaimana?sudah jelas kan?
3. Runtime
Error
Error
yang satu ini tergolong error yang unik,lah kenapa? soalnya menurut saya
errornya gara-gara kecerobohan si programmer itu sendiri. Error ini akan muncul apabila
terjadi miss communication
antara program dan file yang dipanggil dalam program, misalnya program itu
membutuhkan database yang bernama db_siswa yang disimpan pada localhost,tapi
kenyatannya ternyata si programmer tidak mempunyai atau belum membuat database
tersebut di localhost, program akan tetap berjalan, namun saat aksi simpan
data, hapus data atau tampil data pasti program akan error.
Dari semua jenis error diatas pasti memerlukan
penanganan agar dapat meminimalisisr ke-error-an pada program.
·
Contoh dalam C#
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
usingSystem;
namespaceoop_exceptionhandler
{
classProgram
{
privatestaticintPerkalian()
{
inthasilKali;
Console.WriteLine();
Console.WriteLine("Soal
5 X 5");
Console.Write("Input
Hasil Perkalian : ");
hasilKali
= Convert.ToInt32(Console.ReadLine());
returnhasilKali;
}
privatestaticvoidOperasi_Perkalian(intperkalian)
{
boolhasil
= true;
while(hasil
== true)
{
try
{
while(perkalian!=25)
{
Console.WriteLine("Hasil
Operasi Salah = {0}",perkalian); perkalian = Perkalian();
}
hasil
= false;
}
catch(Exception)
{
Console.WriteLine("Hasil
Operasi Salah = {0}",perkalian);
}
}
}
publicstaticvoidMain(string[]args)
{
intperkalian;
perkalian
= Perkalian();
Operasi_Perkalian(perkalian);
Console.WriteLine("Hasil
Operasi Benar");
Console.ReadKey();
}
}
}
|
Hasil untuk C#
DAFTAR PUSTAKA
Modul praktikum pemrograman visual c#, YUNI YAMASARI, S.KOM, M.KOM
UNIVERSITAS NEGERI SURABAYA.OKTOBER, 2012
http://www.c-sharpcorner.com/uploadfile/puranindia/stringbuilder-class-in-C-Sharp1/
http:///operasi%20operasi%20matematika%20di%20C%23%20(C%20SHARP).htm
diakses Kamis, 16 Mei 2013 Pukul 17.15
http://rinaldirusli.wordpress.com/2008/11/20/manipulasi-string-c/diakses
Jumat, 17 Mei 2013 Pukul 10.20
www.csharp-indonesia.com
http:///operasi%20operasi%20matematika%20di%20C%23%20(C%20SHARP).htm
diakses Kamis, 16 Mei 2013 Pukul 17.15
Daftar Pustaka
http://mugi.or.id/blogs/erick/
http://id.wikipedia.org/
Dapus : www.csharp-indonesia.com
http://www.c-sharpcorner.com/uploadfile/puranindia/stringbuilder-class-in-C-Sharp1/
http://translate.googleusercontent.com/translate_c?depth=1&hl=id&prev=/search%3Fq%3Dregular%2Bexpression%2Bc%2523%26biw%3D1241%26bih%3D581&rurl=translate.google.com&sl=en&u=http://msdn.microsoft.com/en-us/library/ms228595(v%3Dvs.80).aspx&usg=ALkJrhgpzZT4Zx9kh9F-s-TmQCkhp2zLzA
http://translate.googleusercontent.com/translate_c?depth=1&hl=id&prev=/search%3Fq%3Dregex%2Bregular%2Bexpression%2Bc%2523%26biw%3D1241%26bih%3D581&rurl=translate.google.com&sl=en&u=http://msdn.microsoft.com/en-us/library/system.text.regularexpressions.regex.aspx&usg=ALkJrhjXyg58OdK2IdmUWEExHhZ_qIqqKw#feedback
http://1digit.wordpress.com/2012/04/09/kuliah-berseri-oop-2-bab-v-exception-handling/Diakses
pada tanggal 17 Mei 2013
http://imamoto17.wordpress.com/2013/04/10/exception-handling-c-java-dan-c/Diakses
pada tanggal 17 Mei 2013
http://iaknuranda.lecture.ub.ac.id/files/2011/01/DPK-Fungsi-IA-UB.pdf
http://www.functionx.com/csharp/lesson34.htm
Tidak ada komentar:
Posting Komentar