Selasa, 08 Oktober 2013

Rangkuman OOP pada C#



1.      Pengertian Class, Atribut, dan Method pada C#


v  Class

Class merupakan penggambaran dari sebuah object atau benda,sifat objek, dan juga apa yang bisa dilakukan oleh objek tersebut. Sebagai contoh adalah pengambaran yang real dalam kehidupan kita adalah tentang dunia transportasi. Tentunya kita semua  mengetahui bahwa sangatlah banyak jenis alat transportasi yang ada seperti motor, mobil,pesawat terbang,kapal laut, dan lain sebagainya.Kemudian marilah kita anggap berbagai alat transportasi tersebut sebagai  suatu class. Maka motor tentunya mempunyai no polisi,tahun pembuatan,merk dll, demikian juga dengan alat transportasi yang lainnya, oleh karenanya hal ini bisa disebut sebagai properties. Selanjutnya motor itu sendiri bisa berjalan maju, berjalan mundur,belok kiri, belok kanan yang mana kegiatan ini disebut method.
Contoh:
public class ApaMotormu {
public static void main(String[] args){
Motor punyaku=new Motor();
punyaku.motorku();
}
}

v  Atribut

Adalah suatu pengenal yang digunakan untuk menyimpan suatu nilai. Nilai dalam variabel dapat berubah2 selama proses pada program masih berlangsung. Sebelum variabel digunakan, harus dideklarasikan terlebih dahulu, dengan format penulisan : ;

Contoh:
String kata;
Int angka;



v  Method

Method adalah merupakan suatu operasi berupa fungsi-fungsi yang dapat dikerjakan oleh suatu object. Method didefinisikan pada class akan tetapi dipanggil melalui object.
Contoh : pada object mangga : terdapat method ambilRasa , kupasKulit dll.
Metode menentukan perilaku objek, yakni apa yang terjadi ketika objek itu dibuat serta berbagai operasi yang dapat dilakukan objek sepanjang hidupnya.

2.      Object

Object adalah sebuah structure yang menggabungkan data dan prosedur untuk bekerja bersama-sama. Object  merupakan suatu bentuk dari class Object dari class Hewan adalah Burung, Kambing, Ayam, Kuda.. Mereka adalah contoh dari class Hewan. Semua dari mereka adalah Hewan  yang mempunyai nama, kaki, Jenis makanan dst. Dan bisa berlari, bersuara, berkembang biak dll.

Contoh:
public class Peliharaanmu{
public static void main(String[] args){
Hewan punyaku=new Hewan();
punyaku.hewanku();
}
}


3.      Cara membuat object

Nama class nama variabel = new nama class ();
Contoh : membuat objek class Lingkaran
Lingkaran.l1 = new lingkaran ();



4.      Konstruktor

Kontruktor merupakan suatu method yang akan memberikan nilai awal pada saat suatu objek dibuat. Pada saat program dijalankan, konstructor akan langsung memberikan nilai awal pada saat perintah new, membuat suatu objek. Pada saat kita bekerja dengan konstruktor, hal mendasar yang perlu diperhatikan, yaitu:
1.    Nama Constructor sama dengan nama Class.
2.    Tidak ada return type yang diberikan kedalam Constructor Signature.
3.    Tidak ada return stetement, didalam tubuh constructor. 


5.      Private, Protected, Public karakteristik OOP dan contohnya
v  Inheritance
Inherintence atau pewarisan adalah merupakan konsep dimana suatu object memiliki sejumlah perilaku yang dimiliki oleh object lain dalam suatu hirarki tertentu.Hal ini memungkinkan satu kelas (sub-class) harus didasarkan atas yang lain (kelas super) dan mewarisi semua fungsi secara otomatis. Kode tambahan kemudian dapat ditambahkan untuk membuat versi yang lebih khusus dari kelas. Dalam contoh kendaraan, sub-kelas untuk mobil atau motor dapat dibuat. Masing-masing masih akan memiliki semua perilaku kendaraan tetapi dapat menambahkan metode khusus dan properti.



