ALGORITHM and PROGRAMMING (part.10)

Dipertemuan 11 kali ini kita membahas materi-materi algoritma pemprograman untuk persiapan UAS.

http://a-l-g-o-r-i-t-m-a.blogspot.co.id/ ===> untuk menambah wawasan tentang coding

Contoh coding file,struck,cort

#include <stdio.h>
#include <string.h>

struct Film{
char namaFilm[50];
int jam;
int rating;
}filem[5];

void view(){
int i;
for(i=0;i<4;i++){
printf(“%s %d %d\n”,filem[i].namaFilm,filem[i].jam,filem[i].rating);
}
}

void print(){
FILE *out;
out = fopen(“output.csv”,”w+”);
int i;
for(i=0;i<5;i++){
fprintf(out,”%s,%d,%d\n”,filem[i].namaFilm,filem[i].jam,filem[i].rating);
}
fclose(out);
}

void tambahFilm(int i){
char namaFilm[25];
int jam;
int rating;
do{
printf(“Masukan nama film [10..25]: “);
scanf(“%[^\n]”,namaFilm);
fflush(stdin);
}while( strlen(namaFilm) < 10 || strlen(namaFilm) > 25);

do{
printf(“Masukan jam [0..23]”);
scanf(“%d”,&jam);
fflush(stdin);
}while( jam < 0 || jam > 23);

printf(“Rating:”);
scanf(“%d”,&rating);

strcpy(filem[i].namaFilm , namaFilm);
filem[i].rating = rating;
filem[i].jam = jam;
}

int main(){
FILE *in;
int i=0;
in = fopen(“film.csv”,”r”);
if( in == NULL){
printf(“File \’film.csv’ tidak ditemukan”);
getchar();
return 1;
}else{
while( !feof(in) ){
fscanf(in,”%[^,],%d,%d\n”,filem[i].namaFilm,&filem[i].jam,&filem[i].rating);
i++;
}
view();
}
fclose(in);
tambahFilm(i);
print();
return 0;
}

note :

– Printf (“%-4S%-12S%-20%”) maksudnya ada beberapa yang terdapat 4 karakter
– Jika tidak ada “fflush(stdin)” dapat menyebabkan looping forever
– Strcmp = String Conpare
– Pow (math.h)
– Itoa <stdlib.h>
– Switch tidak selalu diakhiri break bisa juga diakhiri continue;
– strcat : menggabung string
-strcmp : membandingkan 2 string

-strcmpi : tidak membedakan huruf besar dan kecil (ignore case)

ALGORITHM and PROGRAMMING (part.9)

SORTING AND SEARCHING

SORTING adalah pengurutan data

Metode-metode sorting :

A.Bubble Sort
Penukaran data hingga data terurut (Ascending atau Descending).

B.Selection Sort
Memastikan data kecil dan data besar. -Mencari index terkecil, baru index tersebut disimpan,selama index yang dicek bukan yang terkecil , index tersebut tetap pada tempatnya

C.Insertion Sort
Proses Persisipan,bandingkan Index yg dipilih dengan index lain, jika index lain tersebut lebih besar maka index tersebut digeser.

D.Quick Sort
Algoritma sorting yang berdasarkan pembandingan dengan metoda divide-and-conqueror.

E.Marge Sort
Sort yang dilakukan dengan teknik merge (menggabungkan) dua buah array kedalam sebuah array yang baru.
SEARCHING adalah mencari data (harus sudah di sorting)

Linear Search : cara barbar, (strcmp, dll tanpa function),tidak cocok untuk data yang besar

Binary Search: Harus diurutkan lebih besar ke kanan lebih kecil ke kiri,hapalin rumus

ALGORITHM and PROGRAMMING (part.8)

File Processing

 

Definisi Streams 

Stream adalah urutan karakter. Semua input dan output data stream.

 

Ketika program C dijalankan ada 3 standard streams yang diaktifkan:

 

  • Standard Input Stream (stdin)

Mengontrol stream input dari keyboard

  • Standard output Stream (stdout)

Mengontrol stream output ke monitor

  • Standard error Stream (stderr)

Mengontrol pesan error

Definisi File

 

  • File adalah kumpulan record (baris).
  • Record adalah kumpulan field (kolom).
  • Field adalah blok byte.
  • Byte adalah kumpulan bit (1 byte adalah 8 bit).
  • Text file tersimpan dalam teks atau ASCII yang merupakan suatu standard internasional.
  • Ukuran penyimpanan tergantung pada data: 10000 membutuhkan 5 byte
  • Dapat terbuka dengan menggunakan standar aplikasi editor teks atau c:> TYPE nama_file

 

Buffer area adalah bagian dari memori yang digunakan sebagai ruang sementara sebelum data pindah ke sebuah file.

 

fopen = untuk membuka data dari file yang ingin dibuka.

 

fclose = untuk menutup semua data yang telah dibuka.

 

fprintf, fputs = memasukkan data ke dalam file.

 

fscanf, fgets = untuk menampilkan data yang telah dimasukkan ke dalam file.

 

Open File

Membuka File menggunakan fopen ():

FILE *fopen (const char *filename, const char *mode);

Contoh mode :

“r” membuka file untuk dibaca.

“w” membuat file untuk ditulis.

“A” membuka file untuk data append.

“r+” membuka file untuk membaca / menulis.

“w+” membuat file untuk membaca / menulis.

“a+” membuka file untuk membaca / tambahkan

“rb” membuka File (binary) untuk dibaca.

“wb” membuat file (binary) untuk menulis.

(Dalam penge-save-an Game sebaiknya menggunakan binary yaitu “rb” atau “wb” karena tidak dapat dibuka dengan notepad biasa)

 

Close File

int fclose (FILE *stream);

*harus ditutup agar bisa digunakan untuk aplikasi lainnya atau .txtnya akan digunakan terus menerus

fclose () didefinisikan di <stdio.h>

fclose () akan mengembalikan 0 jika berhasil, dan EOF jika error

EOF (End Of File) sama dengan -1 (EOF itu dibuat otomatis)

fclose () akan masuk ke buffer area dulu dan segera mengirimkan sisa data ke dalam file.