bahasa pemrograman c menggunakan binary search

22:59 Pemrograman Web 12 Comments


ANALISA TENTANG BINARY SORT

Assalamu’alaikum , kembali lagi bersama saya rifan saya disini akan menjelaskan tentang binary sort yang dimana saya akan membuat program input dan output dan akan menjelaskan panjang lebar tentang binary sort , mungkin disini saya akan langsung saja menjelaskan binary sort adalah sebuah suatu algoritma yang pencariannya dengan cara pembagian data menjadi 2 bagian setiap kali pemrosesan pencarian untuk menemukan nilai nilai tertentu dalam sebuah larikkan atau array
Langkah awal dalam mengerjakan binary sort , saya mencari analisis tentang algoritma agar menjadi hasil output tentang binary sort dan bagaimana agar syntax saya tidak terjadi error maka hal utama yang harus diutamakan perhatikan dalam setiap proses pengerjaan yang ada di bagian syntax , aplikasi support / mendukung dalam pengerjaan , mungkin disini hal yang paling susah dalam pengerjaan proses terjadinya error dalam aplikasi kita harus mencari kesalahannya dimana dan seperti apa fungsinya , kita harus tau dulu fungsi dari syntax nya baru kita bisa menganalisi hasil kerja kita dan hasil output kita

Ini saya akan menjelaskan fungsi-fungsinya terlebih dahulu :
Int main ini adalah fungsi utama dari Bahasa pemrograman
Void main berfungsi untuk tidak menjalankan suatu pemrograman dikarenakan nilainya kosong
Printf berfungsi untuk menampilkan data dan berguna juga untuk membaca sebuah data yang akan kita inputkan
For berfungsi untuk melakukan perulangan dalam sebuah pemrograman yang sama seperti perintah do dan while
If jika si if mempunyai nilai benar , maka suatu proses pengerjaan dalam nilai yang benar dan memenuhi sebuah persyaratan dalam nilai
Else berfungsi untuk mengeksekusikan 2 pernyataan , jadi disini kita menunjukan sebuah kondisi dalam if kemudian else
Int adalah tipe data yang mempunyai bit sebanyak 32 dan 64 bit

Berikut saya sudah menjelaskan syntax saya terlebih dahulu , dan saya akan menerangkan hasil output saya disini sama hal nya dengan pembagian angka dalam bilangan binary yang dipake pada ip address , yang dimaksud dalam bilangan binary tersebut ialah contoh bilangan dari angka 123 , 122 , 125 , 256 , 242 , dll lalu kita hitung bagaimana bilangan binary hasilnya bisa cek sendiri nanti
Jadi seperti inilah saya menjelaskan panjang lebar tentang binary mohon maaf bila ada kesalahan atau kekurangan dalam pengerjaan dari hasil tersebut banyak sekali pelajaran untuk kita agar meminimalisir keadaan berpikir kita agar kita bisa memecahkan suatu rumus dalam pengerjaan algoritma dan struktur data , sebenernya ini sangat mudah tanpa terkecuali jika kita mau berusaha untuk merumuskan masalah yang kita hadapi dan seperti inilah saya akan mencoba mengetik syntax yang saya kerjakan dengan benar dan bagaimana saya merumuskan suatu masalah , banyak hal yang dilakukan dalam pengerjaannya dan disini kalian bisa mencontoh dan mengambil arahan yang positif setelah saya jelaskan tentang pengertian algoritma dan struktur data yang berjudul binary dalam proses pengerjaan yang telah saya lakukan sedemikian waktu selang ke belakang .. semoga bermanfaat bagi kalian dan terutama pembelajaran buat saya juga , jangan lupa share kepada rekan rekan teman maupun disekolah kampus atau keluarga semoga ini bisa membantu dan mohon maaf jika proses pengerjaan kurang baik demikian lah hasil analisis saya mohon yang kurang di maklumi , terimakasih banyak

#include <iostream>
//ini adalah yang si sebut liblary. dalam c++ kita juga dapat
//membuat liblary sendiri sesuai dengan yang di perlukan

using namespace std;
//tidak semua kompiler menggunakan ini, taoi jika anda menggunakan
//devc++ maka anda harus menggunakanya agar dapat terkompile.

