Nugroho's blog.

Tuesday, March 27, 2012

Loop di Delphi

Buat aplikasi baru

Tempatkan sebuah edit dan dua buah tombol, isi edit dengan nilai nol, ganti caption tombol masing-masing “Jalan” dan “Stop”

Buat variabel global “jalan” berjenis boolean

Dobelklik tombol “Jalan”, ketikkan perintah sebagai berikut



jalan:=true;
x:=strtoint(edit1.Text);
while jalan=true do begin
x:=x+1;
edit1.Text:=inttostr(x);
application.ProcessMessages;
sleep(1000);
end;

(jangan lupa membuat variabel lokal “x” berjenis integer sebelum begin)

Dobelklik tombol “Stop”, ketikkan perintah sebagai berikut

jalan:=false
jalankan program. Jika gagal, ubah deklarasi x dari x:int; menjadi x:integer;

Preman (lagi)

Tadaa…

Masih tentang "pengemis" atau mungkin lebih tepat jika disebut preman kemanusiaan, karena jika benar-benar diperhatikan, mereka tidak masuk kategori pengemis ataupun preman meski

Pernahkah anda melihat pengemis di perempatan jalan? Bagaimana penampilannya

Jaman dulu

Kebanyakan tua
pakaian compang-camping
pake sandal jelek bahkan telanjang kaki
bawa selendang tuk tempat uang



"Pengamen" atau "pengemis" sekarang

semua umur
pakaian lusuh tetapi tetap melindungi kulit dari sengatan matahari
pakai sandal nyaman, ada yang bersepatu
memakai tas ransel, atau selendang bagi yang bawa bayi

Apa yang "dijual" oleh mereka? Kita tahu bahwa pengamen menjual suara merek lewat lagu, di bus kita bahkan sering terhibur dengan lirik-lirik lagu yang kadang mereka ciptakan sendiri. Kita juga tahu pengemis (tanpa tanda petik) menjual keadaan mereka; kemiskinan, penyakit bahkan mungkin harga diri.

Di perempatan memang ada pengamen dan dan pengemis yang sesungguhnya; anak-anak punk yang memang terjun ke jalan. Anak-anak jalanan ini benar-benar menyanyi meskipun tentu saja kita tidak bisa menikmati keseluruhan lagu seperti di bus, dan tentu saja mereka patut untuk mendapatkan imbalannya, sekeping lima ratus rupiah.

Bahkan saya pernah di panas terik dimintai "belas kasihan" oleh seorang "pengemis" kecil; dia minum jus melon sambil ngobrol seru dengan temannya yang memakai tas pinggang Eiger. Dengan keadaan demikian tentu saja saya tidak bisa berbelas kasihan, saya tidak begitu bodoh untuk

Tidak bisakah mereka menjadi pengemis yang profesional? Dengan pakaian dinas yang sesuai dan tingkah laku profesional layaknya pengemis sesungguhnya? Saya kira tidak, mereka sudah terlalu nyaman dengan rutinitas mereka meskipun saya yakin jika mereka bisa bertingkah laku secara profesional, pendapatan harian mereka bisa meningkat.

Tidak pernah ada yang tahu jalan pikiran mereka, tetapi tidak sulit untuk ditebak. Mereka turun ke perempatan-perempatan yang berlampu merah dengan pikiran optimis bahwa jika mereka meminta pasti diberi karena mereka pikir para pengendara menyangka mereka patut dikasihani; dan orang yang patut dikasihani tentu saja harus dikasih uang. Mereka mengeksploitasi rasa belas kasihan kita saat melihat pengemis. Mereka memaksa kita untuk berbelas kasihan meskipun sebenarnya dalam hati beberapa dari kita pasti bertanya “apa iya mereka ini benar-benar patut dikasihani?”.

Cara ini sedikit banyak berhasil. Ironisnya pengendara kebanyakan mengabaikan anak-anak punk yang terkadang malah benar-benar menjual suara mereka dan cenderung memberikan recehan mereka pada anak-anak kecil. Bias ini bisa dimaklumi tentu saja, lihat pakaian anak punk jalanan itu. Namun apakah belas kasihan kita telah benar pada tempatnya?

Memberi recehan pada anak kecil di perempatan mungkin melegakan kita; membantu anak yang kekurangan. Namun anak yang kita beri recehan tersebut sangat mungkin untuk tetap di situ bertahun-tahun kemudian. Mereka telah mendapatkan mata pencaharian yang gampang, mereka tidak butuh sekolah karena lebih enak di jalanan. Dengan memberi mereka recehan kita telah menghancurkan kemungkinan mereka untuk sadar akan pentingnya pendidikan.

Radiobutton di Delphi

Buat aplikasi baru

Tempatkan 2 buah edit, dua buah label, empat radiobutton dan satu tombol pada form

Ubah sedemikian rupa sehingga menjadi seperti gambar kedua

Dobelklik tombol “Hitung”, isi dengan perintah berikut



if radiobutton1.Checked=true then begin
edit3.Text:=inttostr(strtoint(edit1.Text)+strtoint(edit2.Text));
end else if radiobutton2.Checked=true then begin
edit3.Text:=inttostr(strtoint(edit1.Text)-strtoint(edit2.Text));
end else if radiobutton3.Checked=true then begin
edit3.Text:=inttostr(strtoint(edit1.Text)*strtoint(edit2.Text));
end else if radiobutton4.Checked=true then begin
edit3.Text:=floattostr(strtoint(edit1.Text)/strtoint(edit2.Text));
end;

