Drag and Drop

27 Juni 2009

Drag dan Drop merupakan salah satu fasilitas yang ditawarkan alat input mouse. Drag dapat diartikan sebagai berikut mengklik suatu objek dan menggeser mouse ke posisi tertentu. Drop dapat diartikan sebagai meletakkan objek pada suatu tempat.


Jam Digital Dengan Timer

27 Juni 2009

Visual Basic menyediakan suatu komponen pencacah waktu dengan nama timer. Timer akan dikerjakan berdasarkan jatah waktu yang diberikan. Jatah waktu pengerjaan timer dalam satuan milisecond (1/1000 detik).
Jam digital merupakan salah satu jenis jam yang banyak digunakan untuk menentukan waktu. Visual basic menyediakan suatu fungsi untuk mengetahui jam sistem yang aktif yaitu fungsi time(). Dengan menjalankan timer setiap 1000 milisecond dan memanggil fungsi time() maka otomatis jam akan ditampilkan seperti jam sistem yang aktif.


Bujur Sangkar Ajaib

22 Juni 2009

Permainan Angka-Angka Dengan Menggunakan Bilangan Bulat adalah salah satu sarana untuk meningkatkan kemampuan logika dari anak-anak.
Bilangan bulat termasuk ..-4,-3,-2,-1,0,1,2,3,4,..
Terdapat suatu bujur sangkar yang tersusun atas kotak-kotak seperti yang terlihat di bawah ini:

Masukkanlah bilangan bulat -4,-3,-2,-1,0,1,2,3,4 sehingga:
-bilangan pada arah horizontal
-bilangan pada arah vertikal, dan
-bilangan pada arah diagonal
sama jumlahnya.


Jam Analog

17 Juni 2009

Jam digunakan sebagai ukuran waktu. Terdapat dua jenis jam yang digunakan yaitu jam analog dan digital. Jam analog sebagai alat penghitung waktu dinyatakan dengan angka 1,2,3,4,5,6,7,9,10,11 dan 12 sebagai jam penunjuk waktu mulai dari tengah malam hingga tengah hari dan angka 1,2,3,4,5,6,7,8,9,10,11,12 yang menunjukkan angka tengah hari hingga tengah malam. Angka-angka di jam sering disebut sebagai pukul. Terdapat 3 jenis jarum pada jam yaitu jarum jam, menit dan detik. Bila jarum detik berputar satu putaran penuh maka jarum menit akan bertambah satu. Jika jarum menit berputar satu putaran penuh maka jarum jam akan bertambah satu.

I.Antar muka program
1. Buka proyek standard.exe
2. Simpan proyek dengan nama PAnalog
3. Simpan form dengan nama FAnalog
4. Ganti properti Form
Name : FrmAnalog
BorderSytel : Dialog
Caption : Analog
WindowState : Normal
5. Masukkan control Timer ke Form
6. Ganti properti Timer
Name : TrmAnalog
Interval : 1000 (dalam milisecond. 1 detik = 1000 milisecond)
7. Masukkan control Picture ke Form
8. Ganti properti Picture
Name : PicAnalog
Height : 3000 (dalam pixel)
Widht : 3000 (dalam pixel)
9. Masukkan command dan ganti propertinya menjadi:
– Name : cmdPlay
– Caption : &Play
10. Masukkan control command dan ganti propertinya menjadi:
– Name : cmdStop
– Caption : &Stop
11. Masukkan control command dan ganti propertinya menjadi:
– Name : cmdSet
– Caption : &Set

II.Implementasi
1. Buka Jendela Kode
2. Ketikkan kode program berikut:

Dim JariLingkaran, JarumJam, xTengah, yTengah, Y, X As Integer
Dim Radian, Derajat As Single
Dim strDetik, StrMenit, StrJam As String * 2
Dim Detik, Menit, Jam As Integer

Private Sub cmdPlay_Click()
TmrAnalog.Enabled = True
End Sub

Private Sub cmdStop_Click()
TmrAnalog.Enabled = False
End Sub

Private Sub Form_Load()
xTengah = PicAnalog.Width / 2
yTengah = PicAnalog.Width / 2
JariLingkaran = yTengah – 115
JarumJam = xTengah
X = JarumJam
Y = 100
Derajat = 264
PicAnalog.Circle (xTengah, yTengah), JariLingkaran, Black
Detik = -1
Menit = 0
Jam = 0
strDetik = “00”
StrMenit = “00”
StrJam = “00”
End Sub

Private Sub Form_Paint()
PicAnalog.Cls
PicAnalog.Line (xTengah, yTengah)-(X, Y), Yellow
End Sub

