Pertemuan ke-8, Kasus 8.5
Selection Sort.
Assalamu’alaikum w.w.,
Pada kesempatan ini saya akan memposting Program dari materi SEARCHING AND SORTING , program ini akan dibuat dalam bentuk Flowchart dan C++ . Program yang akan di buat yaitu : Tentang : Selection Sort.
Algoritma :
Procedure selection_sort(output A : larik; input n : integer)
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}
endfor
Flowchart :
Program Dev C++ :
#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-%d : ",i+1);
cin >> A[i]);
}
}
void cetak_data(const int A[], int n){
int i;
for (i = 0; i < n; i++)
cout << "%d ",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;
}
Sekian dan Terima Kasih, Semoga Bermanfaat.
Assalamu’alaikum w.w.,
Pada kesempatan ini saya akan memposting Program dari materi SEARCHING AND SORTING , program ini akan dibuat dalam bentuk Flowchart dan C++ . Program yang akan di buat yaitu : Tentang : Selection Sort.
Algoritma :
Procedure selection_sort(output A : larik; input n : integer)
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}
endfor
Flowchart :
Program Dev C++ :
#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-%d : ",i+1);
cin >> A[i]);
}
}
void cetak_data(const int A[], int n){
int i;
for (i = 0; i < n; i++)
cout << "%d ",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;
}
Sekian dan Terima Kasih, Semoga Bermanfaat.
Comments