#include <conio.h>//perintah untuk membersihkan layar

#include <iomanip>//diperlukan bila melibatkan setw() yang bermanfaat
//untuk mengatur lebar dari suatu tampilan

void selection_sort( int data[])//Definisi fungsi
{
      int temp; //temp sebagai tempat penyimpanan sementara saat menukar nilai

      for(int i=0; i<10;i++){
   // perulangan untuk mengganti elemen array yang akan dibandingkan
            
   for(int j = i+1; j<10; j++)
   //perulangan untuk membandingkan array data[i}
   //dengan elemen array selanjutnya
            {
                  if(data[i]>data[j])
      //penukaran nialai data [i] dengan salah satu elemen array
      //selanjutnya jika ditemukan data [i] lebih besar dari
      //elemen array yang jadi hasil sorting ini mencari
      //nilai terkecil kemudian menempatkannya di kiri
                  {
              temp = data[i]; //proses penukarannya
              data[i]  = data[j];
              data[j] = temp;
                  }
            }
      }
}
int main()//main program mengembalikan nilai int secara default
{
      int data[10];
   // Deklarasi data bertipe integer dengan maksimal nilai indeks 10
      
   int cari;// Deklarasi cari bertipe integer

      cout<<"\t   'BINARY SEARCH'"<<endl;// Output pada layar judul program
      cout<<"\t====================="<<endl;// Output pada layar judul program
      
   cout<<"\nMasukkan 10 Data : ";
   // Output pada layar untuk perintah memasukkan data awal
      
   for(int x = 0; x<10; x++)//Baca elemen array
            cin>>data[x]; //  Menginputkan data[x] oleh user
    
      cout<<"\nMasukkan data yang ingin Anda cari : ";
   // Output pada layar untuk perintah memasukkan data yang akan dicari
       
   cin>>cari; //  Menginputkan data yang akan dicari oleh user
      cout<<"\nData diurutkan : "; // Output pada layar
      selection_sort(data); //pemanggilan fungsi selection_sort()
  
      for(int x = 0; x<10;x++) //Baca elemen array
            cout<<setw(3)<<data[x];
   // Output pada layar untuk menampilkan data setelah diurutkan
     
      cout<<endl; // Menempatkan kursor pada line berikutnya

      //searching
      int awal, akhir, tengah, b_flag = 0;
   // Deklarasi awal,akhir,tengah bertipe integer dan
   // set b_flag off
      
   awal = 0; //Mula-mula diambil posisi awal 0 
      akhir = 10; // posisi akhir = 10
      
   while (b_flag == 0 && awal<=akhir)//kondisi
      {
            tengah = (awal + akhir)/2;
   //kemudian dicari posisi data tengah dengan
   //rumus (posisi awal + posisi akhir) / 2
            
   if(data[tengah] == cari)
   //Kemudian data yang dicari dibandingkan dengan data tengah.
            {
                  b_flag = 1; // turn b_flag on
                  break; //proses perulangan berhenti
            }
            else if(data[tengah]<cari) //Jika lebih kecil
      awal = tengah + 1;
      //proses dilakukan kembali tetapi posisi akhir dianggap
      //sama dengan posisi tengah +1.
            else
                  akhir = tengah -1;
                  //Jika lebih besar, proses dilakukan kembali tetapi
      //posisi awal dianggap sama dengan posisi tengah -1.
      }
      if(b_flag == 1) //Jika data sama, berarti ketemu
            cout<<"\nData ditemukan pada index ke-"<<tengah<<endl;
            // Output pada layar untuk menampilkan indeks data
      
   else //Jika data tidak sama, berarti tidak ketemu
            cout<<"\nData tidak ditemukan\n";
            // Output pada layar untuk menampilkan bahwa data tidak ditemukan

      _getche();//untuk menerima sembarang input keyboard dari user
      return 0; //memberitahu kepada sistem operasi bahwa program telah berakhir

  }
Wassalamu’alaikum wr.wb

link :
https://youtu.be/0lkiCtb2k-w

https://github.com/MuhamadRifan/binary

12 komentar: