Thursday, September 22, 2011

MENSORTING DATA ANGKA (LinkedList)

Assalamualaikum....
Salama Coding,
Selamat malam kawan-kawan, sori ni ane posting malem-malem gini. Karena tadi ane disuruh meeting sama bos ane gan... jadi maapin ye kawan!!!

Oke, kali ini saya akan mencoba membuat program untuk mensorting angka. Ingat kawan! hanya angka, jangan pakai huruf. Karena data yang akan diproses bersifat integer. Program ini akan mengurut data angka yang kamu masukan dengan urutan yang terkecil sampai yang terbesar.

Ini dia source code nya:


#include <cstdlib>
#include <iostream>

using namespace std;
class selectionsort{
     public :
            void input(int[], int);
            void selectionSort(int[], int);
            void output(int[], int);

     };

     void selectionsort::input(int data[], int banyak){
          for(int i=0;i<banyak;i++){
          cout<<"Data ke["<<i+1<<"]: ";
          cin>>data[i];
              }
          }

     void selectionsort::selectionSort(int data[], int banyak){
          int min, minim;
          for(int i=0;i<(banyak-1);i++){
          minim = i;
          min = data[i];

         for(int j=i+1;j<banyak;j++){
         if(min > data[j]){
             minim = j;
             min = data[j];
                 }
             }
         output(data,banyak);
         int temp = data[i];
         data[i] = data[minim];
         data[minim]=temp;

         }
          }

     void selectionsort::output(int data[], int banyak){
          for(int i=0;i<banyak;i++)
          cout<<data[i]<<" ";
          cout<<endl;
          }

int main(int argc, char *argv[])
{
selectionsort Selectionsort;
   int banyak;
   cout<<"PROGRAM INI BERFUNGSI UNTUK MENSORTING DATA\n";
   cout<<"Hanya Boleh Diisi dengan Angka\n\n";
 
   cout<<"Banyak data: ";
   cin>>banyak;
   int data[banyak];
   cout<<endl;
   Selectionsort.input(data,banyak);
   cout<<"\nData awal\n";
   Selectionsort.output(data,banyak);
   cout<<"\nProses sorting dengan selection sort\n";
   Selectionsort.selectionSort(data,banyak);
   cout<<"\nHasil Pengurutan : ";
   Selectionsort.output(data,banyak);

cout<<endl;

   system("PAUSE");
   return EXIT_SUCCESS;
}


Jika kamu benar, maka output nya akan seperti ini:


Setelah muncul program ini, mulailah dengan isi banyaknya data. Lalu kamu input datanyan. Setelah semuanya sudah kamu input, tekan enter. Kamu sudah dapat mensorting data angka dari yang terkecil sampai yang terbesar.

Salam coding!!
Assalamualaikum......

Wednesday, September 21, 2011

MEMASUKAN DATA (LinkedList)

Asslamualaikum,
Salam coding!!
Selamat pagi kawan-kawan, kali ini ane mau posting tentang bagaimana caranya memasukan data di c++. Tapi proses ini saya lakukan langsung di source code nya. Saya akan memasukan angka, setelah itu membalikkannya. Lalu saya akan menyisipkan angka tersebut dengan angka lain. Okelah... mari kita langsung saja. ini dia source code nya:


