Pages

praktikum selasa 10.30-12.00 STRUKTUR DATA

#include <iostream.h>
template <class T>

class Array1D{
      friend ostream& operator<<(ostream&,const Array1D<T>&);
public:
       Array1D(int size=0);
       Array1D(const Array1D<T>& v);
       Array1D(){delete[]element;}
       T& operator[](int i)const;
       int Size(){return size;}
       Array1D<T>& operator =(const Array1D<T>& v);
       Array1D<T> operator+()const;
       Array1D<T> operator+(const Array1D<T>& v)const;
       Array1D<T> operator-()const;
       Array1D<T> operator-(const Array1D<T>& v)const;
       Array1D<T> operator*(const Array1D<T>& v)const;
       Array1D<T>&operator+=(const T& x);
       Array1D<T>& ReSize(int sz);
       Array1D<T>& geser_kanan();
       Array1D<T>& geser_kiri();
private:
        int size;
        T*element;
};
template <class T>
Array1D<T>::Array1D(int sz)
{
                         size =sz;
                         element=new T[sz];
}

Praktikum 4 S.data,Slasa 19 Oktober 2010 10.30-1200

#include <cstdlib>
#include <iostream>
#define maks5
using namespace std;
class Array1D{
friend ostream& operator<<(ostream&, const Array1D&);
friend istream& operator>>(istream&, Array1D&);
public:
Array1D();
void cetak();
void geser_kiri();
void geser_kanan();
void hapus_elemen();
private:
char A[5];
};
Array1D::Array1D(){
for(int i=0;i<5;i++)
A[i]=’O';
}
void Array1D::cetak(){
for(int i=0;i<5;i++)
cout<<A[i]<<” “;
}
ostream& operator<<(ostream& out, const Array1D& x){
for(int i=0;i<5;i++)
out<<x.A[i]<<” “;
out<<endl;
return out;
}
istream& operator>>(istream& in, Array1D& x){
for(int i=0;i<5;i++){
cout<<”nilai array ke-”<<i+1<<” : “;
in>>x.A[i];
}
return in;
}
void Array1D::geser_kanan(){
int n=5;
int temp=A[n-1];
for(int i=n-1;i>=0;i–)
A[i+1]=A[i];
A[0]=temp;
}
void Array1D::geser_kiri(){
int n=5;
int temp=A[0];
for(int i=0;i<n;i++)
A[i]=A[i+1];
A[n-1]=temp;
}
void Array1D::hapus_elemen(){
int posisi;
cout<<”Pilih indeks berapa yang akan di hapus : “;
cin>>posisi;
if(posisi>0 && posisi<=5)
A[posisi-1]=’ ‘;
else cout<<”indeks hanya terdiri dari 1 – 5\n”;
}
int main(int argc, char *argv[])
{
Array1D x;
cout<<”Array masih kosong : “<<x;
cin>>x;
cout<<”Isi Array saat ini : “<<x;
x.geser_kiri();
cout<<”Isi Array setelah di geser kiri : “<<x;
x.geser_kanan();
cout<<”Isi Array setelah di geser kanan : “<<x;
cout<<”Urutan elemen pada indeksnya saat ini : “<<x;
x.hapus_elemen();
cout<<”Setelah dihapus menjadi : “<<x;
system(“PAUSE”);
return EXIT_SUCCESS;
}


S.data

 Nama : Radip Yoga S.P
 Nim    : 09018243

1. Class : Biasnya mempunyai 2 data member yaitu beripe float dan bertipe int
contoh class:
class bilangan{
      friend ostream& operator<<(ostream&,const bilangan&);
      friend istream& operator>>(istream&, bilangan&);
public:
       bilangan(int a0=0, float b0=0.0):a(a0),b(b0){}
       void banding_int(const bilangan&, const bilangan&);
       bilangan& operator=(const bilangan&);
       bilangan operator+(const bilangan&)const;
       bilangan operator-()const;
private:
        int a;
        float b;
        };

2. Construktor : Biasanya menjadi bagian dari efisiensi suatu clasas yang berfungsi memnciptakn instan dari class tersebut
contoh:
bilangan& bilangan::operator=(const bilangan& x)
{
          a=x.a;
          b=x.b;
          return*this;
          }

3.Method :merupakan bentuk dari langkah langkah dalam mencari solusi untuk memcahkan suatu masalah dalam suatu program
contoh :
void bilangan::banding_int(const bilangan& x, const bilangan& y)
{
     if(x.a>y.a)cout<<x.a<<"::x lebih besar dari "<<y.a<<"::y";
     else cout<<x.a<<"::x lebih kecil dari "<<y.a<<"::y";
     }

4.Data Member : pada umumya berisi tentang data yang akan ditampilkan sebagaimana membentuk construktor,membuat operator overloading dan manipulasi data lewat method

 private:
              int a;
              float b;
              };

5.operator overloading baik sebagai friend maupun sebagai anggota class
bentuk umumnya adalah:
a.sbgai friend
 friend ostream& operator<<(ostream&,const bilangan&);
 friend istream& operator>>(istream&, bilangan&);
b. sebagai anggota class

bilangan& bilangan::operator=(const bilangan& x)
{
          a=x.a;
          b=x.b;
          return*this;
          }