#include <iostream.h>
class Array1D{
friend ostream& operator<<(ostream&, const Array1D&);
friend istream& operator<<(istream&,Array1D&);
public:
Array1D();
void cetak();
void geser_kiri();
void geser_kanan();
private:
char A[maks];
};
Array1D :: Array1D()
{
for (int i=0; i<maks; i++)
A[i]='0';
}
void Array1D::cetak()
{
for (int i=0;i<maks;i++)
cout<<A[i]<<"";
}
ostream&operator<<(ostream& out,const Array1D&x)
{
for (int i=0;i<maks;i++)
cout<<A[i]<<"";
cout<<endl;
return out;
}
istream& operator>.(istream&in,Array1D&x)
{int posisi;
cout<<"Mengisi array pada posisi ke:";
in>>posisi;
if(posisi>0&& posisi<=maks){
cout<<"masukan elemen array-nya:";
in>>x.A[posisi-1];
}
else
cout<<"Anda memasukan posisi di luar range..";
return in;
}
{
int n= maks;
int temp=A[n-1];
for (int i=n-1;i>=0;i--)
A[i+1]=A[i];
A[0]=temp;
}
{
int n=maks;
int temp = A[0];
for (int i=0;i<n;i++)
A[i]=A[i+1];
A[n-1]=temp;
}
main(){
cout<<"Array masih kosong :"<<x;
cin>>x;
cout<<"Isi Array saat ini:"<<x;
x.geser_kiri();
x.geser_kanan();
return 0;
}
Selasa, 19 Oktober 2010
Selasa, 12 Oktober 2010
prak 3.sdata.07..rabu
#include <cstdlib>
#include <iostream>
using namespace std;
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;
protected:
int a;
float b;
};
ostream& operator<<(ostream& out, const bilangan& x){
out<<"Bagian integer: "<<x.a<<endl;
out<<"Bagian float: "<<x.b<<endl;
return out;
}
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";
}
bilangan& bilangan::operator=(const bilangan& x){
a=x.a;
b=x.b;
return *this;
}
istream& operator>>(istream& in, bilangan& x){
cout<<"\nMasukkan bagian integer: ";
in>>x.a;
cout<<"Masukkan bagian float: ";
in>>x.b;
return in;
}
bilangan bilangan::operator+(const bilangan& x)const{
bilangan cc;
cc.a=a+x.a;
cc.b=b+x.b;
return cc;
}
bilangan bilangan::operator-()const{
bilangan x;
x.a=-a;
x.b=-b;
return x;
}
class bil_char:public bilangan{
friend ostream& operator<<(ostream&, const bil_char&);
public:
bil_char(int a0=0, int b0=0,char ch='x'):bilangan(a0,b0),c(ch){}
private:
char c;
};
ostream& operator<<(ostream& out,const bil_char& x){
out<<"Bagian integer: "<<x.a<<endl;
out<<"Bagian float: "<<x.b<<endl;
out<<"Bagian char: "<<x.c<<endl;
return out;
}
int main(int argc, char *argv[])
{
cout<<"sudarmono\08018203\n\n";
bilangan s,t(-2,3.14),d;
cout<<"Nilai awal s\n"<<s;
cout<<"Nilai awal t dari deklarasi\n"<<t;
s=t;
cout<<"Setelah diassign t\n";
cout<<"Nilai s\n"<<s;
cout<<"Masukkan nilai-nilai objek d";
cin>>d;
cout<<"Setelah d+t=>\n"<<d+t;
cout<<"Nilai d dinegatifkan\n"<<-d;
bil_char ss;
cout<<"Nilai awal ss\n"<<ss;
system("PAUSE");
return EXIT_SUCCESS;
}
#include <iostream>
using namespace std;
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;
protected:
int a;
float b;
};
ostream& operator<<(ostream& out, const bilangan& x){
out<<"Bagian integer: "<<x.a<<endl;
out<<"Bagian float: "<<x.b<<endl;
return out;
}
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";
}
bilangan& bilangan::operator=(const bilangan& x){
a=x.a;
b=x.b;
return *this;
}
istream& operator>>(istream& in, bilangan& x){
cout<<"\nMasukkan bagian integer: ";
in>>x.a;
cout<<"Masukkan bagian float: ";
in>>x.b;
return in;
}
bilangan bilangan::operator+(const bilangan& x)const{
bilangan cc;
cc.a=a+x.a;
cc.b=b+x.b;
return cc;
}
bilangan bilangan::operator-()const{
bilangan x;
x.a=-a;
x.b=-b;
return x;
}
class bil_char:public bilangan{
friend ostream& operator<<(ostream&, const bil_char&);
public:
bil_char(int a0=0, int b0=0,char ch='x'):bilangan(a0,b0),c(ch){}
private:
char c;
};
ostream& operator<<(ostream& out,const bil_char& x){
out<<"Bagian integer: "<<x.a<<endl;
out<<"Bagian float: "<<x.b<<endl;
out<<"Bagian char: "<<x.c<<endl;
return out;
}
int main(int argc, char *argv[])
{
cout<<"sudarmono\08018203\n\n";
bilangan s,t(-2,3.14),d;
cout<<"Nilai awal s\n"<<s;
cout<<"Nilai awal t dari deklarasi\n"<<t;
s=t;
cout<<"Setelah diassign t\n";
cout<<"Nilai s\n"<<s;
cout<<"Masukkan nilai-nilai objek d";
cin>>d;
cout<<"Setelah d+t=>\n"<<d+t;
cout<<"Nilai d dinegatifkan\n"<<-d;
bil_char ss;
cout<<"Nilai awal ss\n"<<ss;
system("PAUSE");
return EXIT_SUCCESS;
}
Rabu, 06 Oktober 2010
postest 2.pratikum sdata...
#include <iostream>
template <class T>
class Kompleks{
friend class Operasi<T>;
friend ostream& operator<<(ostream&, const Kompleks<T>&);
friend istream& operator>>(isteam&, Kompleks<T>&);
public:
Kompleks(T s=0, T t=0); a(s), b(t){}
void cetak();
Kompleks operator-();
Kompleks operator-(const Kompleks<T>&);
Kompleks operator+(const Kompleks<T>&);
private:
T a;
T b;
};
template <class T>
void Kompleks<T> Kompleks<T>::operator-()
{ Kompleks x;
x.a=a;
x.b=-b;
return x;
}
template <class T>
Kompleks<T> Kompleks<T>::operator-(const Kompleks<T>& m)
{ Kompleks x;
x.a=a-m.a;
x.b=b-m.b;
return x;
}
template <class T>
Kompleks<T> Kompleks<T>::operator+(const Kompleks<T>& m)
{ Kompleks x;
x.a=a+m.a;
x.b=b+m.b;
return x;
}
template <classT>
ostream& operator<<(ostream& out, const Kompleks<T>& x)
{
if(x.b==0) out<<'['<<x.a<<']';
else if(x.a==0 && x.b==1) out<<'['<<"i"<<']';
else if(x.a==0 && x.b==-1) out<<'['<<"i"<<']';
else if(x.a==0 && x.b>1) out<<'['<<x.b<<"i"<<']';
else if(x.a==0 && x.b<-1) out<<'['<<x.b<<"i"<<']';
else if(x.b==1) out<<'['<<x.a<<"+"<<"i"<<']';
else if(x.b>0) out<<'['<<x.a<<"+"<<x.b<<"i"<<']';
else if(x.b==-1) out<<'['<<x.a<<"-i"<<']';
else out<<'['<<x.a<<x.b<<"i"<<']';
return out;
}
template <class T>
istream& operator>>(istream& in, Lompleks<T>& x)
{
cout<<"Masukkan bagian real:";
in>>x.a;
cout<<"Masukan bagian imajiner:";
in>>x.b;
return in;
}
template <class T>
class operasi{
public:
Kompleks<T> jumlah(const Kompleks<T>&, const Kompleks<T>&);
Kompleks<T> kali(const Kompleks<T>&, const Kompleks<T>&);
Kompleks<T> kurang(const Kompleks<T>&, const Kompleks<T>&);
private:
int x, y, z;
};
template<class T>
Kompleks<T> operator<T>::jumlah(const Kompleks<T>& m, const Kompleks<T>& n)
{ Kompleks<T> temp;
temp.a=m.a+n.a;
temp.b=m.b+n.b;
return temp;
}
template <class T>
Kompleks<T> operator<T>::kurang(const Kompleks<T>& m, const Kompleks<T>& n)
{Kompleks<T> temp;
temp.a=m.a-n.a;
temp.b=m.b-n.b;
return temp;
}
template<class T>
Kompleks<T> operator<T>::kali(const Kompleks<T>& m, const Kompleks<T>& n)
{ Kompleks<T> temp;
temp.a=(m.a*n.a)-(m.b*n.b);
temp.b=(m.a*n.b)-(m.b*n.a);
return temp;
}
int main(int argc, char *argv[])
{
int n;
Kompleks<int> x(2,3), y(4,-4), t;
operasi<int> z;
cout<<"Menggunakan cetak():";x.cetak();
cout<<"menggunakan overloading:"<<x;
cout<<"konjugat:"<<-x;
y.cetak();
cout<<"\nPenjumlahan menggunakan method:";
t=z.jumlah(x,y);
t.cetak();
cout<<"Penjumlahan menggunakan operator:";
t=x+y;
cout<<x<<"+"<<y<<"="<<t;
cout<<"\nPerkalian menggunkan method:";
t=z.kali(x,y);
t.cetak();
cout<<"Perkalian menggunakan operator:";
t=x*y;
cout<<x<<"*"<<y<<"="<<t;
t=x-y;
cout<<"\n"<<x<<"-"<<y<<"="<<t<<endl;
kompleks<int> n;
cin>>n;
cout<<n;
return 0;
}
template <class T>
class Kompleks{
friend class Operasi<T>;
friend ostream& operator<<(ostream&, const Kompleks<T>&);
friend istream& operator>>(isteam&, Kompleks<T>&);
public:
Kompleks(T s=0, T t=0); a(s), b(t){}
void cetak();
Kompleks operator-();
Kompleks operator-(const Kompleks<T>&);
Kompleks operator+(const Kompleks<T>&);
private:
T a;
T b;
};
template <class T>
void Kompleks<T> Kompleks<T>::operator-()
{ Kompleks x;
x.a=a;
x.b=-b;
return x;
}
template <class T>
Kompleks<T> Kompleks<T>::operator-(const Kompleks<T>& m)
{ Kompleks x;
x.a=a-m.a;
x.b=b-m.b;
return x;
}
template <class T>
Kompleks<T> Kompleks<T>::operator+(const Kompleks<T>& m)
{ Kompleks x;
x.a=a+m.a;
x.b=b+m.b;
return x;
}
template <classT>
ostream& operator<<(ostream& out, const Kompleks<T>& x)
{
if(x.b==0) out<<'['<<x.a<<']';
else if(x.a==0 && x.b==1) out<<'['<<"i"<<']';
else if(x.a==0 && x.b==-1) out<<'['<<"i"<<']';
else if(x.a==0 && x.b>1) out<<'['<<x.b<<"i"<<']';
else if(x.a==0 && x.b<-1) out<<'['<<x.b<<"i"<<']';
else if(x.b==1) out<<'['<<x.a<<"+"<<"i"<<']';
else if(x.b>0) out<<'['<<x.a<<"+"<<x.b<<"i"<<']';
else if(x.b==-1) out<<'['<<x.a<<"-i"<<']';
else out<<'['<<x.a<<x.b<<"i"<<']';
return out;
}
template <class T>
istream& operator>>(istream& in, Lompleks<T>& x)
{
cout<<"Masukkan bagian real:";
in>>x.a;
cout<<"Masukan bagian imajiner:";
in>>x.b;
return in;
}
template <class T>
class operasi{
public:
Kompleks<T> jumlah(const Kompleks<T>&, const Kompleks<T>&);
Kompleks<T> kali(const Kompleks<T>&, const Kompleks<T>&);
Kompleks<T> kurang(const Kompleks<T>&, const Kompleks<T>&);
private:
int x, y, z;
};
template<class T>
Kompleks<T> operator<T>::jumlah(const Kompleks<T>& m, const Kompleks<T>& n)
{ Kompleks<T> temp;
temp.a=m.a+n.a;
temp.b=m.b+n.b;
return temp;
}
template <class T>
Kompleks<T> operator<T>::kurang(const Kompleks<T>& m, const Kompleks<T>& n)
{Kompleks<T> temp;
temp.a=m.a-n.a;
temp.b=m.b-n.b;
return temp;
}
template<class T>
Kompleks<T> operator<T>::kali(const Kompleks<T>& m, const Kompleks<T>& n)
{ Kompleks<T> temp;
temp.a=(m.a*n.a)-(m.b*n.b);
temp.b=(m.a*n.b)-(m.b*n.a);
return temp;
}
int main(int argc, char *argv[])
{
int n;
Kompleks<int> x(2,3), y(4,-4), t;
operasi<int> z;
cout<<"Menggunakan cetak():";x.cetak();
cout<<"menggunakan overloading:"<<x;
cout<<"konjugat:"<<-x;
y.cetak();
cout<<"\nPenjumlahan menggunakan method:";
t=z.jumlah(x,y);
t.cetak();
cout<<"Penjumlahan menggunakan operator:";
t=x+y;
cout<<x<<"+"<<y<<"="<<t;
cout<<"\nPerkalian menggunkan method:";
t=z.kali(x,y);
t.cetak();
cout<<"Perkalian menggunakan operator:";
t=x*y;
cout<<x<<"*"<<y<<"="<<t;
t=x-y;
cout<<"\n"<<x<<"-"<<y<<"="<<t<<endl;
kompleks<int> n;
cin>>n;
cout<<n;
return 0;
}
Langganan:
Postingan (Atom)