Private Sub TmrAnalog_Timer()
Derajat = Derajat + 6
If Derajat >= 360 Then
Derajat = 0
End If
Radian = 3.14 / 180 * Derajat
X = JarumJam + Cos(Radian) * 1400
Y = JarumJam + Sin(Radian) * 1400
Form_Paint
Detik = Detik + 1
If Detik 59 Then
Detik = 0
Menit = Menit + 1
If Menit 59 Then
Menit = 0
If Jam 12 Then
Jam = 0
End If
End If
End If
txtJam.Text = StrJam + “:” + StrMenit + “:” + strDetik
End Sub

III. Running
1. Jalankan proyek dengan menekan tombol F5


Kalkulator Sederhana

17 Juni 2009

Kalkulator yang akan dirancang termasuk sederhana karena kalkulator ini hanya difokuskan pada operasi dasar artimatika dan trigonometri yang melibatkan bilangan desimal yakni angka 0,1,2,3,4,5,6,7,8, dan 9. Namun penting diingat bahwa kalkulator pada saat ini sudah sangat canggih sehingga kemampuan seperti yang ditawarkan komputer yang dapat beroperasi pada data alpabet, numerik dan alphanumerik juga sudah dapat dilakukannya.
Operasi aritmatika merupakan operasi yang melibatkan angka-angka yang operasinya meliputi penjumlahan (+), pengurangan (-), perkalian (*), pembagian (/), pemangkatan (^), sisa bagi (mod). Sedangkan operasi trigonometri pada rancangan aplikasi ini menyangkut nilai sin, cos dan tangen.
Operasi penjumlahan aritmatika dengan syntax operasi umumnya adalah:
C = A Op B, dimana
A dan B adalah operand yang dioperasikan. Operand yang dioperasikan diganti dengan nilai bilangan bulat (-.., -3,-2,-1,0,1,2,3,…)
Op adalah operator aritmatika +, _ , * dan /
= adalah operator pemberi nilai
C adalah operand yang menerima hasil operasi

-Antar muka sistem

-Implementasi

Dim Op1, Op2, Op3, R As Double
Dim A, Op As Byte
Dim Sign, Koma As Boolean
Private Sub Nilai(ByVal Nilai As String)
If A = 0 Then
txthasil.Text = Trim(Str(Nilai))
A = 1
Else
txthasil.Text = txthasil.Text + Trim(Str(Nilai))
End If
End Sub

Private Sub cmd0_Click()
Nilai (cmd0.Caption)
End Sub

Private Sub cmd1_Click()
Nilai (cmd1.Caption)
End Sub

Private Sub cmd2_Click()
Nilai (cmd2.Caption)
End Sub

Private Sub cmd3_Click()
Nilai (cmd3.Caption)
End Sub

Private Sub cmd4_Click()
Nilai (cmd4.Caption)
End Sub

Private Sub cmd5_Click()
Nilai (cmd5.Caption)
End Sub

Private Sub cmd6_Click()
Nilai (cmd6.Caption)
End Sub

Private Sub cmd7_Click()
Nilai (cmd7.Caption)
End Sub

Private Sub cmd8_Click()
Nilai (cmd8.Caption)
End Sub

Private Sub cmd9_Click()
Nilai (cmd9.Caption)
End Sub

Private Sub cmdbagi_Click()
Op = 1
Op1 = Val(txthasil.Text)
A = 0
End Sub

Private Sub cmdbersih_Click()
txthasil.Text = “”
Koma = True
End Sub

Private Sub cmdkali_Click()
Op = 2
Op1 = Val(txthasil.Text)
A = 0
End Sub

Private Sub cmdkoma_Click()
If Koma Then
txthasil.Text = txthasil.Text + “.”
Koma = Not Koma
End If
End Sub

Private Sub cmdkos_Click()
Op = 6
Op1 = Val(txthasil.Text)
A = 0
End Sub

Private Sub cmdkurang_Click()
Op = 3
Op1 = Val(txthasil.Text)
A = 0
End Sub

Private Sub cmdsd_Click()
Op2 = Val(txthasil.Text)
Select Case (Op)
Case 1: Op3 = Op1 / Op2
Case 2: Op3 = Op1 * Op2
Case 3: Op3 = Op1 – Op2
Case 4: Op3 = Op1 + Op2
Case 5: Op3 = Sin(pi / 180 * Op2)
Case 6: Op3 = Cos(pi / 180 * Op2)
Case 7: Op3 = Sin(pi / 180 * Op2) / Cos(pi / 180 * Op2)
End Select
txthasil.Text = Str(Op3)
End Sub