#include <iostream>
#include <stdlib.h>
using namespace std;
// Node Class
class Node
{
private:
    int data;
    Node *pNext;
    Node *pPrevious;
public:
    Node(int d):data(d),pNext(NULL),pPrevious(NULL){}
    int getData()const{return data;}
    void setData(int d){data=d;}
    Node * getNext()const{return pNext;}
    void setNext(Node *p){pNext=p;}
    Node * getPrevious()const {return pPrevious;}
    void setPrevious(Node *p){pPrevious=p;}
};
// LinkedList class
class LinkedList
{
protected:
    Node *pHead; //penunjuk (pointer) untuk node awal
    Node *pTail; //penunjuk (pointer) untuk node terakhir
    int nodeCounter; //menghitung jumlah angka pada node
    Node * makeNode(int data);  // membuat dan menukar node baru.
    void remove(Node *tmp);  // menghilangkan node dari data yang dihubungkan (linked list).
public:
    LinkedList();
    ~LinkedList();
// pengoperasian
    void addFirst(int data);
    void addLast(int data);
    void addBefore(int index,int data);
    void removeFirst();
    void removeLast();
    void displayInOrder()const;
    void displayInReverseOrder()const;
    void destroyList();
    int getSize()const{return nodeCounter;}
};
LinkedList::LinkedList():
pHead(NULL),pTail(NULL),nodeCounter(0)
{}
LinkedList::~LinkedList()
{
    destroyList();
}
void LinkedList::displayInOrder()const
{
    if( !pHead )
    {
        cout<<"\nNULL";
        return ;
    }
    for(Node *cur=pHead;cur!=NULL;cur=cur->getNext())
        cout<<cur->getData()<<" -> ";
    cout<<"NULL"<<endl;
}
void LinkedList::displayInReverseOrder()const
{
    if( !pHead )
    {
        cout<<"\nNULL";
        return ;
    }
    for(Node *cur=pTail;cur!=NULL;cur=cur->getPrevious())
        cout<<cur->getData()<<" -> ";
    cout<<"NULL"<<endl;
}
Node * LinkedList::makeNode(int data)
{
    nodeCounter++;
    return new Node(data);
}
void LinkedList::addFirst(int data)
{
    // membuat node baru
    Node *pNew=makeNode(data); //membuat node baru sebagai node partama atau awal pada data yang dihubungkan (linked list).
    if( !pHead )  // jika data yang dihubungkan atau yang dimasukkan tersebut kosong.
        pHead=pTail=pNew;
    else // jika terdapat beberapa node.
    {
        pNew->setNext(pHead);
        pHead->setPrevious(pNew);
        pHead=pNew;
    }
}
void LinkedList::addLast(int data)
{
    // membuat node baru
    Node *pNew=makeNode(data);
    // membuat node baru sebagai node terakhir pada data yang dihubungkan (linked list).
    //jika pada kondisi tidak terdapat node pada data yang dihubungkan (linked list), maka ditambah node lagi.
    //cara lain untuk memindahkan sebuah node baru ke tempat node yang terakhir.
    if( !pHead )
        pHead=pTail=pNew;
    else
    {
        pTail->setNext(pNew);
        pNew->setPrevious(pTail);
        pTail=pNew;
    }
}
void LinkedList::addBefore(int index,int data)
{
    // mengecek atau memeriksa index untuk mengetahui apakah data yang dimasukkan sesuai atau tidak.
    if( index <1 || index > getSize() )
    {
        cerr<<"\nError: index is too hight/low ";
        return;
    }
    if(index == 1)
    {
         addFirst(data);
         return ;
    }
    // Membuat node baru
    Node *pNew=makeNode(data);
    Node *pCur=pHead;
    for(int i=1;i<index -1;i++,pCur=pCur->getNext());
    pNew->setNext(pCur->getNext());
    pCur->setNext(pNew);
}
void LinkedList::removeFirst()
{
    if( !pHead )
    {
        cerr<<"\nTidak ada node yang akan dihilangkan!!";
        return ;
    }
    Node *pTmp=pHead;
    pHead=pHead->getNext();
    if(pHead)
        pHead->setPrevious(NULL);
    else
        pHead=pTail=NULL;
    remove(pTmp);
}
void LinkedList::remove(Node *tmp)
{
    delete tmp;
    nodeCounter--;
};
void LinkedList::removeLast()
{
    if( !pHead )
    {
        cerr<<"\nTidak ada node yang akan dihilangkan!!";
        return ;
    }
    Node *pTmp=pTail;
    pTail=pTail->getPrevious();
    if(pTail)
        pTail->setNext(NULL);
    else
        pTail=pHead=NULL;
    remove(pTmp);
}
void LinkedList::destroyList()
{
    Node *pTmp=pHead;
    Node *pCur;
    while( pTmp != NULL)
    {
        pCur=pTmp;
        pTmp=pTmp->getNext();
        remove(pCur);
    }
}

