Minggu, 17 April 2016

Algoritma dan Flowchart Bubble sort



Algoritma Bubble Sort

1.      Mulai.
2.      Memasukan data.
3.      Membandingkan setiap pasang elemen data yang berdekatan dari awal, misal data pertama dengan data kedua.
4.      Jika nilai elemen yang pertama lebih besar dari elemen yang kedua maka elemen tersebut di tukar posisi hingga niai elemen paling awal harus lebih kecil dari elemen kedua.
5.      Membandingkan  elemen kedua dengan elemen ketiga, apakah lebih kecil atau masih lebih besar jika lebih kecil lakukan penukaran dengan elemen ketiga
6.      Mengulangi perbandingan di atas hingga kondisi elemen benar benar urut dari awal sampai akhir.
7.      Selesai.




Flowchart




Algoritma dan Flowchart Insertion Sort



 Algoritma Insertion Sort

1.      Mulai.
2.      Memasukan data
3.      Membanding kan dua elemen  data pertama. (data pertama dan  kedua)
4.      Jika data kedua lebih kecil maka posisi data kedua di pindahkan ke posisi data  pertama.
5.      Kemudian  membandingkan  data ketiga dengan data  pertama &data kedua dengan.
6.      Jika data ke tiga lebih kecil dari data kedua maka data ketiga ditempatkan (insert) pada posisi antara data ke dua dengan data pertama  lalu jika lebih kecil dari data pertama  maka data ketiga ditempatkan (insert) pada posisi  paling awal.
7.      Melakukan  perbandingan di atas hingga semua data sudah dibandingkan.
8.      Selesai.


Flowchart  




 

Kamis, 07 April 2016

Algoritma,Flowchart, dan contoh Code program Interpolation Search



Algoritma Interpolation Search 

1.     Mulai
2.      Memasukan indeks
3.      Mencari data menggunakan keyword
4.      Posisi  = ((cari_data - data[awal])*(akhir-awal)+awal) / (data[akhir]-data[awal])
5.      Jika sama dengan keyword yang dimasukan program selesai
  jika tidak  bandingkan dengan (data[posisi] < cari_data) awal = posisi + 1
6.      Ulangi langkah 4&5 sampai hasilnya sama keyword
7.      Jika data[posisi] > cari_data,  data tidak ditemukan program selesai
8.      Selesai.


Flowchart




CODE INTERPOLATION SEARCH


#include <iomanip>
#include <iostream>
#include <conio.h>

using namespace std;

int main()
{
 int data[50];
 int n,cari_data, posisi, awal, akhir, proses;
 bool berhenti = false;
    cout << " I N T E R P O L A T I O N   S E A R C H "; cout<<endl;
    cout<<"Input Data (maks.50) : "; cin>>n; cout<<endl;
    for(int i=0; i<n; i++)
        {
            cout<<"Data ke "<<i+1<<": "; cin>>data[i];
        }
    cout<<"\nData : ";
    for(int i = 0;i<n; i++)

 cout<<setw(3)<<data[i];
 cout<<endl<<endl;

 cout << "Data yang dicari : ";
 cin >> cari_data;

 awal = 0;
 akhir = n;
 proses = 0;

 while(berhenti != true)
 {
    proses++;
    posisi = (((cari_data-data[awal])*(akhir-awal))/(data[akhir]-data[awal])+awal);

  if(data[posisi] == cari_data)
    {
        cout << "Data " << cari_data << " pada posisi " << posisi <<endl;
        cout << "Proses pencarian sebanyak " << proses <<endl;
        berhenti = true;
    }

  else if(data[posisi] < cari_data)
    {
        awal = posisi + 1;
    }

  else
    {
        cout << "Data " << cari_data << "Tidak ditemukan.\n";
        berhenti = true;
    }
 }

    return 0;
}



Output code