Private Sub cmdsin_Click()
Op = 5
Op1 = Val(txthasil.Text)
A = 0
End Sub

Private Sub cmdtambah_Click()
Op = 4
Op1 = Val(txthasil.Text)
A = 0
End Sub

Private Sub cmdtk_Click()
If Trim(txthasil.Text) “” Then
If Sign Then
R = txthasil.Text
txthasil.Text = “-” + txthasil.Text
Sign = False
Else
txthasil.Text = R
Sign = True
End If
End If
End Sub

Private Sub Form_Load()
A = 1
Sign = True
Koma = True
End Sub

-Running

-Analisis


Pintar Menghitung Angka 1 s.d 20 Bagi Anak-Anak

15 Juni 2009

Bila kita mengingat masa anak-anak (usia 2-6 tahun) tentu kita bergumam “Betapa bahagianya masa itu ya”. Sungguh masa kanak-kanan masa yang penuh dengan kenangan bahagia. Pada masa itu kita menghabiskan waktu dengan bermain dan bermain. Tiada hari tanpa bermain. Bahkan kadang-kadang kita sampai diberi hukuman dari para orang tua karena tidak mematuhi aturan yang telah diberikan. Tapi pada masa itu kita tidak pernah jera. Setelah hukuman berakhir besoknya kita pasti bermain lagi. Sungguh kenangan yang sangat indah.
Sesungguhnya pada saat bermain anak-anak belum merasakan makna dari permainan itu sendiri. Bagaimana agar permainan berakhir dengan tawa dan canda itulah yang selalu dilakukan.
Masih kita ingat juga pada masa anak-anak, Ayah dan Ibu sering bercerita dongeng sebelum tidur. Meraka seakan-akan mengerti kemauan anak-anak. Cerita biasanya diawali dengan perjanjian-perjanjian misalnya anak-anak harus tidur bila ceritanya sudah sampai disini, ceritanya sudah selesai babak I dan seterusnya. Di sekolah (TK dan SD) Bapak/Ibu guru juga sering membuat hadiah-hadiah dalam wujud makanan, nyanyian, hingga mengarang dongeng yang tentunya dapat membuat anak-anak senang dan bahagia.
Bagi guru-guru matematika umumnya mengajarkan pelajaran melalui obyek-obyek yang ada dalam diri anak-anak maupun lingkungannya. Guru senantiasa berusaha meningkatkan rasa senang anak-anak sehingga anak-anak tidak mudah bosan. Memang sering kali pada masa ini banyak anak-anak yang bosan dan malahan banyak yang sampai tidur karena kurang termotivasinya sajian pelajaran yang diberikan. Ketertarikan anak-anak bermain berhitung juga dilandasi karena umumnya anak-anak sebelum memahami bilangan sudah pernah membilangnya sehingga pada saat dibangkitkan ingatan anak sebelumnya akan lebih mudah bagi anak-anak memahaminya. Guru pada saat melakukan permainan menghitung juga senantiasa memberikan dorangan dan motivasi bagi anak-anak. Bagi anak-anak yang mampu mejawab pertanyaan ada kalanya lebih duluan disuruh pulang ke rumah, di lain pihak anak-anak yang belum mampu menjawab akan diberi hukuman menyanyi, berkelamasi, menari, tugas sekolah ditambah dan sebagainya. Guru senantiasa berusaha mewujudkan suasana dengan penuh canda dan tawa.
Beragam permainan pada usia dini dilakukan anak-anak walaupun disadari banyak anak-anak yang paham akan permainan namun tidak mampu menyatakannya dalam bentuk-bentuk fisik. Misalkan pada permainan kelereng anak-anak sudah mampu menghitung namun anak-anak belum mampu menuliskannya. Permainan yang dilakukan anak-anak sehari-hari dapat dirasakan merupakan suatu ajaran dan pendidikan. Ajaran dan pendidikan yang diberikan dari kawan-kawan tanpa disadari telah mampu meningkatkan kemampuan anak-anak untuk mengenali segala jenis benda baik benda fisik maupun abstrak yang ada di sekelilingnya.
Pemerintah telah mengambil kebijaksanaan untuk lebih fokus pada peningkatan mutu dan akses pada pendidikan dasar. Pendidikan dasar langkah awal untuk menggali pengetahuan dan teknologi secara lebih mendalam. Pendidikan TK dan SD diberi perhatian khusus dengan keyakinan bahwa bila dasar-dasar pendidikan sudah teraktualisasi di tengah-tengah masyarakat dengan baik maka sudah tentu generasi muda bangsa akan lebih dapat berkompetisi dan sekaligus mampu berkarya di tengah-tengah masyarakat dan memiliki daya saing yang tinggi. Generasi muda yang berdaya saing akan mampu meningkatkan derajat bangsa di mata bangsa-bangsa lainnya.
Pelajaran berhitung merupakan salah satu pelajaran dasar bagi pemahaman bidang-bidang pelajaran lainnya. Dengan kehadiran teknologi komputer khususnya di bidang multimedia sudah tentu dapat dijadikan sarana untuk merancang aplikasi yang diharapkan dapat membantu anak-anak menghitung angka-angka dasar mulai dari 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20 dengan penuh canda dan tawa namun tidak mengurangi kemampuan nalar anak itu sendiri.
Hingga usia 6 tahun anak-anak lebih senang diajak untuk bermain dan berimajinasi. Pada usia tersebut anak masih butuh motiviasi dan dorongan dari para orang tua untuk memahami keadaan yang sebenarnya. Rasionalitas anak pada usia ini masih sangat pendek. Intinya setiap anak pada usia ini butuh bermain dan bermain dan tetap dalam bimbingan orang tua.

