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.

Comments

Popular posts from this blog

Program Menghitung Hambatan Seri dan Pararel

Menghitung nilai ipk mahasiswa

Rencana Kuliah Bulan ke-3 : Menggeser Elemen Array