Penggunaan inheritance dapat dilihat pada program dibawah ini

   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:     }   




v  Polymorphism
Polymorphism adalah konsep dimana beberapa object dapat memiliki metode yang sama dengan aksi yang berbeda. Hal ini mengakibatkan adanya kemampuan untuk sebuah objek untuk mengubah perilakunya sesuai dengan bagaimana itu digunakan. Dimana kelas obyek mewarisi dari kelas super atau mengimplementasikan satu atau lebih interface , dapat disebut dengan kelas atau interface nama-nama. Jadi jika kita memiliki metode yang mengharapkan sebuah objek dari tipe 'kendaraan' untuk diteruskan sebagai parameter, kita dapat melewati setiap kendaraan, mobil atau motor objek untuk metode yang meskipun tipe data mungkin secara teknis berbeda.
Dalam Polymorphism suatu object bisa bertindak lain terhadap message/method yang sama. 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 :

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();
}
}



v  Encapsulation
Encapsuation adalah penyatuan antara proses-proses yang terjadi dan sejumlah data yang dikelola kedalam suatu bentuk kelompok tertentu. Pengelompokan tersebut adalah dengan dibentuknya suatu object secara abstrak (abstraction). Akibatnya, obyek dapat bekerja sama dalam banyak hal dalam sistem. Dalam beberapa situasi, kelas dan objek dapat erat bersama-sama untuk menyediakan fungsionalitas yang lebih kompleks. Dalam contoh mobil, roda, panel, mesin, gearbox, dll dapat dianggap sebagai kelas individu. Untuk membuat mobil sekelasnya, perlu menghubungkan semua benda-benda bersama, mungkin dapat menambahkan fungsionalitas lebih lanjut. 
Encapsulation mengemas suatu objek sehingga pada saat kita akan memakai objek tersebut kita tidak perlu lagi tahu tentang detail bagaimana suatu action itu terjadi. Contoh dalam hal ini, misal siswa (suatu object) sedang menulis (method). Maka detail dari tentang cara siswa itu menulis (bagaimana otot tangan itu  bekerja untuk menulis, bagaimana sistem saraf pusat  memerintahkan untuk menulis) kita tidak perlu mengerti. Kita hanya melihat si siswa sedang menulis.

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());
}
}



v  Abstraction
Kemampuan sebuah program untuk melewati aspek informasi yang diproses olehnya, yaitu kemampuan untuk memfokus pada inti. Setiap objek dalam sistem melayani sebagai model dari “pelaku” abstrak yang dapat melakukan kerja, laporan dan perubahan keadaannya, dan berkomunikasi dengan objek lainnya dalam sistem, tanpa mengungkapkan bagaimana kelebihan ini diterapkan. Proses, fungsi atau metode dapat juga dibuat abstrak, dan beberapa teknik digunakan untuk mengembangkan sebuah pengabstrakan.

Contoh:

