Arsip untuk Desember, 2011

lanjutan program kamus

kode sudah disesuaikan untuk python3, sehingga bisa jalan langsung di kebanyakan OS linux modern.

yoi, saya sudah menemukan cara agar apapun kata yang kita masukkan, indonesia maupun english, otomatis dicarikan. kelihatannya seperti mendeteksi kata, tetapi sebenarnya tidak. melainkan dengan menggabungkan berkas bahasa indonesia dan english ke dalam satu berkas dan pencarian dimulai dari awal sampai akhir, jika tidak ditemukan diberikan pesan ‘kata yang dimaksud tidak ditemukan’

ternyata ini mudah, cuma gegara rendahnya tingkat inteligensi dan sedikitnya waktu buat main-main, baru ketemu sekarang.

berikut skrip.

def terjemah(kata):
	hasil='tidakada'
	teks=open('universal.dict','r')
	for line in teks:
		x=line.split()
		y=x[0]
		if y == kata:
			hasil=(line)
	if hasil != 'tidakada':
		print(hasil)

	else:
		print('tidak ada kata yang dimaksud')
inputkata=input('masukan kata : ')
katalowercase=inputkata.lower()
terjemah(katalowercase)

penjelasan :

  1. berkas universal.dict adalah berkas gabungan bahasa indonesia dan english. dalam setiap baris, kata pertama adalah kosakata, sedangkan kata kedua dan selanjutnya adalah terjemahannya.
  2. hasil=’tidakada’ adalah variabel yang membantu menunjukkan kondisi awal bahwa kata yang dimaksud tidak ada.
  3. berkas dibaca dan diperiksa, setiap baris dibagi ke dalam list dan diperiksa apakah list pertama dari setiap baris adalah kata yang dimaksud. bahasa inggris maupun indonesia semua diperiksa.
  4. jika sama, maka baris tersebut (kosakata + terjemahan) menggantikan nilai dari variabel hasil dan variabel tersebut ditampilkan. program selesai.
  5. jika tidak sama, maka akan ditampilkan pesan ‘kata yang dimaksud tidak ditemukan’. program selesai.
  6. karena semua kata dalam berkas universal.dict adalah lowercase, digunakan fungsi lower() mengubah setiap karakter huruf besar menjadi huruf kecil.

nah, kelemahannya, bagaimana kalau ada kosakata bahasa indonesia dan english yang sama? saya belum pikirkan kira-kira kosakata yang mana itu.

Iklan

Pemuda dan Mimpi

barangkali nyenyak memang
namun terulang lagi seperti yang sudah-sudah
disebutnya terlalu
kami ini pemuda-pemuda yang tersiksa oleh impian sendiri
sesuatu yang tak habis namun tak semu
tangan-tangan kami kotor
otak kami tak cukup kenyal
diseruduk hasrat hingga muncrat
kami menjura kami merangkak
kami gagal, kadang-kadang sambil memeluk waktu
dan menangis untuk diri kami sendiri, berharap mati muda

o kawan barangkali kamu bakal tertawa lagi
macam melihat kami mengejar ekor sendiri
silakan
masalahnya, kami sudah terlanjur bertaruh untuk semua ini

MENOLAK LUPA!

klik untuk perbesar.

gerakan ini dicetuskan oleh antitankproject di jogja. gambar diambil di jalan udayana, Mataram. tidak seperti poster2 menolaklupa yang disebar di tempat lain dengan cara difotocopy kertas kemudian tempel, wajah Alm Munir ini dipilox langsung dengan teknik cutting mal, sehingga permanen sampai pihak PU kota Mataram mengecat kembali.

barangkali poster2 ini tidak akan membantu mengangkat kembali kasus munir yang belum tuntas, tapi ia menjadi pengingat untuk kita bahwa keadilan di negara ini masih bobrok.

kamus menggunakan dict (python2.x)

cara sebelumnya, saya menggunakan perulangan untuk mencari kata di setiap baris pada berkas id.dict (id.dict adalah berkas kamus, kata pertama adalah sebuah karakter atau kata dalam bahasa indonesia, kata-kata selanjutnya dalam baris yang sama adalah terjemahannya. berkas ini bisa didapatkan dari program gkamus)

bagaimana kalau menggunakan dict? barangkali pencariannya bisa lebih cepat karena tinggal print key (kata) untuk mendapatkan value (terjemahan). tapi sebenarnya lebih lambat, karena mengkonvers sebuah berkas teks kamus ke bentuk dict benar-benar memakan waktu. kali ini juga pakai perulangan untuk membuat dict dari setiap baris berkas.

