code4769

Aug 202011
 

hehe, sekedar share buat tambah-tambah post… nemu hal menarik tentang hitungan matematika, sekedar pengetahuan ja…
====================
Dalam astronomi dan fisika, kita mengenal adanya suatu fenomena alam yang sangat menarik yaitu lubang hitam (black hole). Lubang hitam adalah suatu entitas yang memiliki medan gravitasi yang sangat kuat sehingga setiap benda yang telah jatuh di wilayah horizon peristiwa (daerah di sekitar inti lubang hitam), tidak akan bisa kabur lagi. Bahkan radiasi elektromagnetik seperti cahaya pun tidak dapat melarikan diri, akibatnya lubang hitam menjadi “tidak kelihatan”.

Ternyata, dalam matematika juga ada fenomena unik yang mirip dengan fenomena lubang hitam yaitu bilangan lubang hitam. Bagaimana sebenarnya bilangan lubang hitam itu? Mari kita bermain-main sebentar dengan angka.

Coba pilih sesuka hati Anda sebuah bilangan asli (bilangan mulai dari 1 sampai tak hingga). Sebagai contoh, katakanlah 141.985. Kemudian hitunglah jumlah digit genap, digit ganjil, dan total digit bilangan tersebut. Dalam kasus ini, kita dapatkan 2 (dua buah digit genap), 4 (empat buah digit ganjil), dan 6 (enam adalah jumlah total digit). Lalu gunakan digit-digit ini (2, 4, dan 6) untuk membentuk bilangan berikutnya, yaitu 246.

Ulangi hitung jumlah digit genap, digit ganjil, dan total digit pada bilangan 246 ini. Kita dapatkan 3 (digit genap), 0 (digit ganjil), dan 3 (jumlah total digit), sehingga kita peroleh 303. Ulangi lagi hitung jumlah digit genap, ganjil, dan total digit pada bilangan 303. (Catatan: 0 adalah bilangan genap). Kita dapatkan 1, 2, 3 yang dapat dituliskan 123.

Jika kita mengulangi langkah di atas terhadap bilangan 123, kita akan dapatkan 123 lagi. Dengan demikian, bilangan 123 melalui proses ini adalah lubang hitam bagi seluruh bilangan lainnya. Semua bilangan di alam semesta akan ditarik menjadi bilangan 123 melalui proses ini, tak satu pun yang akan lolos.

Tapi benarkah semua bilangan akan menjadi 123? Sekarang mari kita coba suatu bilangan yang bernilai sangat besar, sebagai contoh katakanlah 122333444455555666666777777788888888999999999. Jumlah digit genap, ganjil, dan total adalah 20, 25, dan 45. Jadi, bilangan berikutnya adalah 202.545. Lakukan lagi iterasi (pengulangan), kita peroleh 4, 2, dan 6; jadi sekarang kita peroleh 426. Iterasi sekali lagi terhadap 426 akan menghasilkan 303 dan iterasi terakhir dari 303 akan diperoleh 123. Sampai pada titik ini, iterasi berapa kali pun terhadap 123 akan tetap diperoleh 123 lagi. Dengan demikian, 123 adalah titik absolut sang lubang hitam dalam dunia bilangan.

Namun, apakah mungkin saja ada suatu bilangan, terselip di antara rimba raya alam semesta bilangan yang jumlahnya tak terhingga ini, yang dapat lolos dari jeratan maut sang bilangan lubang hitam, sang 123 yang misterius ini?
===========================
sumber : http://www.forumsains.com/artikel/misteri-bilangan-lubang-hitam-123/

restart otomatis aplikasi delphi

 IT  Comments Off on restart otomatis aplikasi delphi
Jul 312011
 

OK, sedikit tips saja untuk hari ini. ada kalanya dalam membuat aplikasi kita harus merestart aplikasi itu sendiri, tanpa merestart windows. terlebih jika itu sebuah aplikasi database. misal, ada sebuah aplikasi database. setelah melakukan restore database, maka diperlukan koneksi ulang antara aplikasi dengan database. untuk menghidari error yang tidak diharapkan dan tidak terduga, maka diperlukan restart aplikasi. dan tentu, ini akan menjadi lebih keren dan asyik jika dia bisa merestart dirinya sendiri. kalau anda menemukan kasus seperti ini, maka code yang diperlukan adalah :

ShellExecute(Handle, ‘open’, PAnsiChar(ParamStr(0)), ”, ”, SW_SHOW);
Application.Terminate; // ato bisa pake “Close” aja

o iya, kadang restart terjadi lebih cepat daripada proses import database. jadi, kalau anda menemukan error berupa table yang belum exist, maka diperlukan jeda waktu restart. misal, “restore database berhasil, aplikasi akan restart dalam 5 detik lagi.” dan setelah 5 detik, baru aplikasi restart. untuk hal seperti ini, tentu anda bisa menambahkan komponen timer.

demikian sedikit tips. semoga bermanfaat. 🙂