//fungsi utama
int main()
{
    LinkedList *p=new LinkedList;
   
    for(int i=0;i<5;i++)
        p->addLast(2*i+1);
    cout<<"\nNAMA    :    RIZQO\n";
    cout<<"\nNIM     :    52150874XX\n";
    cout<<"\nPRODI   :    Pend. Teknik Elektronika\n";
    cout<<"\ndata yang telah dihubungkan atau dimasukkan pada fungsi perintah:\n";
    p->displayInOrder();
    cout<<"\ndata yang telah dibalikkan pada fungsi perintah:\n";
    p->displayInReverseOrder();
    cout<<"\nmenambahkan 2 sebelum node ke dua (3). \n";
    p->addBefore(2,2);
    cout<<"\nmenembahkan 4 sebelum node ke empat (5). \n";
    p->addBefore(4,4);
    cout<<"\nmenambahkan 6 sebelum node ke enam (7). \n";
    p->addBefore(6,6);
    cout<<"\nmenambahkan 8 sebelum node ke delapan (9). \n";
    p->addBefore(8,8);
    cout<<"\ndata yang telah dihubungkan atau dimasukkan pada fungsi perintah: \n";
    p->displayInOrder();
    //return 0;
    system ("pause");
}
Kalau kamu benar maka hasilnya akan tampak seperti gambar di bawah ini:


Okeh kawan, sampai sini dulu yah....
Salam Coding
Asslamualaikum...
 

Tuesday, September 20, 2011

BEBERAPA LUAS BANGUN DATAR 2

SALAM CODING!!
Oke kawan-kawan sekalian saya cuma ingin menambahkan saja beberapa coding dari Posting yang lalu dengan judul: BEBERAPA LUAS BANGUN DATAR. Saya hanya menambahkan program di dalam file main.cpp nya saja agar kamu-kamu sekalian dapat memilih hitungan Luas yang telah disediakan. Untuk lebih lanjutnya kamu Copy aja dulu ini:


#include <cstdlib>
#include <iostream>
#define phi 3.14
using namespace std;
#include "segi3.h"
#include "segipanjang.h"
#include "persegi.h"
#include "lingkaran.h"
     
enum BOOLEAN { FALSE, TRUE };
int main(int argc, char *argv[])
{
ulang: // alamat yang akan dituju untunk pengulangan
         int pilihan;
while (TRUE){
      cout<<"\n\n";
cout<<"MENGHITUNG BEBERAPA BANGUN DATAR\n";
cout<<"\n\n";
cout<<"1)menghitung Lingkaran\n";
cout<<"2)menghitung Persegi\n";
cout<<"3)Menghitung segi Tiga\n";
cout<<"4)Menghitung Segi Panjang\n";
cout<<"5)Keluar\n";
cout<<"\n";
cout<<"<ketik angka>, kamu ingin menghitung apa? ";
cin>>pilihan;
    if (pilihan == 3){
    segi tiga; //membuat objek untuk menghitung segitiga
    tiga.setNilai();//nama objeknya tiga
    cout<<"Luas segitiga: "<<tiga.getResult()<<endl;
goto ulang; // kembali kealamat awal agar proses tetap berjalan
//exit(0);
}
   
   else if (pilihan == 4)
{
  segiP pjg;//membuat objek untuk menghitung persegi panjang
    pjg.setNilaiP();//nama objeknya pjg
    pjg.getResultP();
goto ulang;
}
else if (pilihan == 2)
{
  persegi Persegi;//membuat objek untuk menghitung persegi
    Persegi.setNilaiPs();//nama objeknya Persegi
    Persegi.getResultPs();
    goto ulang;
}
else if (pilihan == 1)
{
    lingkaran Lingkaran;//membuat objek dari class lingkaran
    Lingkaran.setNilaiL();//nama objek Lingkaran
    Lingkaran.getResultL();
    goto ulang;
}
   else if (pilihan == 5) // pilihan untuk keluar dari program
{
     exit(0);
}

    system("PAUSE");
    return EXIT_SUCCESS;
}
}
lalu Paste di file main.cpp yang sudah dibuat kemarin. Oke kawan!!
SALAM CODING!

