yang ane share ini masih menggunakan cara brute force,yang anak IT bilang itu cara bodoh nya hehehe....
#include <iostream> #include<iomanip> using namespace std; int main(int argc, char** argv) { int kiri[100],kanan[100],i,kidal1[100],kidal2[100],n,j,b[100],tmp; cout<<"masukan banyak data = ";cin>>n; for(i=1;i<=n;i++){ cout<<"masukan nilai kiri yang ke"<<i<<" = ";cin>>b[i]; } cout<<"\n"<<setw(4)<<"kiri"<<setw(5)<<"= "; for(i=1;i<=(n/2);i++){ kiri[i]=b[i]; cout<<kiri[i]<<" "; } cout<<"\n"<<setw(5)<<"kanan"<<setw(4)<<"= "; for(i=(n/2)+1;i<=n;i++){ kanan[i]=b[i]; cout<<kanan[i]<<" "; } //proses urutan yang sebelah kiri for(i=0;i<=n/2;i++){ for(j=i+1;j<=n/2;j++){ if(b[i]>b[j]){ tmp=b[i]; b[i]=b[j]; b[j]=tmp; } // kiri[i]=b[i]; } } //proses urutan yang sebelah kanan for(i=(n/2)+1;i<=n;i++){ for(j=i+1;j<=n;j++){ if(b[i]>b[j]){ tmp=b[i]; b[i]=b[j]; b[j]=tmp; } // kanan[i]=b[i]; } } //menampilkan urutan yang kiri cout<<"\n"<<setw(4)<<"kiri"<<setw(5)<<"= "; for(i=1;i<=n/2;i++){ //cout<<kiri[i]; cout<<b[i]<<" "; } //menampilkan urutan yang kanan cout<<"\n"<<setw(4)<<"kanan"<<setw(4)<<"= "; for(i=(n/2)+1;i<=n;i++){ // cout<<kanan[i]; cout<<b[i]<<" "; } //proses urutan keseluruhan for(i=1;i<=n;i++){ for(j=i+1;j<=n;j++){ if(b[i]>b[j]){ tmp=b[i]; b[i]=b[j]; b[j]=tmp; } // kanan[i]=b[i]; } } //menampilkan urutan keseluruhan cout<<"\n"<<setw(4)<<"semua"<<setw(4)<<"= "; for(i=1;i<=n;i++){ // cout<<kanan[i]; cout<<b[i]<<" "; } return 0; }
hasil jadi nya ntar seperti ini
masukan banyak data = 8
masukan nilai kiri yang ke1 = 9
masukan nilai kiri yang ke2 = 2
masukan nilai kiri yang ke3 = 4
masukan nilai kiri yang ke4 = 3
masukan nilai kiri yang ke5 = 5
masukan nilai kiri yang ke6 = 7
masukan nilai kiri yang ke7 = 6
masukan nilai kiri yang ke8 = 8
kiri = 9 2 4 3
kanan = 5 7 6 8
kiri = 2 3 4 9
kanan = 5 6 7 8
semua = 2 3 4 5 6 7 8 9
--------------------------------
Process exited with return value 0
Press any key to continue . . .
0 comments:
Post a Comment