Thursday, 26 August 2010

Segitiga dari Kotak (1)



Pemrograman yang baik butuh Algoritma...
Algoritma yang tepat butuh Latihan...
Latihan yang Keras, jangan menyerah...

Dengan algoritma yang tepat pada pemrograman, kode sederhanapun akan menjadi sebuah program yang powerfull tanpa perlu sederetan fungsi-fungsi khusus dari library tambahan. Tetapi tentu dengan kapasitas kode/fungsi yang digunakan. Contohnya tentu program berikut ini :

Link : http://www.mediafire.com/download/ug27wgpom4005cg/Segitiga_dari_Kotak.7z
Size : 126 KB

Program diatas hanya memanfaatkan fungsi dasar SDL yaitu pembuatan kotak (SDL_Rect). Tetapi terlihat menarik dengan penampatan yang sistematis sehingga berbentuk segitiga atau seperti piramid. Selain itu fungsi dasar lainnya yaitu SDL_FillRect untuk memberi warna pada kotak. Sebelum melangkah lebih jauh, dan agar lebih jelas silahkan download terlebih dahulu file diatas, yang selanjutnya kita bahas bersama. Karena bersama kita pasti bisa .

So.. See You Later...

- krofz

Wednesday, 11 August 2010

Ascending dan Descending (2)

Tulisan ini merupakan lanjutan dari:
Ascending dan Descending (1)

Setelah proses Ascending, maka perlu kita tampilkan hasil pengurutan pada senarai (array) nilai agar informasi yang dikandung (selama 9 bulan, hah? ) dapat tersampaikan dengan jelas. Setelah ditampilkan maka kita lanjut ke proses selanjutnya yaitu Descending. Sama seperti Ascending, algoritma yang digunakan tidak jauh berbeda hanya cukup menganti operator pada kondisi if menjadi 'lebih besar' atau '>' yang sebelumnya 'lebih kecil' atau '<'. Maka *sim salabim...* (buset kayanya canggih amat >.<) semua sudah terurut secara Desending. Tapi ini bukan satu-satunya algoritma untuk itu coba perhatikan kode berikut:

...
for(int c=0;c < (MAX_NILAI/2);c++){
    int _temp = nilai[c], d = MAX_NILAI-(c+1);
    nilai[c] = nilai[d];
    nilai[d] = _temp;
}
...
Syarat dari algoritma diatas adalah kita harus terlebih dahulu melakukan pengurutan baik secara Ascending atau Descending. Misal kita Ascendingkan dahulu, lalu untuk mencari Descending cukup menggunakan algoritma diatas. Dan begitu juga sebaliknya Descending dahulu untuk mencari Ascending-nya. Algoritma ini dapat mempercepat proses yang diperlukan, bandingkan dengan sebelumnya yang memerlukan pengulangan bercabang dan kondisi if. Yang perlu diperhatikan adalah jumlah pengulangan yaitu pada 'c < (MAX_NILAI/2)', jangan sampai tidak dibagi 2. Karena nilainya nanti bisa balik lagi seperti semula. Tak perlu aku jelaskan lagi kenapa ini semua bisa terjadi. So.. happy coding and ngurutin!! :D

- krofz
 

back to top

back to top