cara membulatkan pecahan angka ratusan ke ribuan pada delphi

 IT  Comments Off on cara membulatkan pecahan angka ratusan ke ribuan pada delphi
Jul 292011
 

em, sedikit tips kali ini, tentang cara untuk membulatkan angka pecahan ratusan ke dalam ribuan. misal,
192.333 dibulatkan menjadi 192.000
174.250 dibulatkan menjadi 174.000
kalau ada pertanyaan, kenapa juga harus dibulatkan? sedangkan angka itu bukan angka pecahan atau desimal. OK, pembulatan seperti ini akan diperlukan untuk perhitungan data keuangan dengan jangkauan angka yang cukup besar. misal, bila kita bicara tentang pembayaran sebuah angsuran, bukankah sangat jarang bila ada angsuran dengan pecahan ratusan rupiah? terlebih jika jumlahnya mencapai jutaan rupiah. 🙂

kasus ini baru saja saya alami ketika saya membuat sebuah sistem keuangan. dan dari situ juga saya ada niat untuk share disini karena ternyata belum banyak yang menulis tentang ini. entah karena ini terlalu sepele sampai terlewatkan atau bagaimana saya kurang tahu. tapi, yah, semoga bermanfaat.:)

cara pembulatan tersebut cukup sederhana. algoritma yang saya pakai adalah membagi angka tersebut dengan angka 1000, kemudian mengalikannya kembali dengan angka 1000. jadi, untuk codenya kira-kira demikian:

angka := (angka div 1000) * 1000;

dimana angka adalah bilangan bertipe integer. apabila berupa bilangan real atau float, maka ditambah trunc() jadinya kira-kira begini untuk angka adalah bilangan real atau float:

angka := (trunc(angka) div 1000) * 1000;

demikian, semoga membantu. 🙂



Jul 232011
 

emmmm…. sebenarnya kali ini saya tidak akan menulis. (lhah… terus ngopo??) hehehe.  cuma mau share ja tentang tools untuk export data dari delphi ke berbagai format file yang ada. ceritanya, kemaren saya pusing bikin report dari delphi. nampaknya, untuk kasus ini qreport dan rave report belum cukup, bahkan terkesan terlalu sederhana untuk memenuhi model report yang diinginkan.belum lagi bila report harus di export ke format file lain seperti doc, docx, atau rtf nya ms word, xls atau xlsx nya ms excel, atau pdf, atau xml, atau yang lain… hemm… otak pun mulai berfikir.. berfikir sangat.. hingga akhirnya penelusuran jejak pun dimulai. mencari sebuah komponen yang bisa mendukung. singkat cerita, saya menemukan EMS Advanced Data Export Component Suite 4.2.0.6. tools yang menarik saya pikir begitu membaca sekilas tentang penjelasan produk nya :

====================

Advanced Data Export VCL is a component suite for Borland Delphi and C++ Builder that allows you to save your data in the most popular data formats for the future viewing, modification, printing or web publication. You can export data into MS Access, MS Excel, MS Word (RTF), Open XML Format, Open Document Format (ODF), HTML, XML, PDF, TXT, DBF, CSV and more! There will be no need to waste your time on tiresome data conversion – Advanced Data Export will do the task quickly and will give the result in the desired format.

Key Features

  • Data export into 17 most popular formats: MS Access, MS Excel, MS Word, Open XML Format, Open Document Format (ODF), RTF, HTML, XML, PDF, TXT, DBF, CSV, SYLK, DIF, LaTeX, SQL and Windows Clipboard
  • Delphi 5-7, 2005-2007, 2009, 2010, XE and C++ Builder 5-6, 2006-2007, 2009, 2010, XE support
  • Export of Unicode data. Manually preset text encoding for exported data (UTF-8, UTF-16/UCS-2, UTF-32/UCS-4, Latin1, Latin2, Latin5, Latin7 and more)
  • Saving data for future viewing, modification, printing or web publication
  • Easy-to-use wizard allows your end-users to export data quickly
  • Powerful export options for each data format
  • 100% native Delphi code
  • No additional libraries or software required to operate
  • Detailed help system and demo application
  • Powerful components and properties editors
  • Setting the user formats for each field separately
  • Multilanguage support

===============================================
Continue reading »

Jun 042011
 

ukey kawan… mulai share lagi nieh…

beberapa hari memikirkan cara untuk mengubah data baris (record) pada sebuah table dan menampilkannya menjadi kolom. kasusnya demikian :

q punya 3 table anggota, simpanananggota, simpanan

anggota:
NPA
nama

simpananangota:
idsimpanananggota
idsimpanan
npa
status

simpanan:
idsimpanan
nama
jumlah

q pengen nampilkan sebuah view yang menampilkan:
npa
nama
simpananwajib —> awalnya ini adalah record dari simpanan
simpanankhusus —> ini juga salahsatu record dari simpanan
simpananpendidikan —> ini juga, jadi ada 3 record dalam table simpanan

query yang dipakai adalah :

Continue reading »