#include <iostream>
#include <time.h>
using namespace std;
void DataRandom();
void DataManual();
void urutkan(int *errei, int ukuranArray);
int main()
{
srand((unsigned)time(NULL));
char menuDiPilih;
cout << "1. data random" << endl;
cout << "2. data manual" << endl;
cin >> menuDiPilih;
if(menuDiPilih=='1')
DataRandom();
else if(menuDiPilih=='2')
DataManual();
system("pause");
return 0;
}
void DataRandom()
{
int ukuranArray, rentangNilai, *errei;
cout << "ukuran array : ";
cin >> ukuranArray;
cout << "rentang nilai : ";
cin >> rentangNilai;
errei = new int[ukuranArray];
cout << "data hasil random:\n";
for(int i=0; i<ukuranArray; i++)
{
errei[i]=rand()%rentangNilai;
cout << errei[i] << " ";
}
cout << endl;
urutkan(errei, ukuranArray);
}
void urutkan(int *errei, int ukuranArray)
{
int posisiSekarang, posisiTerkecil;
posisiSekarang=0;
for(;posisiSekarang<ukuranArray;posisiSekarang++)
{
posisiTerkecil=posisiSekarang;
for(int i=posisiSekarang+1;i<ukuranArray;i++)
if(errei[posisiTerkecil]>errei[i])
posisiTerkecil=i;
if(errei[posisiTerkecil]<errei[posisiSekarang])
{
errei[posisiTerkecil]+=errei[posisiSekarang];
errei[posisiSekarang]=errei[posisiTerkecil]-errei[posisiSekarang];
errei[posisiTerkecil]-=errei[posisiSekarang];
}
}
cout << "data setelah diurutkan dengan selection sort:\n";
for(posisiSekarang=0;posisiSekarang<ukuranArray;posisiSekarang++)
cout << errei[posisiSekarang] << " ";
cout << endl;
}
void DataManual()
{
int ukuranArray, *errei;
cout << "ukuran array: ";
cin >> ukuranArray;
errei=new int[ukuranArray];
cout << "mengisi array dari indeks ke 0 sampai ke " << ukuranArray-1 << endl;
for(int i=0;i<ukuranArray;i++)
cin >> errei[i];
urutkan(errei,ukuranArray);
}