PENGERTIAN LINKED LIST

Salam Coding!!
hai kawan sepercodingan, kali ini ane mau berbagi informasi tentang apa itu Linked List di C++, So Cekidot!!

Ini ane dapet dari Wikipedia mas Bro!!
Linked List

Senarai bertaut (bahasa Inggris: linked list) atau kadang-kadang disebut dengan Senarai berantai dalam ilmu komputer merupakan sebuah struktur data yang digunakan untuk menyimpan sejumlah objek data biasanya secara terurut sehingga memungkinkan penambahan, pengurangan, dan pencarian atas elemen data yang tersimpan dalam senarai dilakukan secara lebih efektif. Pada prakteknya sebuah struktur data memiliki elemen yang digunakan untuk saling menyimpan rujukan antara satu dengan lainnya sehingga membentuk sebuah senarai abstrak, tiap-tiap elemen yang terdapat pada senarai abstrak ini seringkali disebut sebagai node. karena mekanisme rujukan yang saling terkait inilah disebut sebagai senarai berantai.
Singly-linked-list.svg
Sebuah senarai berantai dengan tiap-tiap node yang terdiri atas dua elemen, data integer, dan elemen rujukan ke node berikutnya
Senarai berantai merupakan bentuk struktur data paling umum dan sederhana yang banyak digunakan untuk mengimplementasikan model struktur data lainnya, termasuk antrian, stack, ataupun larik assosiatif.


Keuntungan dan kerugian

Keuntungan utama pemanfaatan senarai berantai dibandingkan larik, ataupun senarai biasa adalah kemudahan dan efektifitas kerja yang lebih baik dalam hal menambah, mengurangi, serta mencari suatu elemen/node yang terdapat dalam senarai. Hal tersebut dimungkinkan karena elemen-elemen yang terdapat pada sebuah senarai berantai tidak ditempatkan pada sebuah blok memori komputer seperti halnya larik ataupun senarai biasa, melainkan tiap-tiap elemen/node tersebut tersimpan dalam blok memori terpisah, penambahan, pengurangan, ataupun penggantian node dapat dilakukan dengan mengubah elemen rujukan atas tiap-tiap node yang terkait. Kerugiannya, sebuah senarai berantai tidak memungkinkan pengaksesan elemen secara acak, dalam artian untuk dapat mengakses node ke tiga pada contoh di atas harus dilakukan dengan cara mengunjungi elemen-elemen sebelumnya, dimulai dari elemen pertama, ke dua, seterusnya hingga pada lokasi elemen yang dimaksudkan.

 

Jenis-jenis senarai berantai

 Senarai bertaut tunggal

Bila struktur data sebuah node hanya memiliki satu tautan atas node berikutnya dalam sebuah senarai bertaut, maka senarai bertaut tersebut dinamakan sebagai senarai bertaut tunggal.
Singly-linked-list.svg
Senarai bertaut tunggal dengan tiap-tiap node yang terdiri atas dua elemen, data integer, dan elemen rujukan ke node berikutnya

 Senarai bertaut ganda

Berbeda halnya dengan senarai bertaut tunggal, pada Senarai bertaut ganda, struktur data atas tiap-tiap node memiliki rujukan pada node sebelum dan berikutnya.
Doubly-linked-list.svg
Senarai bertaut ganda dengan tiap-tiap node yang terdiri atas tiga elemen, data integer, dan dua elemen rujukan ke node sebelum serta berikutnya

 Senarai bertaut sirkular

Pada dua jenis senarai sebelumnya, node terakhir dalam senarai tersebut merujuk pada null yang artinya akhir dari sebuah senarai, begitu pula null sebagai rujukan node sebelumnya pada node pertama bila senarai yang dimaksudkan adalah senarai bertaut ganda. Pada senarai bertaut sirkular, informasi rujukan pada node terakhir akan merujuk pada node pertama, dan rujukan pada node pertama akan merujuk pada node terakhir bila yang digunakan sebagai dasar implementasi adalah senarai bertaut ganda.
Circularly-linked-list.svg