1: public abstract class Control {
   2:         private int top;
   3:         private int left;
   4:
   5:         protected int Top {
   6:             get { return this.top;}
   7:             set { this.top = value;}
   8:         }
   9:         protected int Left {
  10:             get {return this.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:         public abstract void DrawWindow();
  19:     }
  20:
  21:     public class ListBox : Control {
  22:         private string listBoxContent;
  23:         public ListBox(int top, int left, string contents)
  24:             : base(top, left) {
  25:             this.listBoxContent = contents;
  26:         }
  27:
  28:         public override void DrawWindow() {
  29:             Console.WriteLine(“Position :({0},{1})”, Top, Left);
  30:             Console.WriteLine(“Menuliskan string pada listbox: {0}”,
  31:               listBoxContent);
  32:         }
  33:
  34:     }
  35:
  36:     public class Button : Control {
  37:         public Button(int top, int left) : base(top, left) { }
  38:         public override void DrawWindow() {
  39:             Console.WriteLine(“Menggambar button pada ({0},{1})”, Top, Left);
  40:         }
  41:     }
  42:     class LatAbstract {
  43:         static void 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:     }






v  Aggregation

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

6.      Overloading
Overloading adalah suatu cara membuat lebih dari konstructor pada suatu class. Supaya pengaksesan konstructor tersebut lancar, maka sebagai pembedanya adalah tipe parameter dan atau jumlah parameternya.
Pada C# dapat mendeklarasikan method atau konstruktor dengan nama yang sama pada sebuah class, tetapi parameter method tersebut harus berbeda bisa jumlah atau tipe datanya. Pada contoh dibawah ini akan ditunjukan bagaimana cara menggunakan overloading konstruktor.

   1: public class Time
   2: {
   3:          // private member variables
   4:          private int Year;
   5:          private int Month;
   6:          private int Date;
   7:          private int Hour;
   8:          private int Minute;
   9:          private int Second;
  10:   
  11:          // public accessor methods
  12:          public void DisplayCurrentTime()
  13:          {
  14:              System.Console.WriteLine("{0}/{1}/{2} {3}:{4}:{5}",
  15:              Month, Date, Year, Hour, Minute, Second);
  16:          }
  17:          // constructors
  18:          public Time(System.DateTime dt)
  19:          {
  20:              Year = dt.Year;
  21:              Month = dt.Month;
  22:              Date = dt.Day;
  23:              Hour = dt.Hour;
  24:              Minute = dt.Minute;
  25:              Second = dt.Second;
  26:          }
  27:          public Time(string strTime) // overloading konstruktor
  28:          {
  29:              Console.WriteLine(strTime);
  30:          }
  31:  
  32:          public Time(int Year, int Month, int Date,
  33:          int Hour, int Minute, int Second) // overloading konstruktor
  34:          {
  35:               this.Year = Year;
  36:               this.Month = Month;
  37:               this.Date = Date;
  38:               this.Hour = Hour;
  39:               this.Minute = Minute;
  40:               this.Second = Second;
  41:          }
  42:      }
  43:  
  44:      class Tester
  45:      {
  46:          public void Run()
  47:          {
  48:              System.DateTime currentTime = System.DateTime.Now;
  49:              Time time1 = new Time(currentTime);
  50:              time1.DisplayCurrentTime();
  51:              Time time2 = new Time(2000, 11, 18, 11, 03, 30);
  52:              time2.DisplayCurrentTime();
  53:          }
  54:  
  55:          static void Main()
  56:          {
  57:              Tester t = new Tester();
  58:              t.Run();
  59:          }
  60:      }


7.      Membuat Program OOP untuk menghitung nilai Mata Kuliah dan Konvesinya
class Program
    {
        static void 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();

        }
        public static double hitungNilaiAkhir(double np, double nt, double nuts, double nuas)
        {
            return 0.3 * np + 0.2 * nt + 0.3 * nuas + 0.2 * nuts;
        }
        public static string 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;

        }
    }
}

Outputnya:









Minggu, 19 Mei 2013



8. String Builder
Sebuah objek StringBuilder bukan string melainkan obyek pembantu yang digunakan untuk memanipulasi karakter. Ini berisi buffer, biasanya diinisialisasi dengan string tetapi biasanya lebih besar dari string tersebut. Penyangga ini dapat dimanipulasi di tempat tanpa membuat string baru. Kita dapat menyisipkan, menambahkan, menghapus, dan mengganti karakter. Setelah selesai memanipulasi karakter, gunakan metode ToString StringBuilder untuk mengekstrak string jadi  itu.
Kedua String dan StringBuilder berisi karakter Unicode jenis Char dan mendukung pengindeks yang mengembalikan Char. Karena kelas String adalah kekal, pengindeks adalah read-only, tetapi pengindeks StringBuilder dibaca / ditulisi. Listing 20.38 menggambarkan bagaimana memanipulasi karakter dengan kelas StringBuilder dan kemudian menempatkan karakter menjadi objek String.
Listing 20.38: StringBuilder Class Manipulation 
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace StringBuilderClass
{
    class Program
    {
        static void Main(string[] args)
        {
            String MyName;
            StringBuilder MyOtherName = new StringBuilder("Hello");
            MyOtherName.Remove(2, 3); // produces "He"
            MyOtherName.Insert(2, "lp"); // produces "Help"
            MyOtherName.Replace('l', 'a'); // produces "Heap"
            MyName = MyOtherName.ToString();
        }
    }
}

