Nothing Impossible

Nothing Impossible

Selasa, 03 Desember 2013

PENERAPAN ALGORITMA GENETIK

PADA PERMAINAN CATUR JAWA


Abstrak
Pada permainan catur Jawa, ada 7 strategi berdasarkan kondisi papan
permainan yang diusulkan untuk memilih langkah mana yang akan diambil.
Setiap strategi mempunyai bobotnya masing-masing. Algoritma genetik
dipakai untuk mencari bobot setiap strategi tersebut. Algoritma alpha-beta
cutoff dipakai untuk melakukan proses evaluasi dan pemilihan langkah
yang diambil komputer.
Kata kunci : catur jawa, algoritma genetik, algoritma apha-beta cutoff


Selasa, 08 Oktober 2013

RANGKUMAN TENTANG OOP di C#


NAMA : FEBBY SINTANOVA NAHARI
NIM :123214212
KELAS : 2012 B




1.      Class, Attribute dan Method
Class (kelas) merupakan model yang berisi kumpulan attribute dan method dalam suatu unit untuk suatu tujuan tertentu. Sebuah class merupakan dasar dari modularitas dan struktur dalam pemrograman berorientasi object.
Attribute adalah segala sesuatu (data ) berhubungan dengan karakteristik objek dalam setiap kelas. Tiap attribute memiliki nilai yang berbeda untuk setiap objek.
Method merupakan tingkah laku dari suatu objek, jika bersifat static berarti tingkah laku semua objek dalam kelas tersebut.

2.      Object
Objec adalah instance dari class . jika class secara umum mempresentasikan (template) sebuah object, sebuah instance adalah representasi nyata dari class itu sendiri.
Contoh: dari class fruit kita bisa membuat objek pisang, durian, pepaya dan lain-lain.

3.      Cara membuat object
Untuk membuat objek, menggunakan perintah new dengan sebuah nama class yang akan dibuat sebagai instance dari class tersebut.
Contoh :
class Date
{
Date hari = new Date ();
}
Hari adalah object reference dari class Date yang akan digunakan untuk mengakses class Date. Sedangkan operator new adalah operator yang akan menghasilkan hari sebagai reference ke instance sebagai class Date ().

4.      Konstruktor
Adalah sebuah fungsi yang otomatis akan dipanggil setiap kali melakukan instansi terhadap suatu kelas dan digunakan untuk melakukan inisialisasi nilai dari data-data yang terdapat di dalam kelas yang bersangkutan. Dan suatu metode yang memberikan ilai awal pada saat suatu objek dibuat. Pada saat program dijalankan, construktor akan langsung memberikan nilai awal pada saat perintah new. Pada saat bekerja dengan construktor, hal yang mendasar untuk di perhatikan dalam membuat obyek, yaitu :
1.      Nama constructor sama dengan nama kelas .
2.      Tidak ada return type yang diberikan ke dalam constructor signature.
3.      Tidak ada return stetement di dalam tubuh constructor.

---------------------------------------------------------
5.         Private, protected, public

Private adalah menyatakan bahwa kelas tersebut
Tidak dapat diakses sama sekali oleh kelas lain bahkan juga tidak dapat diturunkan. Hanya dapat diakses oleh method-method tersebut asal modifiernya public.
     Protected menyatakan bahwa kelas/method/attribute tersebut dapat diakses oleh kelas lain yang berada dalam satu package atau kelas lain merupakan turunannya.
     Public menyatakan bahwa kelas/ method/attribute tersebut dapat diakses oleh kelas lain dimanapun.

6.      Karakteristik OOP dan contohnya :
Inherintence ( pewarisan )  adalah merupakan konsep dimana suatu objek memiliki sejumlah perilaku yang dimiliki oleh objek lain dalam suatu herarki tertentu.
Penulisan inherinten pada C# adalah :

