SELECTION SORT

SELECTION SORT

1. Identifikasi masalah
     Mengurutkan angka dengan metode selection sort.
2. Menentukan input dan output
     Input n, A[]
     Ouput A[] = 4,5,6,7,8,9
3. Membuat flowchart








4. Test menggunakan data
     Input n=6, A[] = 9 8 7 6 5 4
        Data ke-1 = 9
        Data ke-2 = 9
        Data ke-3 = 9
        Data ke-4 = 9
        Data ke-5 = 9
        Data ke-6 = 9
      Output data setelah diurutkan = 4 5 6 7 8 9
     Dengan beberapa steps :
       step 1 [9, 8, 7, 6, 5, 4] 4 terkecil, 9 > 4
       step 2 [4, 8, 7, 6, 5, 9] 5 terkecil, 8 > 5
       step 3 [4, 5, 7, 6, 8, 9] 6 terkecil, 7 > 6
       step 4 [4, 5, 6, 7, 8, 9] 7 terkecil, 7 = 7
       step 5 [4, 5, 6, 7, 8, 9] 8 terkecil, 8 = 8
       step 6 [4, 5, 6, 7, 8, 9] 9 terkecil, 9 = 9
       step 7 [4, 5, 6, 7, 8, 9]

5. Implementasi

#include <iostream>


     /* run this program using the console pauser or add your own getch, system("pause") or input loop      */
     using namespace std;
     void baca_data(int A[], int n)
     {
     int i;
     for(i=0; i<n; i++){
     cout<<"Data ke-"<<i+1<<"=";
     cin>>A[i];
     }
     }
     void cetak_data(const int A[], int n){
    int i;
    for(i=0; i<n; i++){
    cout<<A[i]<<" ";
    }cout<<endl;
    }
    void tukar(int*a,int *b){
    int temp;
    temp=*a;
    *a=*b;
    *b=temp;
    }
    void minimum(int A[], int dari, int n, int*tempat){
    int i, min;
    min=A[dari];
    *tempat=dari;
    for(i=dari+1; i<n; i++){
    if(A[i]<min)
   {
    min=A[i];
    *tempat=i;
    }
    }
    }
    void selection_sort(int A[], int n){
    int i,t;
    for(i=0; i<n; i++){
    minimum(A,i,n,&t);
    tukar(&A[i], &A[t]);
    }
    }
    main(){
    int data[10],n;
    cout<<"\t\tPROGRAM SELECTION SORT\n\n";
    cout<<"Masukan banyak data = ";
    cin>>n;
    baca_data(data,n);
    cout<<endl;
    cout<<"Data sebelum diurutkan :"<<endl;
    cetak_data(data, n);
    selection_sort(data,n);
    cout<<endl;
    cout<<"Data setelah diurutkan :"<<endl;
    cetak_data(data,n);
    return 0;
    }
 6. Eksekusi



Program ini saya selesaikan selama 4 jam 35 menit

untuk bubble http://fafa145.blogspot.co.id/
untk insert selection short  pengantarprogram.blogspot.co.id







 

Komentar

Posting Komentar

Postingan populer dari blog ini

Studi Case

Mencari titik tengah sebuah garis

Pemrograman Web Dinamis