#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 geser_kiri();
void geser_kanan();
void hapus();
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){
int posisi;
cout<<"Mengisi array pada posisi ke: ";
in>>posisi;
if(posisi>0&&posisi<=maks){
cout<<"Masukkan elemen array nya: ";
in>>x.a[posisi-1];
}
else
cout<<"Anda memasukkan posisi di luar range...\n";
return in;
}
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.geser_kiri();
cout<<"Isi Array setelah digeser kiri: "<<x;
x.geser_kanan();
cout<<"Isi Array setelah digeser kanan: "<<x;
x.hapus();
cout<<"Isi Array setelah dihapus: "<<x;
system("PAUSE");
return EXIT_SUCCESS;
}
0 komentar:
Posting Komentar