Pada pembahasan ini saya mengulas tentang menggeser element array sebagai latihan dari rencana kuliah bulan ke-3.
Langsung saja ke pngembangan masalah :
1. Identifikasi masalah
Menggeser element array
2. Menentukan input dan output
Input a, b, temp
Output kiri
3. Membuat flowchart
4. Test menggunakan data
| 3 | 5 | |
a = 3
b = 5
temp = a
a = b
b = c
A[4] = A[3]
A[3] = A[2]
A[2] = A[1]
5. Implementasi C++
#include < cstdlib>
#include <iostream>
#define maks5
/*run this program using the console pauser or add your won getch, system("pause") or input loop */
using namespace std;
class array{
friend ostream&operator<<(ostream&,const array&);
friend istream&operator>>(istream&, array&);
public :
array();
void cetak();
void geser_kiri();
private :
char a[5];
int posisi;
class array{
friend ostream&operator<<(ostream&,const array&);
friend istream&operator>>(istream&, array&);
public :
array();
void cetak();
void geser_kiri();
private :
char a[5];
int posisi;
};
array::array(){
for(int i=0; i<5 ; i++)
a[i]="O";
}
void array::cetak(){
for(int i=0; i<5; i++)
cout<<a[i]<<" ";
}ostream&operator<<ostream& out, const array&keluar){
for(int i=0; i<5; i++)
out<<keluar.a[i]<<" ";
out<<endl;
return out;
}
istream&operator>>(istream&in, array& masuk){
int posisi;
for(int posisi=1; posisi<=5; posisi++){
cout<<"MAsukkan nilai array posisi ke "<<posisi<<"=";
if(posisi>=0&&posisi<=5){
in>>masuk.a[posisi-1];
}
}
return in;
{
void array::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;
array::array(){
for(int i=0; i<5 ; i++)
a[i]="O";
}
void array::cetak(){
for(int i=0; i<5; i++)
cout<<a[i]<<" ";
}ostream&operator<<ostream& out, const array&keluar){
for(int i=0; i<5; i++)
out<<keluar.a[i]<<" ";
out<<endl;
return out;
}
istream&operator>>(istream&in, array& masuk){
int posisi;
for(int posisi=1; posisi<=5; posisi++){
cout<<"MAsukkan nilai array posisi ke "<<posisi<<"=";
if(posisi>=0&&posisi<=5){
in>>masuk.a[posisi-1];
}
}
return in;
{
void array::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;
}
int main(int argc, char**argv){
array X;
cout<<"array masih kosong : "<<X;cin>>X;
cout<<endl<<"isi array saat ini : "<<X;
X.geser_kiri();
cout<<"isi array setelah digeser kiri : "<<X;
system ("PAUSE");
return EXIT_SUCCEXX;
int main(int argc, char**argv){
array X;
cout<<"array masih kosong : "<<X;cin>>X;
cout<<endl<<"isi array saat ini : "<<X;
X.geser_kiri();
cout<<"isi array setelah digeser kiri : "<<X;
system ("PAUSE");
return EXIT_SUCCEXX;
}
6. Eksekusi
Pertama telah ditentukan bahwa array terdiri dari 5 angka dengan isian 0 0 0 0 0 karena belum diinputkan. Kemudian menginputkan data dan setelah itu muncul array yang telah digeser ke kiri.
Tersedia latihan 2 link
latihan 3 link
Wassalmuallaikum wr. wb.
0 comments :
Post a Comment