Tuesday, 18 December 2018

Sorting and Searching

12 December 2018
---------------------------------
Sorting

Sebuah algoritma yang berfungsi untuk mempercepat sebuah operasi berbentuk disebut sebagai sorting algorithm.

Sorting algorithm memiliki dua buah type:
- Ascending
- Descending

Sorting algorithm sendiri juga memiliki 2 cara melakukan sorting :
- Internal sorting : dimana data yang akan di sorting akan dimasukan ke RAM
- External sorting : dimana data di process menggunakan secondary storage

Sorting juga memiliki berbagai jenis type sorting antara lain:
Bubble sort, Selection sort, Insertion sort, Quick sort, dan Merge sort.

- Bubble sort : melakukan sorting dengan cara membandingkan 2 buah nilai yang bertetangga,
                        ia juga melakukan pertukaran jika itu diperlukan.

- Selection sort : melakukan sorting dengan cara mencari element terkecil dari sebuah array dari                                     bagianya yang belum di sort dan menaruhnya di awal, ia akan terus melakukanya                                 sampai semuanya telah mendapatkan bagian sorting

- Insertion sort : melakukan sorting dengan cara pengulangan dimana satu elemen dalam sebuah list                              diambil untuk ditaruh kepada list sorted yang baru, hal ini dilakukan secara terus -                                menerus sampai list orisinil habis.

- Quick sort :  Sorting ini dapat dijalankan dengan cara memecah sebuah array menjadi 2 buah sub-                           array yang memiliki element yang rendah dan tinggi, kemudian sorting dilakukan                                 dengan cara memilih sebuah element yang disebut pivot dalam sebuah list, dimana                               element - element lainya akan disusun berdasarkan perbandingan mereka terhadap                               element pivot tersebut.

-Merge sort : Mirip dengan quick sort, dimana data dipecah menjadi 2 buah sub-data (array), dan                              setelah kedua buah sub-data terpecahkan, keduanya akan digabungkan kembali                                    menjadi sebuah data.

Searching

Sebuah process yang dijalankan guna mencari sebuah element khusus dalam suatu data.
Agar searching algorithm dapat berjalan, maka diperlukan sebuah key khusus yang dibuat untuk sebuah kasus tertentu pada data tersebut.

Searching memiliki beberapa type yaitu:

- Linear Search
  Mencari atau mencocokan setiap element yang ada dalam sebuah data dengan search key yang telah    ditentukan

- Binary Search
  Hampir sama dengan linear search tetapi lebih terkondisikan untuk mencari sebuah element dalam      data - data besar

- Interpolation Search
  Cara mencari element khusus pada sebuah data yang tersusun, mirip dengan binary search, tetapi        cara ini mengandalkan perkiraan/estimasi khusus mengenai lokasi dari element yang dicari.






Tuesday, 11 December 2018

File Processing
  December 5 2018
 _ _ _ _ _ _ _ _ _ _ _ _ _

 Dalam algoritma, sebuah file dapat di process dengan serangkaian function dan code - code tertentu.   3 fungsi dasar yang sering dipakai antara lain adalah 'r', 'w', 'a'.

 Dimana 'r' adalah read yang berfungsi untuk membaca file tersebut sehingga kita dapat melihat isi dari file tersebut.

 Dan 'w' adalah write yang berguna ketika kita ingin membuat sebuah file baru.

 Serta 'a' adalah append yang berguna ketika kita ingin menambahkan sesuatu dari file yang sudah ada.

 Terdapat beberapa langkah tertentu dalam process membuka dan meng process sebuah file.

 Pada dasarnya terdapat tiga langkah utama dalam file processing, yaitu :
 - Membuka file dengan pointer file.
 - Melakukan proses didalam file tersebut.
 - Dan Menutup file tersebut.

 pertama sebuah pointer dibuat untuk yang menandakan file yang akan kita baca maupun buat.

 FILE *file;

 Diperlukan juga sebuah fungsi yang bernama fopen yang diperlukan untuk membuka atau mengedit file yang ada.

 fopen(nama_file,mode);

 Fungsi fprintf juga dapat digunakan untuk menambahkan isi untuk file tersebut 
fprintf(file_pointer,"data_yang_mau_diisi");

 Dan fungsi fclose berguna sebagai penutup dari file tersebut yang HARUS diikutsertakan dalam setiap file processing.

 fclose(file_pointer);

 Fungsi fscanf dapat digunakan untuk melihat isi yang sudah ada pada file tersebut. 

fscanf(file_pointer,variabel);

Monday, 22 October 2018

Pointers and Arrays


Pointer adalah sebuah variable penanda yang berguna untuk menyimpan address Dari variable yang lainya.

Pada pointer terdapat 2 buah operator yang berfungsi sebagai pointer yaitu : 

- * (content of) 
- & (address of)

Contoh penggunaan :

Int X, g*

G = &X

Sebuah pointer dapat menjadi sebuah pointer bagi pointer lainya. Ditandai dengan **<variable>

Array

Sebuah array adalah sebuah variable yang dapat menyimpan lebih dari 1 buah value dalam sebuah nama variable yang sama di dalam sebuah Index.


contoh: 5 buah variable bertipe Int dapat declare sebagai sebuah array pada susunan indexnya, sehingga programmer tidak perlu membuat 5 buah type variable int.


array dapat terbagi atas beberapa dimensi, di sini akan dibahas yang 1 dimensi dan 2 dimensi.


Pada array 1 dimensi, array dapat ditandakan dengan, <data type> <variable>[array] dimana kurung kotak (square bracket) merupakan penanda bahwa array yang ada disimpan dalam bentuk baris.

Sedang pada array 2 dimensi, array ditandakan dalam bentuk <data type> <variable>[array][array] dimana array disini dinyatakan dalam bentuk 2 dimensi sehingga berupa baris dan kolom.

Contoh : Int test[100][100], secara teori ini menyatakan bahwa nilai dari 'test' berupa 100 baris dan 100 kolom.

*array juga dapat di isi dengan sebuah pointer variable, yang artinya pointer dari sebuah variable dimasukan kedalam index suatu array, yang dapat disimpan dan digunakan dalam index tersebut.

Ghirlandaio
2201816101

Tuesday, 16 October 2018

Program Control
(Binus 10/10/2018)

           
             Program Control : Repetition


Repetition (perulangan) adalah sebuah instruksi yang diulang untuk sekian kali.

Operasi repetition terbagi atas 3 function :


- For                      - while                  -Do-while


For


Format : 


For (init; condition ; increment/decrement){

         Statement(s);
}

*Nested for: for inside a for


While :


Format :


While (condition){


    Statement(s)

}


While : mengulang statement atau sebuah kumpulan statement selama condisi yang diberikan bersifat true


Do-while


Seperti sebuah while tetapi pengecekan condition dilakukan setelah loop telah berjalan


Do  {

            Statement (s);
       }
While ( condition) ;


Cara until menghentikan sebuah loop:


Break statement: break statement meng-terminasi sebuah loop dengan ruang lingkup yang terkecil ( while, do-while, for, atau switch)


Continue statement: continue statement meng- skip sebuah loop agar process segera menjalankan fungsi loop yang selanjutnya agar dapat berjalan.



Ghirlandaio2201816101