Tabel Bilangan dan Nama Bilangan 1 s.d 20

Bilangan Nama Bilangan
0 Nol
1 Satu
2 Dua
3 Tiga
4 Empat
5 Lima
6 Enam
7 Tujuh
8 Delapan
9 Sembilan
10 Sepuluh
11 Sebelas
12 Dua Belas
13 Tiga Belas
14 Empat Belas
15 Lima Belas
16 Enam Belas
17 Tuju Belas
18 Delapan Belas
19 Sembilan Belas
20 Dua Puluh

Tujuan dari perancangan aplikasi adalah:
– anak-anak mampu menghapalkan nama bilangan 1 s.d 20
– anak-anak mampu menuliskan bilangan 1 s.d 20
– anak-anak mampu mentrasformasi obyek ke dalam bilangan 1.s.d 20


Pernyataan Array

13 Juni 2009

Untuk memperoleh informasi dari sekumpulan data dapat dilakukan dengan metode statistik deskriptif. Informasi dari kumpulan data yang diinginkan antara lain:
-jumlah
-rata-rata
-nilai tengah
-minimum
-maksimum
-modus

Antar muka
antar muka

Implementasi

Private Sub cboUrut_Click()
Dim N As Byte
N = lstNilai.ListCount
If cboUrut.ListIndex = 0 Then
For I = 0 To N – 1
For J = I + 1 To N – 1
If (lstNilai.List(I) > lstNilai.List(J)) Then
Temp = lstNilai.List(J)
lstNilai.List(J) = lstNilai.List(I)
lstNilai.List(I) = Temp
End If
Next J
Next I
Else
For I = 0 To N – 1
For J = I + 1 To N – 1
If (lstNilai.List(I) Maks) Then
Maks = lstNilai.List(I)
End If
If (lstNilai.List(I) Sem(J)) Then
Temp = Sem(J)
Sem(J) = Sem(I)
Sem(I) = Temp
End If
Next J
Next I

K = -1
For I = 0 To Cacah – 1
If Sem(I) 0 Then
K = K + 1
Nsem(K) = Sem(I)
For J = I + 1 To Cacah – 1
If Sem(I) = Sem(J) Then
Frek(I) = Frek(I) + 1
Sem(J) = 0
End If
Next J
End If
Next I

Maks = Frek(1)
For I = 1 To K
If Frek(I) >= Maks Then
Maks = Frek(I)
Pos = I
End If
Next I

Modus(0) = Sem(Pos)
S = 0
W = Pos
‘Cari Modus Yang Lain
For I = 1 To K
If Pos I Then
If Frek(I) = Modus(0) Then
S = S + 1
Modus(S) = Sem(S)
End If
End If
Next I

txtModus.Text = “”
For I = 0 To S
txtModus.Text = txtModus.Text + ” ” + Str(Modus(I))
Next I
End Sub

Private Sub cmdTambah_Click()
If txtBaru.Text “” Then
lstNilai.AddItem (txtBaru.Text)
Else
MsgBox (“Data Nilai Kosong”)
End If
cmdTambah.Enabled = False
cmdBaru.Enabled = True
txtBaru.Text = “”
txtBaru.Enabled = False
End Sub

Private Sub cmdTutup_Click()
End
End Sub

Private Sub Combo1_Click()

End Sub

