Saturday, 16 November 2013

My work: Membuat program sederhana konversi bilangan ke kalimat

Cara mengerjakan manual:



Source code (Python 2.7):

u = input ('Masukkan angka (Contoh: 132) : ')
a = u / 100
b = u - 100 * a
c = b / 10
d = b - c * 10

x = ['seratus','dua ratus', 'tiga ratus', 'empat ratus', 'lima ratus', 'enam ratus', 'tujuh ratus', 'delapan ratus', 'sembilan ratus']
y = ['sepuluh', 'dua puluh', 'tiga puluh', 'empat puluh', 'lima puluh', 'enam puluh', 'tujuh puluh', 'delapan puluh', 'sembilan puluh']
z = ['satu', 'dua', 'tiga', 'empat', 'lima', 'enam', 'tujuh', 'delapan','sembilan']

p = x[a-1]
q = y[c-1]
r = z[d-1]

print p + " " + q + " " + r




Rev.1 :
u = input ('Masukkan angka (Contoh: 104) : ')
a = u / 100
# misal u = 104
# a = 104 / 100
# a = 1

b = u - 100 * a
# b = 4

c = b / 10
# c = 4 / 10
# c = 0

d = b - c * 10
# d = 4 - 0 * 10

e = a
f = c
g = d

x = ['seratus','dua ratus', 'tiga ratus', 'empat ratus', 'lima ratus', 'enam ratus', 'tujuh ratus', 'delapan ratus', 'sembilan ratus']
y = ['sepuluh', 'dua puluh', 'tiga puluh', 'empat puluh', 'lima puluh', 'enam puluh', 'tujuh puluh', 'delapan puluh', 'sembilan puluh']
z = ['satu', 'dua', 'tiga', 'empat', 'lima', 'enam', 'tujuh', 'delapan','sembilan']

p = x[e-1]
q = y[f-1]
r = z[g-1]

if e == 0:
    if f == 0:
        if g == 0:
            r = 'nol'
            print r
        if g != 0:
            print r
    if f != 0:
        if g == 0 :
            print q
        if g !=0 :
            print q, r
if e != 0:
    if f == 0 :
        if g == 0 :
            print p
        if g !=0:
            print p, r

    if f != 0:
        if g == 0:
            print p, q
        if g != 0:
            print p, q, r
         


Thursday, 14 November 2013

Jenis-jenis perangkat lunak (software)

Jenis-jenis perangkat lunak (software) antara lain:
1. Sistem software

Sistem software mempunyai/memiliki kontrol dan akses langsung ke perangkat keras (hardware) komputer dan lokasi-lokasi memori.

Teruntuk memori, sistem software mampu melakukan proses masuk keluar data (input output) I/O ke bermacam lokasi memori.

Contoh:

2. Application software (perangkat lunak aplikasi)

Tidak memiliki akses langsung ke perangkat keras (hardware).
Dijembatani oleh sistem software untuk pengambilan data dari hardware.
Perangkat lunak aplikasi biasanya melaksanakan fungsi/tugas spesifik/tertentu. Contoh: pengolah kata, pengolah gambar.

Contoh:

3. Programming software
Merupakan perangkat lunak untuk melakukan pemrograman kedua jenis software diatas: aplication software dan sistem software.

Contoh:

Sumber referensi: http://en.wikipedia.org/wiki/List_of_software_categories

My work: Membuat pendaftaran IP address per segmen menggunakan Python

Demo program:


Cara mengerjakan manual:



Source code (Python 2.7):

x = raw_input ('Masukkan nomor IP (Cth. 192.168.1.1) :')
y = raw_input ('Masukkan subnet mask (Cth. 255.255.255.192) :')

a = x.split('.')
b = y.split('.')

c = []
d = []

# c = IP address (x) ter-list
for i in a:
    c.append(int(i))

# d adalah subnetmask (y) ter-list
for i in b:
    d.append(int(i))

# e adalah hasil proses AND antara IP address ter-list dan subnetmask ter-list
# e akan digunakan untuk "membersihkan" IP address
e = []
for i in range (0,4):
    e.append(c[i]&d[i])

# g adalah hasil pengurangan antara subnetmask all 1 dan subnetmask ter-list
# g digunakan untuk increment IP address
f = [255, 255, 255, 255]
g = []
for i in range (0,4):
    g.append(f[i]-d[i])

# h adalah hasil pengurangan antara
h = []
for i in range (0,4):
    h.append(abs(e[i]-g[i]))

for i in range (e[0],h[0]+1):
    for j in range (e[1],h[1]+1):
        for k in range (e[2],h[2]+1):
            for l in range (e[3],h[3]+1):
                print str(i) +"."+str(j)+"."+str(k)+"."+str(l)

Tuesday, 17 September 2013

Pemilihan tata kalimat yang tepat

Kalimat 1: Bunga menambahkan sesuatu kepada kita berdasarkan besar uang kita

Kalimat 2: Bunga menambahkan sesuatu ke tabungan kita berdasarkan jumlah uang di tabungan kita

Kalimat 3: Bunga menambahkan uang kepada tabungan kita berdasarkan besar uang kita