hehehehe,, moga bermanfaat
Salam Coding!!

Monday, September 19, 2011

BEBERAPA LUAS BANGUN DATAR

Salam kompak!!
Saya akan membuat beberapa contoh program sederhana untuk lebih mengerti tentang class dan object. Namun ini masih sangat sederhana. Jadi silahkan dipelajari.

Disini saya membuat 5 buah file.
4 buah file berekstensi *.h, 1 buah file dengan ekstensi *.cpp
4 buah file tersebut berisi program yang dibuat dengan class. Dan 1 buah file berfungsi sebagai main() function untuk memanggil program. Agar dalam main() function kita bisa memanggil 4 buah file tersebut, maka kita harus meng-include-kan 4 buah file tersebut kedalam main() function yang telah kita buat. Sintaknya adalah #include “namafile.h”
Untuk lebih jelasnya bisa kita lihat Source Code di bawah ini..
Caranya :
1. Buka notepad atau compiler anda.
2. Ketikkan Sourcode di bawah ini:

class segi{
      public:
             void setNilai();
             double getResult();
      private:
              double a,t,l;

      };

      void segi::setNilai(){
           cout<<"Menghitung Segitiga"<<endl;
           cout<<"Masukkan alas   : ";
           cin>>a;
           cout<<"Masukkan tinggi : ";
           cin>>t;
           }

      double segi::getResult(){
           l=a*t;
           l/=2;
           return l;
           }

3. Simpan dengan nama segi3.h
4. Klik file > new atau tekan CTRL+N untuk membuat dokumen baru
5. Ketik Source Code di bawah ini:

class segiP{
      public:
             void setNilaiP();
             void getResultP();
      private:
              double p,L;
      };
 
      void segiP::setNilaiP(){
           cout<<endl<<"Menghitung Persegi Panjang"<<endl;
           cout<<"Masukkan panjang: ";
           cin>>p;
           cout<<"Masukkan lebar  : ";
           cin>>L;
           }
 
      void segiP::getResultP(){
           cout<<"Luas     : "<<p*L<<endl;
           cout<<"Keliling : "<<(p+L)*2<<endl;
           }
6. Simpan dengan nama segipanjang.h
7. Klik file > new atau tekan CTRL+N untuk membuat dokumen baru
8. Ketik Source Code dibawah ini:

class persegi{
      public:
             void setNilaiPs();
             void getResultPs();
      private:
              double s;
      };    
 
      void persegi::setNilaiPs(){
           cout<<endl<<"Menghitung Persegi"<<endl;
           cout<<"Masukkan sisi: ";
           cin>>s;
           }
 
      void persegi::getResultPs(){
           cout<<"Luas     : "<<s*s<<endl;
           cout<<"Keliling : "<<s*4<<endl;
           }
9. Simpan dengan nama persegi.h
10. Klik file > new atau tekan CTRL+N untuk membuat dokumen baru
11. Ketik Source Code di bawah ini:

class lingkaran{
      public:
             void setNilaiL();
             void getResultL();
      private:
              double r;
      };              
 
      void lingkaran::setNilaiL(){
           cout<<endl<<"Menghitung Lingkaran"<<endl;
           cout<<"Masukkan jari-jari: ";
           cin>>r;
           }
 
      void lingkaran::getResultL(){
           cout<<"Luas     : "<<phi*r*r<<endl;
           cout<<"Keliling : "<<phi*(2*r)<<endl;
           }
12. Simpan dengan nama lingkaran.h
13. Klik file > new atau tekan CTRL+N untuk membuat dokumen baru
14. Ketik Source Code di bawah ini:

#include <cstdlib>
#include <iostream>
#define phi 3.14
using namespace std;
#include "segi3.h"
#include "segipanjang.h"
#include "persegi.h"
#include "lingkaran.h"
 
