Tuesday, December 18, 2018

Sorting And Searching

Sorting and Searching

1. Sorting

Sorting adalah mengurutkan sesuatu nilai baik dari yang terbesar ke yang terkecil ataupun sebaliknya.
Ada tipe-tipe dari sorting yaitu :
a. Bubble Sort
    Bubble sort membandingkan dua nilai yang bersebelahan dan menukarkannya jika perlu. 

b. Selection Sort



c. Insertion Sort


d. Quick Sort



e. Merge Sort 

2. Searching

Searching yaitu mencari suatu nilai dari data-data yang dimiliki. Ada tipe-tipe dari searching yaitu:
a. Linear Search



b. Binary Search



c. Interpolation Search 
 
 
Nama : Anglie Yanto
BINUSIAN 2022

File Processing in C

File dan Streams

Ketika sebuah program C berjalan, ada 3 streams standar yang aktif;
1. Standard Input Stream : Stream yang mengontrol input stream dari keyboard
2. Standard Output Stream : Stream yang mengontrol output stream ke monitor
3. Standard Error Stream : Stream yang mengontrol pesan-pesan error

Ada 2 tipe file dalam sebuah file processing, yaitu:
1. Text File
    Text File adalah file yang disimpan dalam format text. Besar dari penyimpanan tergantung dari data tersebut. Text File ini dapat dibuka menggunakan aplikasi text editor yang standar.
2. Binary File
    Binary File adalah file yang menyimpan data numerik dalam format yang ditempelkan sesuai dengan definisi format mikro-prosesor.

Buffer Area
Buffer area adalah bagian dari memori yang digunakan sebagai ruang sementara sebelum data dipindahkan ke file. 
Syntax : 
        FILE *fp;
fp disyntax tersebut sebagai penunjuk (pointer) untuk memulai area buffer (area penyangga) .

Open File
Untuk membuka sebuah file perlu digunakan fopen();
Syntax :
       FILE *fp  = fopen (const char *filename, const char *mode);

Mode-mode yang dapat digunakan : 
- "r"       digunakan untuk membuka suatu file untuk dibaca

- "w"      digunakan untuk membuat suatu file baru untuk ditulis

- "a"       digunakan untuk membuka suatu file dan menambahkan sesuatu ke file tersebut
- "r+"     digunakan untuk membuka file untuk dibaca/ditulis

- "w+"    digunakan untuk membuat file untuk dibaca/ditulis

- "a+"     digunakan untuk membuka file untuk dibaca/ditambahkan

- "rb"     digunakan untuk membuka file binary untuk dibaca

- "wb"    digunakan untuk membuat suatu file binary untuk menulis sebuah operator


Close File
Untuk menutup sebuah file perlu digunakan fclose();
Syntax :
       int fclose(FILE *stream);
 fclose() akan merilis area buffer dan segera mengirim data yang tersisa ke file.

Input dan Output File
  • fgetc (Input) => membaca satu karakter dari file
           Syntax :
                  int fgetc(FILE *stream);
  • fgets (Input) => membaca satu kalimat dari file yang diakhiri dengan kalimat baru
           Syntax :
                  char *fgets(char *string, int n ,FILE *stream);

  • fscanf (Input) => membaca data dari file dengan format scanf
           Syntax :
                  fscanf(FILE *stream, const char *format [argument]...);

  • fputc (Output) => menulis satu karakter kedalam file
           Syntax :
                  int fputc(FILE *stream);

  • fputs (Output) => menulis kalimat kedalam file
           Syntax :
                  int fputs(char *string, int n ,FILE *stream);

  • fprintf (Output) => menulis data kedalam file dengan format printf
           Syntax :
                  fprintf(FILE *stream, const char *format [argument]...);
  • feof => mencari apabila pointer mencapai akhir dari sebuah file, apabila sudah mencapai akhir dari sebuah file maka akan return 0; .
            Syntax: 
                  int feof(FILE *stream);
  • fwrite => menulis blok data di area buffer ke file
            Syntax: 
                  size_t fwrite(void * buffer, size_t size, size_t count , FILE * stream);
  • fread => membaca ukuran blok data dari file
            Syntax: 
                  size_t fread (void * buffer, size_t size, count size_t, FILE * stream);

Contoh penggunaan syntax dari fwrite:
          fwrite (& mhs, sizeof (mhs), 1, fp);

     & mhs = lokasi asal data
     sizeof (mhs) = kembalikan ukuran mhs
     1 => satu kali menulis sizeof (mhs)
     fp = file pointer