#!/usr/bin/python2
kamus= {}
for line in open (“id.dict”):
x=line.split()
y=x[0]
z=list(x)
del z[0]
kamus.update({y:z})
kata=raw_input(‘masukkan kata yang akan diterjemahkan : ‘)
print kamus[kata]

cara kerjanya, program akan memisahkan setiap baris menjadi list, kemudian memeriksa dan memasukkan kata pertama dari setiap baris di berkas tersebut sebagai key dari kamus={}. dibuat lagi sebuah list dan mengurangi kata pertama, sehingga list kedua ini hanya berisi terjemahan, kemudian list ini dimasukkan sebagai value untuk setiap key.

keluarannya masih berbentuk list. lagi males. 😛

kedepannya mungkin saya akan masukkan dict yang baku dan sudah jadi ke dalam berkas program, sehingga tidak memakan waktu untuk membaca dan membuat dict dari awal setiap skrip dijalankan dan berkas id.dict tidak diperlukan lagi. kemudian tentu saja, memperbaiki bentuk keluarannya. dan mungkin menerapkan argument parsing sehingga hasilnya kira-kira sebagai berikut :

./terjemahkan.py pagi
pagi : morning

update :

ternyata pakai cara ini benar-benar lambat dan memakan proses lebih banyak saat menjalankan berkas skrip. 😦

skip.

sinkron waktu di mikrotik dengan NTP

awalnya dari blokir fb dan socmed lain di kantor, tapi setiap mati lampu, jamnya ter-reset dan jadwal blokir fb jadi kacau. rekan kantor pada senyum kembang-kembang buka facebook. gobloknya saya ndak googling dulu, langsung bongkar mikrotiknya buat liat2 siapa tahu ada baterai jamnya (semacam baterai bios di PC), ternyata tidak. UPS juga tidak bisa bertahan lebih lama dari yang diharapkan.

solusinya, pengaturan waktu di mikrotik bisa diatur agar sinkron dengan server NTP. dalam hal ini, saya menggunakan server NTP dari LIPI : ntp.kim.lipi.go.id

berikut definisi NTP dari situs LIPI :

Secara umum, Network Time Protocol (NTP) adalah protocol untuk meng-sinkron-kan sistem waktu (clock) pada komputer terhadap sumber yang akurat, melalui jaringan intranet atau internet. Terdapat beberapa situs NTP “Stratum 1” (situs NTP dengan sumber waktu dari atomic clock) and “Stratum 2” (situs NTP dengan sumber waktu dari situs NTP lain, dengan sedikit penurunan tingkat akurasi) yang dapat digunakan oleh publik.

Dalam aplikasinya, sebaiknya jaringan mempunyai satu (atau lebih) NTP server lokal (Stratum 2 atau 3) untuk semua work-station, yang di-sinkron-kan terhadap NTP server di luar jaringan. Konfigurasi ini lebih menjamin korelasi antar sistem-sistem yang terkait dalam jaringan yang bersangkutan.

di mikrotik, pergi ke system > NTP client. akan muncul jendela pengaturan NTP client. pilih mode unicast dan isikan primary NTP server dengan ntp.kim.lipi.go.id yang nantinya akan berubah secara otomatis menjadi alamat IP. klik OK.

waktu dan jam di mikrotik akan mengikuti waktu yang diberikan oleh NTP server tersebut, jangan lupa pilih timzone yang benar. sekarang, meski mikrotik mati hidup karena listrik, waktu tetap akan sinkron otomatis begitu koneksi internet tersambung.

saya kira, mundur itu tidak salah.
selama saya teguh pada tujuan semula
barangkali waktu bakal mengikis
tetapi saya akan mencobanya

orang di ujung jalan

orang di ujung jalan ini
yang hidupnya bergantung pada lampu merah hijau kuning
katanya padaku bangga meninggi
terlalu berharga hidup ini bilamana tak berdusta
demi jasadnya yang masih hangat
dalam demi recehan yang sangat berharga tak seberapa
mudah buat aku terperangah kagum
karena matanya yang pekak itu tidak benar-benar buta
rasa iba yang tidak dijual di toko-toko


This blog has been discontinued. All the contents, and new posts can be found at blog.pdft.net

RSS latest post @ blog.pdft.net

  • Sebuah galat telah terjadi; umpan tersebut kemungkinan sedang anjlok. Coba lagi nanti.
Indonesia Linux Conference 2011

stats

SEO Stats powered by MyPagerank.Net
Counter Powered by  RedCounter

hits

  • 360,168 hits


This blog is licensed under a Creative Commons Attribution-Share Alike 3.0 Unported License.
pejuang mimpi tak ingkar janji