int main(int argc, char *argv[])
{
    segi tiga;//membuat objek untuk menghitung segitiga
    tiga.setNilai();//nama objeknya tiga
    cout<<"Luas segitiga: "<<tiga.getResult()<<endl;
 
    segiP pjg;//membuat objek untuk menghitung persegi panjang
    pjg.setNilaiP();//nama objeknya pjg
    pjg.getResultP();
 
    persegi Persegi;//membuat objek untuk menghitung persegi
    Persegi.setNilaiPs();//nama objeknya Persegi
    Persegi.getResultPs();
 
    lingkaran Lingkaran;//membuat objek dari class lingkaran
    Lingkaran.setNilaiL();//nama objek Lingkaran
    Lingkaran.getResultL();
 
    system("PAUSE");
    return EXIT_SUCCESS;
}
 
15. Simpan dengan nama main.cpp
16. Simpan file yang berekstensi *.h tadi di direktori C:/dev-cpp/include atau kalau tidak, buatlah folder baru. Simpan 5 file tersebut di dalam 1 folder.
17. Buka file main.cpp
18. Run atau tekan F9 (pada compiler Dev Cpp) untuk menjalankan program.

Singkatnya untuk membuat program yang kompleks, class sangat membantu para programmer. Bayangkan jika kita membuat program dengan jumlah baris 1000 dalam satu file. Jika ada yang salah dalam program tersebut, kita agak bingung dan ribet mencari kesalahannya dimana, dikarenakan jumlah baris program yang super panjang. Namun apabila kita membuat class-class seperti contoh di atas, kita akan mudah menemukan kesalahan dan membetulkan kesalahan tersebut. Misalkan jika pada luas segitiga ada yang salah, maka kita tinggal membuka file segi3.h dan membetulkannya. Bisa dibilang efisiensi waktu juga. Mungkin salah satunya seperti itu fungsi dari class dan object.


Program ini masih sangat sederhana, jika kamu ingin yang lebih dari ini kamu bisa dapat di blog temaanku:
klik di sini akan sangat membantu mengingat kami sama-sama mengerjakan job yang sama, namun dia lebih rumit, hehehe...


oke kawan,
Salam Kompak!!

Thursday, September 15, 2011

CONTOH CLASS YANG SEDERHANA

Hei, kawan-kawan...kali ini ane bakalan buat program di c++ yang sangat sederhana. Dengan tujuan membuat program menggunakan aplikasi class. Disini ane membuat 3 class yang dapat saling berhubungan 1 sama lain. Tentunya ane juga buat 1 main nya donk... Oke kawan sekarang ane kasih aje dah coddingnye,..




#include<iostream.h>
class Luas
{
protected            : int panjang, lebar;
public    : void nilai(int a, int b)
{ panjang=a; lebar=b; }
};
class Persegi : public Luas
{
public : int area(void)
{ return(panjang*lebar); }
};
class Segitiga : public Luas
{
public : int area(void)
{ return(panjang*lebar/2); }
};

int main()
{  int a,b;
Persegi psg;
Segitiga sgt;
cout<<"Luas Persegi dan Segitiga"<<endl;
cout<<"Masukan Panjang       =";cin>>a;
cout<<"Masukan Lebar         =";cin>>b;
psg.nilai(a,b);
sgt.nilai(a,b);
cout<<"------------Output-------------"<<endl;
cout<<"Luas Persegi   =";cout<<psg.area()<<endl;
cout<<"Luas Segitiga  =";cout<<sgt.area()<<endl;

system ("PAUSE");


}

Program ini dapat menghitung Luas Persegi dan Luas Segitiga. Ane baru bikin yang ini bro!!... Insya Allah,, besok-besok nambah daaaahhhh...
Okeh kawan!!!
Salam Kompak

Tuesday, September 13, 2011

NEW JOB: Class and Object

Salam Kompak para pembaca yang budiman,
Pada kesempatan yang singkat ini saya akan menjelaskan sedikit tentang class dan object. Karena ini adalah materi yang akan saya pelajari. So mari kita ulas sedikit ya teman-teman.