public class ListBox : Window
Kode diatas berarti class ListBox adalah turunan dari class Window.
Contoh Inherintence :
1: public class Window {
2:         //variabel dideklarasikan private
  sehingga tidak bisa diakses oleh kelas
3:         //turunannya
  4:         private int top;
  5:         private int left;
  6: 
  7:         //objek konstruktor
  8:         public Window(int top, int left) {
  9:             this.top = top;
10:             this.left = left;
11:         }
12: 
13:         public void DrawWindow() {14:             Console.WriteLine(“Draw window pada ({0},{1})”,
15:                 top, left); 
16:         }
17: }
18: 
19:     public class ListBox : Window {
20:         //member variable baru pada class anak
21:         private string 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:         public new void DrawWindow() {
28:             base.DrawWindow();
29:             Console.WriteLine(“Menuliskan string pada listbox: {0}”,
30:             listBoxContent);
31:         }
32:     }
33: 
34:     class LatInheritance {
35:         public static void 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:     }

Polymorpims adalah konsep dimana beberapa objek dapat memiliki metode yang sama dengan aksi yang berbeda mengakibatkan adanya kemampuan untuk sebuah objek untuk merubah perilakunya sesiai dengan bagainmana itu digunakan.
Ilustrasi Polymorpisme Misalkan kita punya satu class hewan dan diturunkan menjadi dua class hewan berkaki dua dan hewan berkaki empat. Ketika hewan berkaki dua melakukan method makan maka yang dilakukan adalah makan dengan paruhnya, dan ketika hewan berkaki empat juga makan maka dia akan menggunakan mulutnya. Keduanya melakukan aksi yang sama yaitu makan akan tetapi perlakuannya lain.
Contoh polymorphism:
class Binatang
{
public void info()
{
System.out.println(” Info tentang Hewan : “);
}
}
class Herbivora extends Binatang
{
public void info()
{
System.out.println (“Info pada herbivora: Memakan makanan berupa tumbuh – tumbuhan”);
}
}
class Kelinci extends Herbivora
{
public void info()
{
System.out.println(“Info pada Kelinci: Memakan makanan berupa wortel”);
}
}
public class Polimorfisme
{
public static void main(String[] args)
{
Herbivora herbivora;
Kelinci kelinciku;
Binatang hewan; herbivora=new Herbivora();
kelinciku=new Kelinci();
hewan=herbivora;
hewan.info();
hewan=kelinciku;
hewan.info();
}
}

Encapsulation adalah penyatuan proses-proses yang terjadi dan sebuah data yang dikelola kedalam suatu bentuk kelompok tertentu ( dibentuknya suatu object secara abstract). Akibatnya object dapat berkerja sama dalam banyak hal dalam sistem.
Contoh :
class Siswa
{
String nama;
String nim;
void isiData ( String namaku,String nimku )
{
nama = namaku;
nim = nimku;
}
String ambilNama()
{
return nama;
}
String ambilNim()
{
return nim;
}
}
public class Mahasiswa
{
public static void main ( String [] args)
{
Siswa mahasiswa_itn = new Siswa(); //membuat variable instant
mahasiswa_itn.isiData(“Dina Damayanti”,”0412585″);
System.out.println( “Nama : ” + mahasiswa_itn.ambilNama());
System.out.println( “Nim : ” + mahasiswa_itn.ambilNim());
}
}
Abstraction : proses yang mewakili versi yang disederhanakan dari objek dunia nyata dalam kelas dan objek.
Contoh :
Jika kita membangun aplikasi shipping, kita harus membangun object produk dengan atribut seperti ukuran dan berat. Warna adalah contoh informasi yang tidak ada hubungannya dan harus dibuang. Tetapi ketika kita membangun order- entry application, warna menjadi penting dan harus termasuk atribut object produk.

Aggregation : kondisi ketika object berisi gabungan dari object-object yang berbeda dan bekerja bersama.
Contoh :
mesin pemotong rumput terdiri dari object roda, objects mesin, object pisau dan  lain-lain. Object mesinpun merupakan gabungan dari berbagai object.
Kemampuan untuk menggunakan aggregation dalam OOP adalah satu feature yang powerful yang memungkinkan model menjadi akurat.

7.      Overloading
Adalah dua atau lebih method di dalam suatu class yang sama, dengan nama yang sama namun dengan deklarasi parameter yang membedakan.
Syarat untuk membuat methode overloading adalah :
1.      Jumlah type pada parameternya harus beda
2.      Type di parameter harus beda
3.      Urutan type di parameter harus beda