Kita dapat menggunakan salah satu yaitu String atau StringBuilder untuk operasi string. Jika kita mengubah string operasi, seperti pemindahan, menambahkan, menghapus, dan mengganti beberapa karakter kita harus memilih kelas StringBuilder.
Kita dapat menggunakan String dan kelas StringBuilder setiap kali diperlukan dan juga menulis fungsi penolong untuk kedua kelas dengan menyediakan fungsi pembantu statis.
Misalnya, setiap kali kita mengubah string di kelas String, metode dari kelas String mengembalikan sebuah string baru sebagai hasilnya. Membuat banyak objek String mungkin menurunkan kinerja program kita. Kita  dapat menghindari membuat contoh baru dari string dengan menggunakan kelas StringBuilder.
Katakanlah kita ingin menggabungkan dua string. Berikut adalah cara tradisional menggunakan kelas System.String:
            String str1 = "I like";
                        String str2 = "Sepakbola";
                        String strConcat = String.Concat (str1, str2);
Nilai strConcat adalah saya seperti Soccer. Kita dapat menggunakan kelas StringBuilder dan metode Append untuk melakukan hal yang sama:
            StringBuilder MyStrBuilder = new StringBuilder ("I like");
            String newstr = "Sepakbola";
            MyStrBuilder.Append (newstr);
Nilai MyStrBuilder adalah saya seperti Soccer. Kita dapat menggunakan String dan kelas StringBuilder setiap kali diperlukan dan juga menulis fungsi penolong untuk kedua kelas dengan menyediakan fungsi pembantu statis.
Sebagai contoh, secara default StringBuilder tidak menyediakan fungsi anggota IndexOf, yang melakukan pencarian linear untuk karakter dalam sebuah string. Tapi Listing 20.39 menunjukkan bagaimana kita dapat membuat fungsi IndexOf kustom kita sendiri.
Listing 20.39: StringBuilder IndexOf
Listing 20.39: StringBuilder IndexOf 

// Example IndexOf function for StringBuilder class

using System;
using System.Text;

public class App
{
    public static int sbIndexOf(StringBuilder sb, char ch)
    {
        Int32 intVal1 = -1;

        while (++intVal1 < sb.Length)
        {
            if (sb[intVal1] == ch)
            {
                return intVal1;
            }
        }
        return -1;
    }

    // string is an alias for System.String in the .NET Framework.

    public static void Main(string[] args)
    {
        StringBuilder sb1 = new StringBuilder(@"Hello There");
        Console.Write("{0}", App.sbIndexOf(sb1, 'o'));
    }
}

Mari kita lihat perbedaan halus antara String dan StringBuilder bila dilewatkan ke fungsi API Win32 yang mengambil string. GetWindowText, didefinisikan dalam Windows.h. LpString, menunjuk ke sebuah penyangga ukuran nMaxCount. Itu berarti, sebelum memanggil GetWindowText, kita diharapkan untuk mengalokasikan buffer untuk pointer karakter nMaxCount:
             HWND hWnd, // handle to window or control
            LPTStr lpString, // text buffer
            int nMaxCount // maximum number of characters to copy