Pengertian dari Class dan Object
Class merupakan suatu blueprint atau cetakan untuk menciptakan suatu instant
dari object. class juga merupakan grup suatu object dengan kemiripan
attributes/properties, behaviour dan relasi ke object lain.
Contoh : Class Person, Vehicle, Tree, Fruit dan lain-lain.

Object adalah instance dari class. Jika class secara umum merepresentasikan
(template) sebuah object, sebuah instance adalah representasi nyata dari class itu
sendiri.
Contoh : Dari class Fruit kita dapat membuat object Mangga, Pisang, Apel dan lainlain.

Membuat object
Untuk membuat object, kita menggunakan perintah new dengan sebuah nama class
yang akan dibuat sebagai instance dari class tersebut.
String str = new String();
Random r = new Random();
Pegawai p2 = new PEgawai();
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 dari class Date().

Attributes merupakan nilai data yang terdapat pada suatu object yang berasal dari
class. Attributes merepresentasikan karakteristik dari suatu object.
Contoh : pada Class Fruit terdapat attribute : warna, berat pada object mangga :
warna berisi kuning dan berat misalkan 0.25 kg pada object apel : warna berisi
merah dan berat misalkan 0.30 kg

Method 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 dan lain-lain.

Nah penjelasan diatas adalah penjelasan yang sangat msih sederhana. Untuk itu sekarang saya akan mencari lagi dan belajar tentang class dan object. Semoga berhasil

salam... 

Monday, September 12, 2011

pengumuman cuuyyy

Assalamualaikum!!
Hoooiii,,,... teman-teman sekalian.... kawanku sudah buat progam C ++ nya buat client niiii. Kalau mau tahu kalian liat aja di sini . Oke teman-teman sekalian!!

Wednesday, August 10, 2011

FINALLE: THE PROJECT

Assalamualaikum kawan-kawan sedunia!!!!
Akhirnya dengan banyak bantuan dari narasumber-narasumber yang lumayan terpercaya, kami dapat menyelesaikan proyek ini sesuai goal yang diinginkan. Kami sempat putus asa loh...tapi dengan tekad yang bulat dan semangat yang menggebu-gebu alhamdulillah, project ini selesai.

Kalau kalian ingin donlot dan mempelajarinya, silahkan Klik di sini program ini telah dapat menampilkan chat room dan privat room. Tapi ingat ini hanya program client, untuk mendapatkan program servernya dapat kamu donlot di blog temanku di http://mencariilmu-hasilpkl.blogspot.com/ . Oke teman, sampai jumpa lagi yaa....

Assalamulaiakummmm

Tuesday, August 2, 2011

PEKAN KE EMPAT

Hei guys, sekarang ane kirimin link ke job yang ane bikin. Kalo ente-ente mau pake sok....mangga didonlot ni link-nya disini ni!okeh bray, ane cao dulu ye. Ni baru software client guys!!,, kalo mau donlot servernya donlot di blog punya temen ane dulu bray, kalian bisa donlotdisini ni! siipp ga tuhhhh??
Met Puasa teman-teman,
Assalamulaikum Warahmatullahi Wabarakatuh

Wednesday, July 27, 2011

TITIK TERANG

Setelah  3 minggu kami berjuang mengerjakan project ini dan selalu berganti-ganti tampilang dan coding akhirnya kami mendapat titik terang. Tepatnya tadi pagi kami mendapat sebuah coding yang dapat digunakan sesusai goal yang kami harapkan. Inilah hasilnya,
1. Tampilan awal client:
dan ini adalah coding-nya:

Private Sub Command1_Click(index As Integer)

If Winsock1.State = sckConnected Then
  data = "login," & Text1.Text & "," & Text2.Text
  Winsock1.SendData data
End If
End Sub

Private Sub Form_Load()
With Winsock1
.RemoteHost = Text3.Text
.RemotePort = 70
.Connect
End With
End Sub

Private Sub Winsock1_ConnectionRequest(ByVal requestID As Long)
If Winsock1.State Then Winsock1.Close
Winsock1.Accept requestID

End Sub

Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Dim data As String
Dim ar() As String
Dim proto() As String
Dim ar2() As String