8.      Membuat program
Menghitung nilai mata kuliah dan konversinya

//programnya

classProgram
    {
staticvoid Main(string[] args)
        {
double ntugas, nuts, npart, nuas, nakhir;

Console.WriteLine("menghitung Nilai Mata Kuliah mahaiswa");
Console.WriteLine("--------------------------------------------");
Console.Write("nilai patisipasi  = ");
            npart = double.Parse(Console.ReadLine());

Console.Write("nilai UTS         = ");
            nuts = double.Parse(Console.ReadLine());

Console.Write("nilai Tugas       = ");
            ntugas = double.Parse(Console.ReadLine());

Console.Write("nilai UAS         = ");
            nuas = double.Parse(Console.ReadLine());

Console.WriteLine("------------------------------------");
            nakhir = hitungNilaiAkhir(npart,ntugas,nuts,nuas);
Console.Write("Nilai akhir  = " + nakhir);
Console.WriteLine();
Console.Write("Nilai Huruf  = " + konversiHuruf(nakhir));
Console.ReadKey();

        }
publicstaticdouble hitungNilaiAkhir(double np, double nt, double nuts, double nuas)
        {
return 0.3 * np + 0.2 * nt + 0.3 * nuas + 0.2 * nuts;
        }
publicstaticstring konversiHuruf(double na)
        {
string nh = "" ;
if (na > 85 && na <= 100)
            {
                nh = "A";

            }
if (na > 80 && na <= 85)
            {
                nh = "A-";
            }
if (na > 75 && na <= 80)
            {
                nh = "B+";
            }
if(na > 70 && na <= 75)
            {
                nh = "B";
            }
if (na > 65 && na <= 70)
            {
                nh = "B-";
            }
if (na > 60 && na <= 65)
            {
                nh = "C+";
            }
if (na > 55 && na <= 60)
            {
                nh = "C";
            }
if (na > 50 && na <= 55)
            {
                nh = "C-";
            }
if (na > 40 && na <= 50)
            {
                nh = "D";
            }
if (na <= 40)
            {
                nh  = "E";
            }
return nh;
        }

        }







 //output-nya

 

 









            

Sabtu, 18 Mei 2013

Tugas Bahasa Pemrograman (Kelompok 3) 2012 B Matematika

File MS. Power Point, MS Word, dan PDF dari tugas kelompok 3 bahasa pemrograman 2012B Matematika Unesa 
DOWNLOAD DISINI DARI 4SHARED.COM!!!
DOWNLOAD DISINI DARI DROPBOX.COM!!!
DOWNLOAD DISINI DARI MEDIAFIRE.COM!!!

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

Sabtu, 24 November 2012

MEMBUAT GRAFIK VISUALISASI MENGGUNAKAN MATLAB*

*MEMBUAT GRAFIK VISUALISASI MENGGUNAKAN MATLAB*

23 Nov
Pada postingan kali  ini akan dibahas membuat grafik visualisasi di MATLAB. Secara khusus mampu membuat grafik sederhana dua dimensi, membuat multiplot dari grafik tiga dimensi dan menentukan bentuk persamaan polinom dari sekumpulan data. Materi ini sangat berkaitan dengan pengolahan dan visualisasi data yang bisanya diperoleh mahasiswa dari hasil penelitan. Data yang diperoleh tersebut biasanya dibuat model dan simulasi hingga diperoleh visualilasinya, sehinga materi ini akan membantu mahasiswa khususnya yang berkaitan pengolahan data. Matlab menyediakan berbagai fungsi untuk menampilkan data secara dua dimensi maupun tiga dimensi. Pada kasus dimana Anda membuat grafik dalam tiga dimensi, Anda dapat menggambar permukaan dan menempatkan bingkai pada grafik tersebut. Warna digunakan untuk mewakili dimensi keempat. Untuk lengkapnya akan dibahas berikut.
1. Pembuatan Grafik Sederhana
Perintah plot sering digunakan untuk menggambarkan grafik dua dimensi. Perintah plot menggambarkan data dalam array pada sumbu yang bersesuaian dan menghubungkan titik-titik tersebut dengan garis lurus. Untuk keterangan lebih jelas mengenai fungsi plot ketik help plot di command window.
Contoh 2.1.
Data reaksi berikut telah diperoleh dari reaksi peluruhan sederhana:
A → B
Menggunakan MATLAB untuk memplot konsentrasi komponen A dalam mol/L
terhadap waktu reaksi, dalam menit.
Waktu (Menit) Konsentrasi (mole/L)
0 100
1 80
3 65
6 55
9 49
12 45
15 42
18 41
21 38
Penyelesaian :
Pertama, data harus dimasukkan ke dalam MATLAB sebagai dua vektor. Vektor
x dan y di definisikan dalam Command Window, diikuti dengan perintah untuk
mengeplot data. Gambar di bawah menunjukkan cara penulisan
 Image