Kalimat 4: Sesuatu yang ditambahkan kepada uang milik kita berdasarkan

Kalimat 5: Bunga adalah sesuatu yang ditambahkan kepada uang di tabungan kita berdasarkan besar uang kita.

Kalimat 6: Bunga adalah pertambahan uang sebagai jasa bank bagi tabungan

Berkreasi persamaan sederhana matematika

Pendahuluan
Berikut ini adalah salah satu cara iseng membuat/berkreasi persamaan matematika dari yang sederhana sampai yang ribet.

Sepanjang artikel ini nama-nama variabel yang digunakan adalah a dan b.

Untuk membenarkan semua persamaan dibawah ini, nilai variabel a harus sama dengan nilai b (a = b). Karena seluruh persamaan ini dikreasikan dari a = b.

Daftar hasil kreasi persamaan
1. a = b
a x a = b x a ... isi dari lajur kiri (a) diambil kemudian dikalikan kepada kedua lajur (lajur kiri dan kanan)
a ^ 2 = b x a ... sebagai bibit bagi persamaan 9

2. a = b
a x b = b x b ... isi dari lajur kanan (b) diambil kemudian dikalikan kepada kedua lajur (lajur kiri dan kanan)
a x b = b ^2 ... sebagai bibit bagi persamaan 10

3. a = b
a/ a = b/a ... isi dari lajur kiri(a) diambil kemudian dibagikan kepada kedua lajur (lajur kiri dan kanan)
1 = b/a

4. a = b
a / b = b / b ... isi dari lajur kanan (b) diambil kemudian dibagikan kepada kedua lajur (lajur kiri dan kanan)
a / b = 1

5. a = b
a - a = b - a ... isi dari lajur kiri (a) diambil u/ dikurangkan kepada kedua lajur (lajur kiri dan kanan)
0 = b - a

6. a = b
a - b = b - b ... isi dari lajur kanan (b) diambil kemudian dikurangkan kepada kedua lajur (lajur kiri dan kanan)
a - b = 0

7. a = b
a + a = b + a ... isi dari lajur kiri (a) diambil kemudian ditambahkan kepada kedua lajur (lajur kiri dan kanan)
2a = b + a

8. a = b
a + b = b + b ... isi dari lajur kanan (b) diambil kemudian ditambahkan kepada kedua lajur (lajur kiri dan kanan)
a + b = 2b

9. a ^ 2 = b x a ... bibit dari persamaan 1
(a^2) x (b x a) = (b x a) x (b x a)
a^2b x a^3 = b^2 x ab x ab x a^2 = b^2 x ab^2 x a^2 ... Persamaannya udah mulai ribet ea?

10. a x b = b ^2 ... bibit dari persamaan 2 dan saya sudah malas nerusinnya

11 - 100000... = lanjutkan lah ya

Behind the scene
Tanya: Darimanakah didapatkan persamaan 1 - 9 diatas?
Jawab: Persamaan 1 - 9 diatas dibuat dengan secara iseng mengalikan isi dari lajur kiri/kanan ke semua lajur, membagikan isi dari lajur kiri/kanan kepada semua lajur, mengurangkan dan menambahkan.




Thursday, 29 August 2013

Pengertian relativitas menurut gw

Cerita#1

Pada mulanya a sama dengan b (a = b). Kemudian a tidak lagi sama dengan b (a != b). 
Karena a lebih giat bekerja dari b.  Sekarang a lebih kaya dari b (a > b) dan b lebih miskin dari a (a < b). (Bercerita tentang a>b)

Arti kalimat diatas bisa diartikan:
"Mereka tidak lagi sama karna orang yang satu satu sudah lebih kaya dari orang yang satunya lagi"

Cerita #2
Dulu a dan b sama kayanya. Namun sekarang, a bertambah kaya dan b segitu saja. Dengan demikian b kelihatan lebih miskin dari a walaupun sebenarnya tidak demikian; b tidak lah miskin, dia masih lebih kaya dari c. (Bercerita tentang a > b > c)

Jadi perkenalkanlah 3 orang aktor: a, b dan c dan berikutlah problematikanya:

 (i) a > b > c
(ii) a > b < c
(iii) a < b > c
(iv) a < b < c

List problem dalam kata-kata

a lebih kaya dari b dan b lebih kaya dari c, apakah a lebih kaya dari c? Tentu.
a lebih kaya dari b dan b lebih miskin dari c, apakah a lebih kaya dari c?
a lebih miskin dari b dan b lebih kaya dari c, apakah a lebih kaya dari c?
a lebih miskin dari b dan b lebih miskin dari c, apakah a lebih misikin dari c? Tentu

Petuah iseng-iseng berhadiah dari saya:
Jadi jika kamu merasa sekarang lebih miskin dari orang yang kamu pandang sekarang lebih kaya cobalah lihat kebawah, siapa tahu bukan kamu yang bertambah miskin tapi orang lain itu yang bertambah kaya. Dan kamu, ternyata masih lebih kaya dari orang lain. Dan janganlah kamu iri hati.



Thursday, 15 August 2013

Router

Dear router function:
1. Routing
2. Built-in firewall
3. Intrusion detection
4. Encryption
5. Authentication
6. VPN