Call Winsock1.GetData(data)
proto = Split(data, ";")
ar = Split(proto(0), ",")
ar2 = Split(proto(1), ",")

If ar(0) = "login" And ar(1) = "ok" Then

  MsgBox "Monggo " & Text1.Text, vbOKOnly, ""
  Form4.Show
  Form1.Hide
  Form4.List2.AddItem ar2(0)
  Form4.List2.AddItem ar2(1)
  Form4.List2.AddItem ar2(2)
  Form4.List2.AddItem ar2(3)
  Form4.List2.AddItem ar2(4)
  Form4.List2.AddItem ar2(5)
  Form4.List2.AddItem ar2(6)
  Form4.List2.AddItem ar2(7)
  Form4.List2.AddItem ar2(8)
  Form4.List2.AddItem ar2(9)
  Form4.List2.AddItem ar2(10)
Else
  MsgBox "Nama atau Password kamu salah"
  'Winsock1.Close
  Text1.SetFocus

End If
End Sub

Nah sekarang kita akan ke form selanjutnya, beginilah bentuknya:
2. Tampilan form chatting

dan inilah coding-nya:


Private Sub Command2_Click()
Dim intResponse As Integer

intResponse = MsgBox("Are you sure you want to quit?", _
vbYesNo + vbQuestion, _
"Quit")

If intResponse = vbYes Then
End
End If
End Sub

Private Sub List2_Click()
Text1.SetFocus
End Sub

Private Sub Winsock1_ConnectionRequest(ByVal requestID As Long)
If Form1.Winsock1.State Then Form1.Winsock1.Close
Form1.Winsock1.Accept requestID
End Sub

Private Sub Command1_Click()
If Winsock1.State = sckConnected Then
    i = Text1.Text
    Winsock1.SendData "chat," & Form1.Text1.Text & "," & Form4.List2 & "," & i
End If
    Text1.Text = ""
    Text1.SetFocus
End Sub

Private Sub Form_Load()
With Winsock1
.RemoteHost = Form1.Text3.Text
.RemotePort = 80
.Connect
End With
End Sub

Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Dim data As String
Dim i As String

Form1.Winsock1.GetData data, vbString
List2.AddItem data

Winsock1.GetData i, vbString
List1.AddItem i

End Sub

Alhamdulillah yah.....hehehe, oke job selanjutnya adalah: privat chat!!
semangka!! eh,, semangat!!!

Thursday, July 14, 2011

HARI KESEMBILAN

Setelah beberapa hari ini, ternyata kami menemukan kesalahan yang sangat fatal. Jadi untuk beberapa hari ini kami tidak melakukan posting untuk laporan.
Setelah kami diskusikan dengan pembimbing kami, kami memutuskan untuk membuat ulang protocol kami mulai dari 0. Oke sekarang akan saya sampaikan protocol kedua yang telah kami sepakati. Daftar anggota sudah ada di database.


1. server Sudah Memiliki data base anggota chat, contoh:

 (NamaPasword)
2. Untuk login adalah

LOGIN(iko1234)
  * If   'NO'   tidak akan diproses (Nama Or Pasword salah)
  * If   'Yes'   Data akan diproses (Nama Or Pasword Benar)
  
3. Setelah login,
     Server menampilkan nama-nama teman yang online.
        * (Anggota online ada namanya di list)
                          ( Text Nama)
        *  (Anggota off line, tidak ada nama di list) 
                                  (Text " ")

4. Request Connect (masukkan Port yang tersedia)
       (Port, Connect)

5. Chatting (Permintaan Chat)
      
       chating ke id fah adalah

CHAT.fah
kemudian id fah menyetujui dengan protocol
CONNECT.iko      
jika yang ingin chat dengan fah adalah iko.
6.  Komunikasi Data 
Protocol untuk mengirim pesan adalah:
SEND (TEXT.fah "Hello")
dan penerima akan mendapat protocol:
ARRIVED (TEXT.fah "Hello")
4. Keluar sistem:
LOGOUT 

semoga tidak ada lagi protocol-protocol yang lain lagii,,
SALAM KOMPAK SELALU