Grafik Sinus

1 Juni 2009

Grafik sinus horizontal dapat digambarkan seperti berikut ini

          *                            *
      *      *                     *    *
  *            *                 *        *
*                 *            *            *
                      *       *                  
                        *   *                   
                           *                       

Sedangkan grafik sinus vertikal dapat digambarkan seperti berikut:

                        *
                     *
                   *
                  *
                   *
                      *
                         *
                             *
                                *
                                  *
                                *
                             *
                          *

Menebak Angka Acak

1 Juni 2009

Perancangan program menebak suatu angka tunggal merupakan salah satu implementasi dari dasar-dasar pemrograman komputer. Angka yang ditebak umumnya merupakan suatu angka yang dibangkitkan sistem secara acak. Angka acak tersebut selanjutnya diminta ditebak oleh pengguna program. Umumnya juga dalam permainan ini penebak akan diberi jatah waktu atau cacah tebakan. Bila salah satu dari kondisi tersebut dipenuhi maka penebak dapat saja menerima hadiah atau lanjut ke tebakan selanjutnya. Pengguna akan diberi peringatan bila tebakan tidak sesuai dengan harapan.

Bahasa pemrograman Visual Basic memungkinkan membangkitkan suatu angka acak dengan menggunakan fungsi rnd(). Fungsi rnd() akan membangkitkan bilangan antara 0 dan 1. Sehingga bila kita menginginkan untuk mendapatkan bilangan bulat maka hasil dari fungsi rnd() tersebut harus kita kalikan dengan 10, 100, 100 dan seterusnya. Misalkan terdapat bilangan acak 0,3456, untuk memperoleh satuan, puluhan, ratusan atau ribuan dapat dilakukan dengan cara:
0.3456 * 10 = 3,456
0.3456 * 100 = 34,56
0.3456 * 1000 = 345,6
0.3456 * 10000 = 3456

Algoritma:
1. Bangkitkan suatu bilangan acak, Mis X
2. Tebak Bilangan Acak Tersebut, Mis A
3. Lakukan Pengujian
Apakah A=X, Jika Ya berarti Tebakan Berhasil dan program berhenti
Apakah A>X, Jika Ya berarti Tebakan Lebih Besar dari Bilangan Acak
Apakah A<X, Jika Ya berarti Tebakan Lebih Kecil dari Bilangan Acak
4. Selesai

Private Sub Form_Activate()
  Dim X As Integer
  Dim A, C As Byte
  Randomize (100) 'Bangkitkan bibit bilangan Acak
  A = Round(Rnd() * 100, 0) 'Bilangan Antara 1 s.d 99
  CTebak = 0 'Cacah Banyak Tebakan
 10:
  X = Val(InputBox("Tebakan Anda "))
  CTebak = CTebak + 1
  Cls 'Bersihkan Form
  Print "Anda Telah Menebak"; CTebak; " Kali"
  If A = X Then
     MsgBox ("Tebakan Anda Tepat")
     End 'Program Berhenti
  ElseIf (X < A) Then
     MsgBox ("Angka Terlalu Kecil")
     GoTo 10
  Else
     MsgBox ("Angka Terlalu Besar")
     GoTo 10
  End If
 End Sub

Faktorial dengan iterasi

1 Juni 2009

Secara matematika diketahui bahwa:
0!=1
1!=1*(1-1)!
= 1*0
= 1 * 1
= 1

2! = 2*(2-1)!*(2-2)!
= 2*1!*0!
= 2*1*1
= 2

1 adalah identitas pada perkalian. Setiap bilangan yang dikalikan dengan 1 hasilnya adalah bilangan itu sendiri.
0 adalah identitas pada perjumlahan. Setiap bilangan yang dijumlahkan dengan 0 hasilnya adalah bilangan itu sendiri.

sehingga dapat didefenisikan bahwa:

n! = n*(n-1)!*(n-2)!*..*(n-n)!

Pada bahasan kali ini akan dijelaskan penyelesaian faktorial dengan menggunakan iterasi (perulangan). Misalkan akan dicari 5! sehingga kita dapat menyelesaikannya dengan cara:
5! = 5*(5-1)!*(5-2)!*(5-3)!*(5-4)!*(5-5)!
= 5*4*3*2*1*0
= 120

