#include <cstdlib>
#include <iostream>
#define maks 5
using namespace std;
class Array1D{
friend ostream& operator<<(ostream&, const Array1D&);
friend istream& operator>>(istream&, Array1D&);
public:
Array1D();
void cetak();
void urut();
void geser_kiri();
void geser_kanan();
void hapus();
private:
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<<x.A[i]<<” “;
cout<<endl;
return out;
}
istream& operator>>(istream& in, Array1D& x){
cout<<”Masukkan elemen array nya: \n”;
for(int i=0;i<maks;i++){
cout<<”array ke-”<<i+1<<”: “;
in>>x.A[i];
}
return in;
}
void Array1D::urut(){
int n=maks;
char temp;
for(int s=1;s<n;s++){
for(int i=n-1;i>=0;i–){
if(A[i]<A[i-1]){
temp=A[i];
A[i]=A[i-1];
A[i-1]=temp;
}
}
}
}
void Array1D::geser_kanan()
{
int n=maks;
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=maks;
int temp= A[0];
for(int i=0;i<n;i++)
A[i]=A[i+1];
A[n-1]=temp;
}
void Array1D::hapus(){
int pil;
cout<<”Elemen yang akan di hapus: “;
cin>>pil;
int n=maks;
for(int i=pil-1;i<n;i++){
A[i]=A[i+1];
}
A[n-1]=’0′;
}
int main(int argc, char *argv[])
{
Array1D x;
cout<<”Array masih kosong:”<<x;
cin>>x;
cout<<”Isi Array saat ini:”<<x;
x.urut();
cout<<”Isi Array setelah diurutkan: “<<x;
x.geser_kiri();
cout<<”Isi Array setelah digeser ke kiri:”<<x;
x.geser_kanan();
cout<<”Isi Array setelah digeser ke kanan:”<<x;
x.hapus();
cout<<”Isi Array setelah dihapus: “<<x;
system(“PAUSE”);
return EXIT_SUCCESS;
}
Tidak ada komentar:
Posting Komentar