jalankan program

sebagai pelengkap, tambahkan perintah pada radiobutton sedemikian sehingga jika kita memilih “Pengurangan”, maka otomatis label1 menjadi “-”

Berkenalan dengan Delphi

Perkenalan dengan Delphi

Buat aplikasi baru

Buat sebuah label di dalam form, pada caption di properties, ubah tulisan “label1” menjadi “Hello World”


Buat satu tombol di dalam form, pada caption di properties ubah “button1”menjadi “Halo Dunia”




Dobel klik tombol “Halo Dunia”, tuliskan perintah berikut untuk mengubah tulisan “Hello World” menjadi “Halo Dunia”
form1.Label1.Caption:='Halo Dunia';


Jalankan program dengan menu Run->Run atau tombol F9


Ketikkan perintah berikut untuk mengubah warna font pada label 1
form1.Label1.Font.Color:=cllime;


Ketikkan perintah berikut untuk mengubah warna background pada label
form1.Label1.Color:=clred;


cllime, clred adalah warna-warna yang dikenali oleh Delphi. Warna-warna yang lain dapat dilihat di bagian properties


Buat tiga edit dan sebuah tombol

di properties bagian text pada masing-masing edit, ganti dengan angka nol
ganti caption pada tombol dengan “Hitung”

Dobelklik tombol “Hitung” dan ketikkan perintah berikut
edit3.Text:=edit1.Text+edit2.Text;

Jalankan program, klik tombol “Hitung”, apa yang terjadi? Ubah angka-angka pada kotak input (edit1 dan edit2) kemudian klik tombol hitung, apa yang terjadi?

Angka yang ada pada edit diperlakukan sebagai string (huruf) oleh Delphi sehingga jika kita menambahkan angka pada edit1 dengan angka pada edit2, maka mereka tidak menjumlahkan angka melainkan menambahkan angka edit2 di samping edit1.

Agar angka pada edit1 diperlakukan sebagai angka, maka harus kita konversi dengan perintah strtoint(edit1)

Namun karena hasil penjumlahan antara strtoint(edit1)+strtoint(edit2) adalah angka, kita tidak dapat memasukkannya ke edit3; kita harus mengkonversi kembali menjadi string sehingga perintah lengkapnya adalah
edit3.Text:= inttostr(strtoint(edit1)+strtoint(edit2));

jalankan program untuk melihat bedanya

Monday, February 20, 2012

Preman Kemanusiaan

Apakah aku merasa kasihan terhadap pengemis yang menggendong bayinya?

Tidak. Aku kasihan kepada bayinya.

Kenapa tidak diadopsi saja?

Tentu saja, tapi tak mungkin ibunya mau, pasti pendapatannya turun karena tak punya nilai jual lagi di perempatan.

Thursday, February 2, 2012

Kebersihan Sebagian dari Iman

Pagi tadi setelah sarapan aku langsung melompat ke dalam mobil dan memulai perjalanan rutin 50 km tanpa sempat melakukan aktivitas lain karena jarum jam sudah diambang

Di dinding toilet tertulis "harap disiram karena kebersihan sebagian dari iman". Hm, dengan menyiram bersih toilet saja saya sudah memiliki sebagian iman.

Jika ditambah dengan cinta tanah air, maka iman saya sudah penuh, karena cinta tanah air adalah sebagian lainnya, hehehe.

Pernah dengar saat SMP, mungkin ustadz, mungkin guru agama, aku lupa yang mana. Beliau mengartikan kalimat di atas secara lain: "Kebersihan adalah perwujudan dari iman".

Sepertinya aku lebih suka definisi yang terakhir.

Thursday, December 29, 2011

Tinycore Linux on Lion's Virtual Box

I installed it on new machine. Though it's not really installing for I just running the iso. My virtual machine is set without harddisk.

The OS boot very quick. But here the problem arise.

While GUI is included in this 8 Mb distro, I can't used it effectivelly soon. You know, my mac has dvorak keyboard layout, so what I typed come out as gibberish. There is  kmaps.tcz and I applied it but it has no effect
323f (5) amp (1) android (12) apple (7) arduino (18) art (1) assembler (21) astina (4) ATTiny (23) blackberry (4) camera (3) canon (2) cerita (2) computer (106) crazyness (11) debian (1) delphi (39) diary (286) flash (8) fortran (6) freebsd (6) google apps script (8) guitar (2) HTML5 (10) IFTTT (7) Instagram (7) internet (12) iOS (5) iPad (6) iPhone (5) java (1) javascript (1) keynote (2) LaTeX (6) lazarus (1) linux (29) lion (15) mac (28) macbook air (8) macbook pro (3) macOS (1) Math (3) mathematica (1) maverick (6) mazda (4) microcontroler (35) mountain lion (2) music (37) netbook (1) nugnux (6) os x (36) php (1) Physicist (29) Picture (3) programming (189) Python (109) S2 (13) software (7) Soliloquy (125) Ubuntu (5) unix (4) Video (8) wayang (3) yosemite (3)