September 20, 2010

Hard Coding - answer for who cant solve a problem

Udah stress dan gak kepikiran bagaimana caranya lagi untuk solve problem yang sulit-sulit? udah mentok banget? udah nyerah? ini salah satu cara paling fun, paling gokil, paling gak bermutu nan bermutu untuk menjawab soal sulit di olimpiade komputer, yaitu hard coding. 

apa sih tuh hard coding?

Hard coding atau hard code adalah teknik coding yang digunakan untuk problem yang sudah terformat, tercatat ataupun problem nya memiliki output dengan ruang lingkup kecil. Hard coding akan menyesuaikan input dan output yang terformat atau tercatat dalam program. Singkatnya, hard coding tidak terlalu memperhatikan proses, hanya mengeluarkan output sesuai apa yang tercatat dalam program yang kita buat.

Bagi yang masih belum mengerti apa yang di maksud hard coding, harap di simak paragraf di bawah ini baik-baik.

Metode hard coding s
ecara bahasa yg kurang manusiawi :
Hard coding akan menghasil output yang sesuai dengan input yang kita catat dalam program, baik itu di catat dalam array, ataupun dengan metode if.
secara beralur, maka catatlah dulu kemungkinan input dalam program, lalu berikan perintah untuk menghasil kan output yang sesuai secara spontan. atau sebaliknya, catat terlebih kemungkinan output, kemudian terima input dan keluar kan output yg sesuai secara spontan.

Metode hard coding secara bahasa manuasiawi :
misalnya kamu ingin membuat program bilangan prima dengan hard coding :
maka catat lah semua bilangan prima yang kamu ketahui, dan ketika inputan menanyakan bilangan prima ke-i, maka kita tinggal memanggil array yang telah kita catat dengan urutan bilangan prima.
atau
gunakan if-then, lalu rajin2 lah menulis if-then sebanyak mungkin dengan rumus begini if i=1 then write(2) else if i=2 then write(3) else if i=3 then write(5) ..dst.. itulah ribetnya hard coding.
Selain dengan metode menyesuaikan input dgn output. Kalian dapat menggunakan cara tak bermutu nan bermutu dan benar benar gawat. kenapa? karna kalian tinggal menulis output nya langsung tanpa peduli input!!


Metode hard-coding tanpa memperduli input adalah teknik keramat paling jitu ketika kalian sungguh buntu dan menyerah untuk meng-solve sebuah probelm, daripada gak ada nilai, lebih baik kita menyelesaikan beberapa test-case yang dapat memberi nilai walaupun sedikit. Sebagai tambahan, trik ini hanya lah berlaku maksimal saat output memiliki ruang lingkup kecil.


Contoh dalam soal dengan metode memperhatikan input-output :
problem A
description : blablabla.
example test-case1
input : 2
output : 3
example test-case2
input : 4
output : 7

maka hajar aja dengan code ini

begin
  readln(n);
  if n=2 then writeln(3)
  else writeln(7);
end.

hahaha. mudahkan?


lanjut ke contoh gila (umum) :
problem B
description : blablabla
example test-case
input : 23
output : 2312324

ini cara paling gila. tak peduli inputnya apa, hajar aja dengan code ini
begin
  readln; //readln dummy, kosongkan saja
  writeln(2312324);
end.

hahhaa. gila kan?


Contoh cara gila (maksimal) :
problem C
description : jika n bilangan prima, maka tulis 'TRU3'. jika tidak, tulis 'F4LS3' (kedua ditulis tanpa tanda kutip)
example test-case1
input : 23
output : TRU3
input : 22
output : F4LS3

kebetulan ruang lingkup nya hanya antara 'TRU3' atau 'F4LS3', maka kalian dapat menghajar codenya dengan menulis salah satu diantara 2 kemungkinan output tersebut.
misalnya kita pilih 'TRU3'. artinya kemungkinan kita bisa mendekati 50% test-case bahkan bisa lebih maupun kurang. hahaha. namanya jg untung-untungan. maka codenya begini.

begin
  readln; //dummy lagi
  writeln('TRU3');
end.




Jadi, ketika kurakura menanya : apa yang kamu lakukan kalo sudah buntu!?? jawabannya adalah hard coding. tapi ingat! gunakan cara ini ketika terdesak saja, lebih baik kalian memikirkan benar bagaimana cara menyelesaikan problem agar ke solve 100%. mana tau kalian dapat mensolve suatu problem yang awalnya pemikiran kalian mengalami kebuntuan.


thanks udah baca kurakura programmer yah.




Bye! Salam KuraKura :)

2 komentar:

  1. oohh itu fungsinya si hardcoding makasih y gan

    BalasHapus
  2. haha gw jg pernah mengalami hal tsb sewaktu kuliah,, tp saran gw lebih baik berusaha. karena pada dasarnya suatu problem pasti ada solusinya.. tks

    BalasHapus