Algoritma
0. Mulai
1. Deklarasikan faktorial dan hasil faktorial
2. Inisialisasi Faktorial=5, Hasil=1
3. Ulangi I mulai dari 1 sampai dengan faktorial
Hasil=Hasil*I
4. Ulangi ke langkah 3
5. Cetak Hasil
5. Selesai

Implementasi

Private Sub Form_Activate()
  Dim Hasil as Long
  Dim Faktorial,I as Byte
  Faktorial=5
  Hasil=1
  For I = 1 To Faktorial Step 1
    Hasil=Hasil * I
  Next I
  Print Hasil
End Sub

Operasi penjumlahan pada matrik

1 Juni 2009

Terdapat beragam operasi pada matrik seperti:
– penjumlahan
– pengurangan
– perkalian
– transpose
– inverse
– dan sebagainya

pada bahasan kali ini akan dijelaskan tentang penjumlahan matrik.

A(m,n) disebut sebagai matrik A dengan baris m dan kolom n.

Pada posisi baris dan kolom dapat diletakkan elemen matrik. Sebagai contoh pada baris ke-1 dan kolom ke-1 ditulis A(1,1) dapat diberikan suatu nilai. Ilustrasi dari elemen-elemen matrik pada matrik A(3,3) adalah:

A1,1    A1,2     A1,3
A2,1    A2,2     A2,3
A3,1    A3,2     A3,3

Pada contoh di atas bahwa terdapat matrik A(3,3) yang artinya matrik A terdiri atas 3 baris dan 3 kolom.

Sebagai contoh elemen-elemen matrik A(3,3):

2   4   5
6   7   8
9  10 11

Untuk menjumlahkan dua buah matrik dapat dituliskan seperti berikut:
C= A + B, artinya bahwa matrik A ditambah matrik B hasilnya adalah matrik C

Pada penjelasan sebelumnya disebutkan bahwa setiap matrik memiliki baris dan kolom sehingga bentuk penjumlahan diatas dapat kita dituliskan menjadi:
C(m,n) = A(m,n) + B(m,n)
dimana m adalah cacah baris matrik
n adalah cacah kolom matrik

Dalam penjumlahan dua buah atau banyak matrik bahwa banyak baris dan kolom matrik yang akan dijumlahkan harus sama.

Sebagai contoh terdapat matrik A(2,2) dan B(2,2) seperti di bawah ini:

Matrik A
2  3        
4  2
Matrik B
5 6
7 8

Perjumlahan matrik A dan B adalah

Matrik A     Matrik B
2  3           5   6
4  2           7   8

C(1,1) = A(1,1)+B(1,1)
= 2 + 5
= 7
C(1,2) = A(1,2) + B(1,2)
= 3 + 6
= 9
dan seterusnya

Implementasi matrik dalam bahasa pemrograman dapat kita lakukan dengan menggunakan Array.

Misalkan terdapat matrik A(2,2) yang elemen-elemenya adalah bilangan bulat, maka deklarasi matrik A pada visual basic dapat dilakukan seperti berikut:

Dim A(2,2) As Byte

Deklarasi di atas menyatakan bahwa terdapat empat pengenal seperti berikut:
A(1,1)
A(1,2)
A(2,1)
A(2,2)

Algoritma penjumlahan dua buah matrik
0. Mulai
1. Tentukan matrik A dan B
2. Ulangi I mulai dari 1 sampai dengan banyak baris matrik A
3. Ulangi J mulai dari 1 sampai dengan banyak kolom matrik A
4. Matrik C = Matrik A + Matrik B
5. Ulangi J
6. Ulangi I
7. Selesai

Private Sub Form_Activate()
  Dim I,J As Byte
  Dim A(2,2),B(2,2),C(2,2) As Byte
  A(1,1)=2: A(1,2)=3:A(2,1)=4:A(2,2)=2
  B(1,1)=5:B(1,2)=6:B(2,1)=7:B(2,2)=8
 
 'Jumlahkan Matrik A dan B
  For I = 1 To 2 Step 1
    For J = 1 To 2 Step 1
     C(I,J)=A(I,J)+B(I,J)
    Next J
  Next I

 'Cetak Matrik C 
  For I = 1 To 2 Step 1
    For J = 1 To 2 Step 1
     Print C(I,J);
    Next J
     Print
  Next I
End Sub