#include <iostream>
#include <cstdlib>
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 << "\n";
}
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]);
}
}
int main(int argc, char** argv) {
int data[10], n;
cout << "Banyak data : ";
cin >> n;
baca_data(data,n);
cetak_data(data,n);
selection_sort(data,n);
cetak_data(data,n);
return 0;
}
Berikut Hasil Compilenya :
Algoritma :
Deklarasi
i, t : integer
Deskripsi
for i <-- 1 to n do
minimum(A, i, n, t);
tukar(A[i], A[t]); {tukar tempat elemen saat ini j dengan elemen terkecil yang ditemukan t}
0 komentar:
Posting Komentar