Langsung ke konten utama

Listing Program C++ Sort Campuran (bubble, selection, insertion, quick, exchange)

#include <iostream.h>
#include <conio.h>

int data[100],data2[100];
int n;

void tukar(int a,int b)
{
int t;
t = data[b];
data[b] = data[a];
data[a] = t;
}

void bubble_sort()
{
for(int i=1;i<n;i++)
{
for(int j=n-1;j>=i;j--)
{
if(data[j]<data[j-1]) tukar(j,j-1);
}
}
cout<<"bubble sort selesai!"<<endl;
cout<<"Silahkan klik enter kemudian pilih 7 untuk melihat hasilnya"<<endl;
}

void exchange_sort()
{
for (int i=0; i<n-1; i++)
{
for(int j = (i+1); j<n; j++)
{
if (data [i] > data[j]) tukar(i,j);
}
}
cout<<"exchange sort selesai!"<<endl;
cout<<"Silahkan klik enter kemudian pilih 7 untuk melihat hasilnya"<<endl;
}

void selection_sort()
{
int pos,i,j;
for(i=0;i<n-1;i++)
{
pos = i;
for(j = i+1;j<n;j++)
{
if(data[j] < data[pos]) pos = j;
}
if(pos != i) tukar(pos,i);
}
cout<<"selection sort selesai!"<<endl;
cout<<"Silahkan klik enter kemudian pilih 7 untuk melihat hasilnya"<<endl;
}

void insertion_sort()
{
int temp,i,j;
for(i=1;i<n;i++)
{
temp = data[i];
j = i -1;
while(data[j]>temp && j>=0)
{
data[j+1] = data[j];
j--;
}
data[j+1] = temp;
}
cout<<"insertion sort selesai!"<<endl;
cout<<"Silahkan klik enter kemudian pilih 7 untuk melihat hasilnya"<<endl;
}

void QuickSort(int L, int R)
{
int i, j;
int mid;

i = L;
j = R;
mid = data[(L+R) / 2];

do
{
while (data[i] < mid) i++;
while (data[j] > mid) j--;

if (i <= j)
{
tukar(i,j);
i++;
j--;
};
} while (i < j);

if (L < j) QuickSort(L, j);
if (i < R) QuickSort(i, R);
}

void Input()
{
cout<<"Masukkan jumlah data = "; cin>>n;
for(int i=0;i<n;i++)
{
cout<<"Masukkan data ke-"<<(i+1)<<" = "; cin>>data[i];
data2[i] = data[i];
}
}

void Tampil()
{
cout<<"Data : "<<endl;
for(int i=0;i<n;i++)
{
cout<<data[i]<<" ";
}
cout<<endl;
}

void AcakLagi()
{
for(int i=0;i<n;i++)
{
data[i] = data2[i];
}
cout<<"Data sudah teracak!"<<endl;
cout<<"Silahkan klik enter kemudian pilih 7 untuk melihat hasilnya"<<endl;
}

void main()
{
int pil;
clrscr();
do
{
clrscr();
cout<<"++++Program Sorting Komplit++++"<<endl;
cout<<"*********************************************"<<endl;
cout<<" 1. Input Data"<<endl;
cout<<""<<endl;
cout<<" 2. Bubble Sort"<<endl;
cout<<" 3. Exchange Sort"<<endl;
cout<<" 4. Selection Sort"<<endl;
cout<<" 5. Insertion Sort"<<endl;
cout<<" 6. Quick Sort"<<endl;
cout<<""<<endl;
cout<<" 7. Tampilkan Data"<<endl;
cout<<""<<endl;
cout<<" 8. Acak Data"<<endl;
cout<<""<<endl;
cout<<" 9. Exit"<<endl;
cout<<""<<endl;
cout<<"    Pilihan Anda = ";  cin>>pil;
switch(pil)
{
case 1:Input(); break;
case 2:bubble_sort(); break;
case 3:exchange_sort(); break;
case 4:selection_sort(); break;
case 5:insertion_sort(); break;
case 6:QuickSort(0,n-1);
cout<<"quick sort selesai!"<<endl;
break;
case 7:Tampil(); break;
case 8:AcakLagi(); break;
}
getch();
}while(pil!=9);
}

Komentar

  1. Never use this venue to criticize, ridicule, or condemn those 'unfortunates' who may not share your viewpoints. blog commenting seo

    BalasHapus

Posting Komentar

Postingan populer dari blog ini

Daftar situs artikel gratis yang bisa dipublikasikan untuk blog atau situs

http://www.ezinearticles.com/ http://www.articles-hub.com http://www.articlesfactory.com http://www.goarticles.com http://www.articletrader.com http://www.articlealley.com http://www.articlesphere.com http://www.webpronews.com http://www.searchguild.com http://www.articlegarden.com http://www.articledepot.co.uk http://www.ideamarketers.com http://www.articlesbase.com http://www.easyarticles.com http://www.allthewebsites.org http://www.promotionworld.com http://www.selfgrowth.com http://www.free-articles-zone.com http://sbinformation.about.com http://www.articlepros.com http://www.articlecube.com http://www.linkgrinder.com http://www.kokkada.com http://www.articleteller.com http://biz-whiz.com http://www.businessknowhow.com http://www.businessnation.com http://neoarticle.com http://www.amazines.com website-website ini adalah berbahasa inggris, untuk mengubahnya ke bahasa indonesia gunakan saja google translate.

Cara Menulis Post Blog Pertama Kali ?

Artikel ini berisi beberapa ide untuk membantu orang-orang yang memulai blog , sama seperti saya, untuk menemukan hanya dalam satu tempat daftar sumber dengan tips. Saya tidak punya niat dalam meliput ini dalam tingkat yang sangat mendalam, tapi hanya untuk memberikan pandangan pribadi saya tentang apa yang saya temukan untuk menjadi tips yang paling penting ketika menulis posting pertama.

Download Naruto Shippuden Windows 8 Theme Gratis

Bikin keren PC atau laptop kamu dengan Naruto Shippuden Windows 8 Theme Gratis. Khusus bagi para pecinta anime Naruto Shippuden Langsung aja ya Download Klik disini...