Hasil grafik ditunjukkan gambar di bawah.
Image
Matrix baris ‘x’ (atau vektor) memiliki keluaran tampilan menggunakan ‘;’ pada
akhir baris. Syntax dapat digunakan untuk menentukan judul dan labels, tetapi
lebih mudah menggunakan pendekatan berdasarkan GUI (Graphical User
Interface) untuk mengedit gambar.
=> Pilih perintah ‘Edit Plot’ pada menu ‘Tools’ atau klick kursor pada gambar.
=> Double click pada ruang putih dalam grafik. Hal ini memungkinkan untuk
mengedit. Selanjutnya judul dan aksis dapat disisipkan di bawah perintah
‘label’.
=> Sekarang klick langsung pada garis, dan property editor garis akan muncul.
=> Selanjutnya warna garis, bentuk atau bentuk marker dapat diedit. Kurva akhir                      ditunjukkan di bawah.
 Image
Untuk menampilkan data statistik sederhana, ikuti petunjuk. ‘Tools Data
Statistics’ dan nilai minimum, maximum, mean, median, standard deviation,
and range x and y akan tampil. Di dalam kotak ini setiap statistik dapat
ditambahkan ke kurva sebagai titik data/garis.
Anda dapat memilih sendiri style penandaan, warna dan bentuk garis dengan
memberikan argumen ketiga pada fungsi plot untuk setiap pasangan array data.
Argumen tambahan ini adalah suatu karakter string yang terdiri dari satu atau
lebih karakter dari tabel di bawah ini:
Simbol Warna Penandaan Simbol
b Biru . Titik
r Merah o Lingkaran
g Hijau x Tanda x
c Cyan + Tanda plus
m Magenta * Tanda bintang
y Kuning s Bujursangkar
k Hitam d Diamon
w Putih p Pentagram
 
h heksagram

2. Grafik Multiple Plot
Function subplot digunakan untuk membuat suatu figure dapat memuat lebih dari satu gambar. Perintah sublot didefinisikan sebagai :
subplot(n,m,i)
Perintah tersebut membagi suatu figure menjadi suatu matriks m x n area grafik dan i berfungsi sebagai indeks penomoran gambar. Subplot dinomori dari kiri ke kanan dimulaidari baris teratas.
Contoh 2.2 Untuk memplot grafik atas dan bawah
>> income = [3.2 4.1 5.0 5.6];
outgo = [2.5 4.0 3.35 4.9];
subplot(2,1,1); plot(income)
title(‘Income’)
subplot(2,1,2); plot(outgo)
title(‘Outgo’)
Image
2.3 Grafik 3 Dimensi
Perintah menggambar grafik 3D
surf(x,y,z)
Misalkan:
x y z(x=1) z(x=2) z(x=3)
1 1 2 5 10
2 2 5 8 13
3 3 10 13 18
3 3 10 13 18

4 17 20 25
Image
Image
Untuk mempercantik tampilan dan mempermudah penafsiran grafik dengan
menambah legenda warna ketikkan perintah berikut ini.
Image
Apabila penafsiran grafik 3D seperti tercetak di muka masih dirasakan sulit,
MATLAB telah menyediakan perintah untuk membuat grafik 3D menjadi grafik
2D.
Image
sumber    :    pdf VISUALISASI DAT