Sunday, February 23, 2014

Bubble Sort - Selection Sort


Metode bubble sort merupakan metode tersederhana untuk melakukan pengurutan data, tetapi memiliki kinerja yang terburuk untuk data yang besar. Pengurutan dilakukan dengan membandingkan sebuah bilangan dengan seluruh bilangan yang terletak sesudah bilangan tersebut. Penukaran dilakukan kalau suatu kriteria dipenuhi.
Sebagai contoh, terdapat kumpulan seperti berikut : 25 57 48 37 12 92 80 33
Contoh proses pengurutan dengan urut naik ditunjukkan pada gambar di bawah ini :

Pengurutan Tahap Pertama


Pengurutan Tahap Kedua

Jika jumlah data adalah n, maka terjadi n-1 tahap pengurutan. Berarti pada contoh di di atas diperlukan 7 tahap pengurutan. Gambar di bawah ini memperlihatkan setelah 7 tahap pengurutan dilakukan.


Implementasi dalam Bahasa Pemograman C++





Metode Selection Sort pada dasarnya merupakan kombinasi antara sorting dan searching. Metode ini merupakan perbaikan dari metode bubble sort dengan mengurangi jumlah perbandingan. Didalam prosesnya, selection sort mencari nilai data terbesar atau terkecil dan kemudian menempatkannya pada posisi yang sebenarnya dimulai dari data diposisi 0 hingga data diposisi N-1. Selama proses pembandingan dan pengubahanhanya dilakukanpada indeks pembanding saja, Pertukaran data secara fisik hanya terjadi pada akhir proses. 

Implementasi dalam Bahasa Pemograman C++







Sunday, February 9, 2014

Searching

Soal:
Buatlah algoritma untuk program yang dimana bila memasukkan user sebanyak 10 kali untuk array yang berjumlah 10 elemen!

Jawab:
#include <iostream>

using namespace std;

int main()
{
    int larik [10], A;
    cout<<"Masukkan Angka"<<endl;
    for (int i=0; i<10; i++)
    {
     cout<<"Angka ke-"<<1<<"=";
     cin>> larik [i];
    }
    cout<<"Masukkan angka yang hendak dicari=";
    cin>>A;
    int banyak = 0;
    for (int i=0; i<10; i++)
    {
        if (A==larik [i])
        {banyak++}
    }
        cout<<"Angka yang Anda cari sebanyak= "<<banyak;
}

Saturday, February 1, 2014

Perbedaan Fungsi, Prosedur, dan Array

Pengertian :

-Array adalah sebuah struktur data yang terdiri atas banyak variabel dengan tipe data sama, dimana masing-masing elemen variabel mempunyai nilai indeks.

-Fungsi adalah suatu bagian dari program yang dimaksudkan untuk mengerjakan suatu tugas tertentu dan letaknya dipisahkan dari bagian program yang dijalankan.

-Prosedur adalah suatu bagian yang digunakan untuk mengenali subprogram di dalam suatu program.


Tipe Penulisan :

-Fungsi ditulis dengan bagian tipe fungsi berupa int, double, dan sebagainya.

-Prosedur ditulis dengan bagian tipe fungsi berupa void (void berarti tanpa nilai balik).

-Array ditulis dengan bagian tipe fungsi berupa diawali dengan kata cadangan Array diikuti oleh tipe index yang diletakkan diantara tanda " [ ] " diikuti lagi oleh kata cadangan of dan tipe arraynnya, seperti byte, word, dan sebagainya.



Pemanggilan :

-Fungsi dia akan mengembalikan suatu nilai pada pemanggilnya sehingga fungsi dapat mengembalikan suatu nilai yang dapat digunakan dalam ekspresi.



-Procedure dia tidak akan mengembalikan nilai apapun pada fungsi pemanggilnya dikarenakan prosedur tidak memiliki nilai yang berhubungan dengan namanya.



-Array  dia akan mendeklarasikan terlebih dahulu suatu larik sebagai tipe larik integer dengan jumlah elemen maksimum yang diberikan. Yang dimana nilai elemen larik ini harus berisi nilai integer.



Dari contoh diatas, Anda bisa perhatikan char hari [7] [10] = {..................} ini adalah proses pemberian nilai awal. Yang langsung dituliskan nilainya ke dalam variabel array dan diapit dengan tanda baca {................}.

Nilai pada saat pemanggilan nilainya, hari [0].......hari [4] merupakan pemanggilan index dari nilai array hari, yang dimana :
elemen         1             2               3               4              5                6                7
                Senin        Selasa       Rabu         Kamis       Jumat         Sabtu        Minggu
index           0              1               2               3              4                5                6

Maka hasil yang ditampilkan adalah Minggu, Senin, Selasa, Rabu, Kamis.