Sebuah karakter buffer berubah panjang tetap harus melewati kode unmanaged sejak LPTSTR adalah pointer ke karakter (itu adalah baik char * atau * wchar, tergantung pada pilihan kompilasi kode, ANSI atau Unicode). Cukup melewati string tidak bekerja dalam kasus ini karena GetWindowText tidak dapat memodifikasi isi dari buffer berlalu. Bahkan jika string dikirimkan dengan referensi, GetWindowText tidak dapat menginisialisasi buffer untuk ukuran tertentu.
Solusi dalam hal ini adalah untuk lulus StringBuilder sebagai argumen di tempat String sejak contoh StringBuilder dapat dimodifikasi oleh GetWindowText. Perlu diingat bahwa contoh StringBuilder tidak boleh melebihi kapasitas StringBuilder. StringBuilder akan diinisialisasi dengan panjang tetap sebelum menelepon GetWindowText. Jika Anda menginisialisasi StringBuilder dengan kapasitas N, kode unmanaged marshaler menggunakan penyangga ukuran (N 1) karakter. StringBuilder tidak memiliki nol terminator, sedangkan unmanaged tali pointer tidak.
Setelah dibuat string tidak dapat diubah. StringBuilder A dapat diubah sebanyak yang diperlukan. Ini menghasilkan peningkatan kinerja yang mengagumkan. Ini menghilangkan jutaan eksemplar string. Dan dalam loop tertentu adalah penting.
Contoh :
Sebagai pendahuluan, program ini menunjukkan bagaimana jenis StringBuilder digunakan untuk membangun buffer yang lebih besar karakter. Anda dapat memanggil metode Append pada contoh StringBuilder untuk menambahkan lebih banyak data.
Program yang menggunakan StringBuilder: C #
using System;
menggunakan System.Text;
Program kelas
{
    static void Main ()
    {
StringBuilder builder = new StringBuilder ();
/ / Tambahkan ke StringBuilder.
for (int i = 0; i <10; i + +)
{
builder.Append (i) Append ("");.
}
Console.WriteLine (builder);
    }
}
 
Keluaran :
0 1 2 3 4 5 6 7 8 9 

 http://www.c-sharpcorner.com/UploadFile/puranindia/stringbuilder-class-in-C-Sharp/
http://www.dotnetperls.com/stringbuilder

Sabtu, 24 November 2012

MEMBUAT GRAFIK PADA MATLAB

Dengan menggunakan command plot, bar, atau yang lain kita bisa menampilkan sebuah grafik dalam bentuk 2D maupun 3D. Tentunya, masing-masing memiliki syarat-syarat yang harus terpenuhi. Misalnya, untuk menampilkan grafik 2D harus tersedia data matriks 2 dimensi. Jika akan menampilkan grafik 3D maka harus tersedia data matriks 3 dimensi pula.
Sebagai contoh, kita akan menampilkan data pengukuran 2D dari data berikut:
Jam = kW
0  = Setting Daya 553
2  = Setting Daya 534
4  = Setting Daya 538
6  =  Setting Daya 543
8  =  Setting Daya 605
10= Setting Daya 609
12=  Setting Daya 590
14=  Setting Daya 670
16=  Setting Daya 789
18= Setting Daya 889
20= Setting Daya 883
22= Setting Daya 868
Untuk menampilkan data di atas dalam grafik di Matlab, terlebih dahulu data harus dibuat menjadi sebuah matriks. Karena data di atas terdiri dari dua variabel, maka data tersebut dibuat dalam matriks 2 dimensi. Untuk membuat matriks pada Matlab, ikuti langkah berikut:
ketik pada Command Window Matlab:



>>Time=0:2:22
kemudian data berikutnya:


>>Daya=[553 534 538 548 606 609 590 670 789 889 883 868]


>>axes
kemudian akan muncul tampilan berikut


Untuk menampilkan data dalam grafik, perlu diketahui fungsi perintah dalam Matlab.
Kita gunakan perintah plot untuk menampilkan grafik. Perintahplot memiliki beberapa fungsi yang dapat digunakan. Diantaranya adalah untuk menampilkan data X dan Y dalam sebuah axes.
ketik pada command window:



>>plot(Time,Daya)
hasil tampilan adalah


Sekarang tinggal memberikan keterangan pada grafik.
1. Memberi judul grafik
ketik:
>>title(‘Grafik Hubungan Daya Terhadap Daya’)
2. Menambah keterangan sumbu X
ketik:
>>xlabel(‘Time (s)’)
3. Menambah keterangan sumbu Y
ketik:
>>ylabel(‘Daya’)

hasil akhirnya adalah



http://rohmadi.com/2012/02/28/membuat-grafik-pada-matlab/