Private Sub Form_Load()
‘Inisialisasi nilai
lstNilai.Clear
txtBaru.Text = “”
txtBaru.Enabled = False
txtJumlah.Text = “”
txtRata.Text = “”
txtMin.Text = “”
txtMaks.Text = “”
txtModus.Text = “”

‘Masukkan Nilai Siswa Mula-Mula
lstNilai.List(0) = 8
lstNilai.List(1) = 9
lstNilai.List(2) = 6
lstNilai.List(3) = 9

‘Non Akfitkan Tombol
cmdTambah.Enabled = False
cmdHapus.Enabled = False
cmdEdit.Enabled = False
cmdBatal.Enabled = False

‘Non Aktifkan Isian Statistik
txtJumlah.Enabled = False
txtRata.Enabled = False
txtMean.Enabled = False
txtMin.Enabled = False
txtMaks.Enabled = False
txtModus.Enabled = False
End Sub

Private Sub lstNilai_Click()
txtBaru.Text = lstNilai.List(lstNilai.ListIndex)
cmdEdit.Enabled = True
End Sub

Seperti apa proses pengerjaan dari program di atas oleh Visual Basic? Visual Basic merupakan bahasa pemrograman berorientasi objek (object oriented language). Visual basic menyediakan beragam jenis objek yang dapat digunakan dalam perancangan suatu aplikasi. Ciri pemrograman berorientasi objek dimana setiap objek dapat diwariskan (inheritance), diubah bentuknya (polymorphism), dan kodenya tidak kelihatan (encapsulated). Objek dapat menerima kejadian (event) baik dari pengguna maupun dari sistem yang lain. Kejadian yang diterima objek diterjemahkan kedalam suatu metode (fungsi atau prosedur).
Form merupakan salah satu objek yang digunakan sebagai tempat merancang antar muka sistem. Pada saat kita menjalankan suatu aplikasi (dengan menekan tombol F5 atau menu Run | Run) maka otomatis Objek form yang pertama kali dijalankan baik event maupun methodnya. Terdapat beragam event dan method dari objek form, namun yang penting diperhatikan bahwa ada beberapa event dan method yang harus dipahami dengan benar seperti event Form_Load, Form_Activate, dan sebagainya.
Pada saat ditekan sistem dijalankan (execute) maka event Form_Load yang akan dikerjakan pertama kali sehingga pada event ini cocok dimasukkan kode sebagai inisialisasi nilai dari objek-objek yang terdapat di form.

Private Sub Form_Load()
‘Inisialisasi nilai
lstNilai.Clear
txtBaru.Text = “”
txtBaru.Enabled = False
txtJumlah.Text = “”
txtRata.Text = “”
txtMin.Text = “”
txtMaks.Text = “”
txtModus.Text = “”

‘Masukkan Nilai Siswa Mula-Mula
lstNilai.List(0) = 8
lstNilai.List(1) = 9
lstNilai.List(2) = 6
lstNilai.List(3) = 9

‘Non Akfitkan Tombol
cmdTambah.Enabled = False
cmdHapus.Enabled = False
cmdEdit.Enabled = False
cmdBatal.Enabled = False

‘Non Aktifkan Isian Statistik
txtJumlah.Enabled = False
txtRata.Enabled = False
txtMean.Enabled = False
txtMin.Enabled = False
txtMaks.Enabled = False
txtModus.Enabled = False
End Sub

Penting diingat bahwa bila tidak ditemukan pernyataan bersyarat (branching statement) atau pernyataan berulang (looping statement) maka pengerjaan pernyataan akan dilakukan secara berurutan (sequential statement). Seperti pada event Form_Load pengerjaannya akan dilakukan secara berurutan mulai dari pernyataan-1, pernyataan-2, pernyataan-3, hingga pernyataan terakhir.
1. LstNilai.Clear ‘merupakan perintah untuk membersihkan nilai pada objek LstNilai. Clear merupakan metode yang sudah didefenisikan pada LstNilai.
2. txtBaru.text=”” ‘ merupakan perintah untuk memberi nilai string kosong pada properti text dari objek txtBaru. Dari namanya berarti nilai yang bisa diberi ke properti ini adalah himpunan karakter (string). Setiap string di VB harus diapit oleh tanda kutip ganda (double quote)
3. txtBaru.enabled=false ‘merupakan perintah untuk menonaktifkan interaksi antara pemakai dengan objek. Properti enable dari objek Text hanya menerima nilai Boolean, yaitu True atau False.
4. dst

Running
-permulaan aplikasi
running-1

-menambah data nilai
tambah data

-deskriptif statistik
deskriptif statistik

-mengurutkan data
menaik