28 Sept 2012

Membatasi Jumlah Record di Crystal Report 8.5


بِسْــــــــــــــــمِ اﷲِالرَّحْمَنِ اارَّحِيم

Misalkan ada laporan yang dibuat dgn Crystal Report yang datanya ditampilkan seperti dibawah ini
klik buka:

record yang ditampilkan itu lebih dari 10 baris, nah kasusnya seperti ini :
saya mau supaya tiap halaman report hanya menampilkan 10 baris record aja. Berikut ini langkah" nya

1. Dari design crystal report klik kanan tulisan details dan pilih Format Section... seperti gambar dibawah :
klik buka:

2. beri tanda centang pada checkbox New Page After lalu klik logo disebelahnya seperti tampak pada
    gambar dibawah ini :
klik buka:

3. Nah setelah itu maka akan ada penampakan formula editor, ketikkan kodenya seperti gambar di bawah :
klik buka:

Gambar diatas berati, akan menampilkan 10 baris record tiap halamanya, dan setelah
dijalankan maka report akan tampil seperti gambar dibawah ini :
klik buka:

coba anda perhatikan, recordnya sudah berubah menjadi 10 record saja.
kalau tidak percaya, hitung aja sendiri


Menampilkan Data Berdasarkan Tanggal


بِسْــــــــــــــــمِ اﷲِالرَّحْمَنِ اارَّحِيم

salam hangat sobat blogger....

kali ini saya akan memposting cara menampilkan data dari Crystal report 8.5 ke Visual basic 6.0  berdasarkan tanggal

source code :
report.RecordSelectionFormula = "{Jurnal.tgljurnal} IN Date(" & Format
(Form2.dtpitcher1.Value, "yyyy,mm,dd") & ") TO Date(" & Format
(Form2.dtpitcher2.Value, "yyyy,mm,dd") & ")"
tampilan di VB 6.0


Perhatikan kode diatas, pada waktu commandbutton di klik, maka vb akan mengirimkan nilai tanggal dtpitcher1 dan dtpitcher2 sebagai kriteria dalam menampilkan data di crystal report. Pada contoh diatas, data jurnal yang akan ditampilkan adalah dari tgl 1 januari 2009 sampai 31 januari 2009

Mnecetak symbol * dengan fungsi for


بِسْــــــــــــــــمِ اﷲِالرَّحْمَنِ اارَّحِيم

kali ini saya akan membahas bagaimana mencetak * dengan format manipulasi input output dan penggunaan for untuk mencetak.

Permasalahan :
bagaimana kita ingin menampilkan output seperti
* * * * * *
* * * * *
* * * *
* * *
* *
*

algoritma :
1. mendefinisikan konstanta maxs sebagai batas / syarat perulangan
2. Deklarsai variabel baris dan kolom untuk melakukan perulangan sebagai dasar atau inisialisasi awal untuk melakukan perulangan.
3. Perulangan baris dengan inisialisasi awal baris = 0; syarat perulangan baris <=max; dan step perulangan baris+1
4. Dalam perulangan baris terdapat perulangan kolom dengan inisialisasi awal kolom=0; syarat perulangan kolom<=maxs; dan step perulangan kolom+1.
5. proses mencetak dilakukan dalam perulangan kolom dan melakukan Seleksi dengan menggunakan IF apakah kolom mod 2 =1, jika benar maka cetak *, dan jika salah berikan spasi untuk jarak bintang.
6. apabila setelah melakukan perulangan kolom, mulai lagi dengan baris berikutnya.

Source Code :  

klik buka:
klik gambar untuk memperjelas


Output Program :


Penjelasan :
1. #include <iostream.h> : baris merupakan baris deklarasi header iostream.h yang berfungsi untuk penggunaan fungsi input dan output stream yaitu printf dan scanf
2. #include <conio.h> : berfungsi untuk menampilkan fungsi getch().
3. #include <iomanip.h> : baris program ini untuk menggunakan fungsi manipulasi input dan output
4. #define max 10 : baris ini merupakan pendeklarasian konstanta max = 10.
5. int kolom,baris; : baris ini merupakan deklarasi variabel kolom dan baris yang akan digunakan untuk mengontrol perulangan.
6. clrscr (); : baris program ini merupakan fungsi dari file header conio.h yang berfungsi untuk membersihkan layar ”clearscreen”.
7. baris program diatas merupakan baris perulangan for bersarang yang akan berfungsi untuk mencetak * seperti output diatas misalnya :
* * * * * *
* * * * *
* * * *
* * *
* *
*
Ilustrasi 
Step I untuk perulangan baris
Nilai awal baris = 0 dan untuk kondisi batas perulangan baris <=maxs yaitu 10 sedangkan step perulangan satu. Apabila kondisi perulangan benar maka perulangan akan dijalankan. Dan akan masuk pada perulangan kedua yaitu untuk mencetak kolom, catatan : ”proses mencetak dilakukan oleh perulangan kolom dan baris hanya berfungsi untuk perpindahan baris, akan dimulai dari proses pencetakan kolom dengan perulangan dan apabila sudah selesai maka akan dilakukan perulangan untuk memindahkan baris. sedangkan if(klm%2 = 1) berfungsi untuk mengecek apakah kondisi kolom mod(sisa hasil pembagian) 2 sama dengan 1 apabila benar maka cetak * dan apabila salah memberikan spasi atau jarak antara * setelah perulangan kolom ada sintaks cout << endl berfungsi untuk baris baru(enter)”.
Program diatas bisa lebih sederhana dan dapat dimodifikasi sesuai dengan kita ingin menginputkan berapa baris dan bisa juga menghasilkan piramida, atau sebaliknya

27 Sept 2012

Membuat form agar tidak bisa Maximize di VB 6.0


بِسْــــــــــــــــمِ اﷲِالرَّحْمَنِ اارَّحِيم

Sebelumnya saya telah memposting cara membuat form agar tidak bisa di resize, kali ini saya akan memposting cara membuat form agar tidak bisa Maximize

Caranya :

1. Buat 1 project Standard.EXE dengan :
  • 1 Form
2. Copy source code berikut pada Form : 
Private Const GWL_STYLE = (-16)
Private Const WS_MAXIMIZEBOX = &H10000

Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" _
        (ByVal hwnd As Long, ByVal nIndex As Long, _
        ByVal dwNewLong As Long) As Long

Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" _
        (ByVal hwnd As Long, ByVal nIndex As Long) As Long

Private Sub Form_Load()
Dim lStyle As Long

    'disable MAXIMIZE button
    lStyle = GetWindowLong(Me.hwnd, GWL_STYLE)
    lStyle = lStyle And Not WS_MAXIMIZEBOX
    Call SetWindowLong(Me.hwnd, GWL_STYLE, lStyle)
End Sub
 3. Jalankan Program

Membuat form agar tidak bisa resize di VB 6.0


بِسْــــــــــــــــمِ اﷲِالرَّحْمَنِ اارَّحِيم

Source code berikut untuk membuat form tidak bisa di resize pada Visual Basic.

ikuti langkah-langkah berikut :

1. Buat 1 project Standard.EXE dengan :
  • 1 Form
2. Copy source code berikut pada Form :
Private Const GWL_STYLE = (-16)
Private Const WS_THICKFRAME = &H40000

Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" _
        (ByVal hwnd As Long, ByVal nIndex As Long, _
        ByVal dwNewLong As Long) As Long

Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" _
        (ByVal hwnd As Long, ByVal nIndex As Long) As Long

Private Sub Form_Load()
Dim lStyle As Long

    lStyle = GetWindowLong(Me.hwnd, GWL_STYLE)
    lStyle = lStyle And Not WS_THICKFRAME
    Call SetWindowLong(Me.hwnd, GWL_STYLE, lStyle)
End Sub
3. Jalankan Program

Membuat Text Berkedip di VB 6.0


بِسْــــــــــــــــمِ اﷲِالرَّحْمَنِ اارَّحِيم

Source code berikut untuk membuat tulisan pada label (teks) berkedip berwarna-warni.

caranya :

1. Buat 1 project Standard.EXE dengan :
  • 1 Form
  • 1 Label
  • 1 Timer
2. Copy source code berikut pada Form : 
 Dim i As Long
Dim merah, hijau, biru As Integer

Private Sub Form_Load()
  i = 0     'Inisialisasi detik
  Timer1.Interval = 100   'Kalau 1000 biasanya lompat 1 detik
  Label1.Caption = "Ini contoh tulisan kelap-kelip"
End Sub

Private Sub Timer1_Timer()
  i = i + 1
  If i = 1000000 Then i = 0 'Supaya tdk overflow, dsb...
  merah = Int(255 * Rnd)    'Bangkitkan angka random untuk merah
  hijau = Int(255 * Rnd)    'Bangkitkan angka random untuk hijau
  biru = Int(255 * Rnd)     'Bangkitkan angka random untuk biru
  Label1.ForeColor = RGB(merah, hijau, biru)   'Campur tiga warna
  If i Mod 2 = 0 Then       'Jika counter habis dibagi 2
     Label1.Visible = True  'Tampilkan label
  Else                      'Jika counter tidak habis dibagi 2
     Label1.Visible = False 'Sembunyikan label
  End If                    'Akhir pemeriksaan
End Sub
3. Jalankan program dan lihat hasilnya

Fungsi String pada vb 6.0


بِسْــــــــــــــــمِ اﷲِالرَّحْمَنِ اارَّحِيم

Fungsi-fungsi VB 6 di bawah ini digunakan untuk mengolah data string.

Left : mengambil n karakter di sebelah kiri suatu string
karakter = Left(“abcdef”,2) ‘karakter = “ab”

Right : mengambil n karakter di sebelah kanan suatu string
karakter = Right(“abcdef”,2) ‘karakter = “ef”


Trim : menghilangkan spasi kosong di awal dan akhir suatu string
karakter = Trim(“ abc def ”) ‘karakter = “abc def”

Ltrim : menghilangkan spasi kosong di awal suatu string
MyStr = Ltrim(AnyString)

Rtrim : menghilangkan spasi kosong di akhir suatu string
MyStr = Rtrim(AnyString)

Ucase : mengubah suatu string menjadi huruf besar semua
MyStr = UCase(AnyString)

Lcase : mengubah suatu string menjadi huruf kecil semua
MyStr = LCase(AnyString)

Mid : mengambil n karakter dari suatu posisi yang ditetapkan
MyStr = Mid(“abcdefghij”, 3, 4) ‘hasil “cdef”

Len : menghitung jumlah karakter yang membentuk suatu string
MyStr = Len(“abcdef”) ‘hasil=6

LSet : menempatkan string di dalam string yang lain, di sebelah kiri
MyStr = “0123456789”
Lset MyStr = “<-Left” ‘hasil “<-Left “

RSet : menempatkan string di dalam string yang lain, di sebelah kanan
MyStr = “0123456789”
Rset MyStr = “>-Right” ‘hasil “ >-Right“

Format : mengatur string sehingga terformat sesuai yang ditentukan
A$ = Format (5455.4, “##,##0.00”) ‘A$ = “5,459.40”
A$ = Format (334.9, “####.##”) ‘A$ = “334.9”
A$ = Format (5, “0.00%”) ‘A$ = “500.00%”
A$ = Format (“HELLO”, “<”) ‘A$ = “hello”
A$ = Format (“This is”, “>”) ‘A$ = “THIS IS”

String: membuat string yang berisi sejumlah karakter yang digandakan
A$ = String (5, “*”) ‘A$ = “*****”

Chr: menghasilkan karakter yang terwakili oleh suatu angka tertentu
A$ = Chr (65) ‘A$ = A
A$ = Chr (97) ‘A$ = a
A$ = Chr (62) ‘A$ = >

Asc: menghasilkan angka ASCII dari suatu karakter tunggal
MyNumber = Asc(‘A’) ‘’hasilnya 65
MyNumber = Asc(‘a’) ‘’hasilnya 97
MyNumber = Asc(‘Apple’) ‘’hasilnya 65

Space: menghasilkan ruang kosong sebanyak n karakter
MyStr = Space(10) ‘buat string 10 spasi
MyStr = “Hello” & Space(10) & “World” ‘menyisipkan 10 spasi diantara kata Hello World

InStr: menentukan apakah string tertentu berada pada string lain
Dim CariString, CariChar, MyPos
CariString = ‘XXpXXpXXPXXP” ‘String yang dianalis
CariChar = “P” ‘String yang dicari “P”
‘mencari mulai dari kolom ke-4, hasilnya 6
MyPos = InStr(4, CariString, CariChar, 1)
‘mencari mulai dari kolom ke-1, hasilnya 9
MyPos = InStr(1, CariString, CariChar, 0)
MyPos = InStr(CariString, CariChar) ‘hasilnya 9
MyPos = InStr(1, SearchString, “W”) ‘hasilnya 0

InStrRev: cari posisi string dalam string yang lain, mulai dari akhir
i = InStrRev(StringCheck, StringMatch[, start[, compare]])

StrComp: membandingkan dua variabel string

StrComp(string1, string2 [, compare] )

JikaHasilnya
String1 < String2-1
string1= string 20
string1> string 21
string1atau string 2 = NullNull

Dim MyStr1, MyStr2, MyComp
MyStr1 = “ABCD” : MyStr2 = “abcd” ‘nilai awal
A = StrComp(MyStr1, MyStr2, 1) ‘A = 0
A = StrComp(MyStr1, MyStr2, 0) ‘A = -1
A = StrComp(MyStr2, MyStr1) ‘A = 1

StrConv: mengubah huruf besar atau kecil suatu karakter string
A$ = StrConv(“Semua Besar”, 1) ‘A$ = “SEMUA BESAR”
A$ = StrConv(“Semua Kecil”, 2) ‘A$ = “semua kecil”
A$ = StrConv(“pertama BESAR”, 3) ‘A$ = “Pertama Besar”

StrReverse: mengubah urutan karakter suatu string
A$ = StrReverse(“12345678”) ‘A$ = “87654321”
A$ = StrReverse(“abcdefg”) ‘A$ = “gfedcba”

Replace: menggantikan string dari kelompok string
Replace(expression, find, replace[, start[, count[, compare]]])

FormatCurrency: string memakai format currency yang ditetapkan
A$ = FormatCurrency(12000, 1) ‘A$ = “$12,000.0”
A$ = FormatCurrency(12000, 2) ‘A$ = “$12,000.00”
Catatan, untuk mengubah mata uang, gunakan Regional Settings Currency dari sistem operasi Windows

FormatDateTime: menghasilkan ekspresi tanggal dan waktu
A$ = FormatDateTime(Now) ‘hasilnya “10/8/02 11:15:46 AM”
A$ = FormatDateTime(Now, vbLongDate) ‘hasilnya “Tuesday, March 02, 2008”
A$ = FormatDateTime(“3/2/99”, vbShortDate) ‘hasilnya “3/2/99”
A$ = FormatDateTime(“3/2/99”, vbLongDate) ‘hasilnya “12:00:00 AM”

FormatNumber: membuat format bilangan sesuai option yang diberikan
FormatNumber(var1, 2)

FormatPerCent: membuat format bilangan dalam prosentase
A$ = FormatPerCent(0.1255, 2) ‘A$ = 12.55%
A$ = FormatPerCent(0.12555) ‘A$ = 12.56%
A$ = FormatPerCent(12.55, 2) ‘A$ = 1,255.00%
A$ = FormatPerCent(12.55) ‘A$ = 1,255.00%

Koneksi Database Access di Vb 6.0


بِسْــــــــــــــــمِ اﷲِالرَّحْمَنِ اارَّحِيم

Source code berikut untuk mengoneksikan VB 6 dengan database Access. Agar aplikasi bisa di running dimana saja, dengan menggunakan fungsi App.Path, dan database Access disimpan dalam satu folder yang sama dengan project VB nya.

caranya :
1. Buat sebuah module, kemudian masukkan source code berikut :
Public Conn As New ADODB.Connection

Public Sub koneksi()
On Error GoTo konekErr

If Conn.State = 1 Then Conn.Close

'sesuaikan database .mdb nya dengan database anda
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + App.Path + "\db_tes.mdb;Persist Security Info=False"
Exit Sub

konekErr:
    MsgBox "Gagal menghubungkan ke Database ! Kesalahan pada : " & Err.Description, vbCritical, "Peringatan"
End Sub
2. Untuk penggunaannya dengan Adodc dan DataGrid, seperti contoh berikut :
Private Sub Form_Load()
koneksi 'pemanggilan koneksi database

Adodc1.ConnectionString = Conn.ConnectionString
Adodc1.RecordSource = "select * from contoh"
Adodc1.Refresh
Set DataGrid1.DataSource = Adodc1
End Sub
3. Untuk lebih jelasnya, download source code berikut
4. selesai...

Menginput data dengan TrueDBGrid


بِسْــــــــــــــــمِ اﷲِالرَّحْمَنِ اارَّحِيم

Udah jam 2 malam nie...
seperti janji saya pada postingan yang lalu saya akan memposting cara menginput data dengan TrueDBGrid

oke langsung saja...

Untuk bisa menggunakan Truedatagrid sebagai objek yang bisa diinput maka terlebih dulu buat referensi seperti gambar dibawah ini :


Dari gambar diatas beri tanda centang ComponentOne XArrayDB 8.0 Object
Setelah itu baru deklarasikan object XArray tersebut seperti kode selengkapnya dibawah ini


Dim arr As New XArrayDB
Dim conn As New Connection
Dim rs As New Recordset


Private Sub cmdAdd_Click()
    '---menghapus semua nilai array di memory
    arr.Clear
    TDBGrid1.ReBind
End Sub

Private Sub cmdSave_Click()
   For iRow = arr.LowerBound(1) To arr.UpperBound(1)
   TDBGrid1.Row = 0
      If arr(i, 0) <> "" Then
         rs.AddNew
         rs.Fields("KODE") = arr(iRow, 0)
         rs.Fields("NAMA") = arr(iRow, 1)
         rs.Fields("ALAMAT") = arr(iRow, 2)
         rs.Update
      End If
   Next
End Sub

Private Sub Form_Load()
'---membuat 2 baris, 2 kolom
    arr.ReDim 0, 1, 0, 2
    Set TDBGrid1.Array = arr

    TDBGrid1.Columns(0).Caption = "KODE"
    TDBGrid1.Columns(1).Caption = "NAMA"
    TDBGrid1.Columns(2).Caption = "ALAMAT"

    conn.Provider = "Microsoft.Jet.OLEDB.4.0"
    conn.Open App.Path & "\db.mdb"

     rs.CursorLocation = adUseClient
    rs.Open "SELECT * FROM Table1", conn, adOpenStatic, adLockOptimistic

End Sub
sekarang kalo kita periksa tablenya di database access hasilnya seperti gambar dibawah ini


Nah sekarang, bagaimana kalo kita tambahkan DropDown atau ComboBox pada TrueDBGrid
Silahkan tambahkan control TDBDropDown ke form
untuk mengisi data kedalam TDBDropDown perhatikan kode dibawah ini
'---tambahkan kode dibawah ini di form load
rs2.CursorLocation = adUseClient
rs2.Open "SELECT kota FROM Table2", conn, adOpenStatic, adLockOptimistic


TDBDropDown1.DataSource = rs2
TDBDropDown1.Columns(0).Caption = "Asal Kota"

TDBGrid1.Columns(2).DropDown = TDBDropDown1
 dan hasilnya akan seperti dibawah ini


ok sekian dulu dari saya...
silahkan langsung dipraktekkan dan dikembangkan

Menginput Data dengan MSFlexGrid


بِسْــــــــــــــــمِ اﷲِالرَّحْمَنِ اارَّحِيم

Setelah memposting menginput data dengan DataGrid, kali ini saya akan memposting artikel tentang menginput data dengan MSFlexGrid

source code :
Dim conn As ADODB.Connection
Dim rs As ADODB.Recordset

Private Sub cmdSave_Click()
For i = 1 To MSHFlexGrid1.Rows - 1
If MSHFlexGrid1.TextMatrix(i, 0) <> "" Then
rs.AddNew
rs(0) = MSHFlexGrid1.TextMatrix(i, 0)
rs(1) = MSHFlexGrid1.TextMatrix(i, 1)
rs(2) = MSHFlexGrid1.TextMatrix(i, 2)
rs(3) = MSHFlexGrid1.TextMatrix(i, 3)
rs(4) = MSHFlexGrid1.TextMatrix(i, 4)
rs(5) = MSHFlexGrid1.TextMatrix(i, 5)
rs(6) = MSHFlexGrid1.TextMatrix(i, 6)
rs.Update
Else
Exit For
End If
Next
End Sub

Private Sub Form_Load()
With MSHFlexGrid1
.TextMatrix(0, 0) = "Kolom 1"
.TextMatrix(0, 1) = "Kolom 2"
.TextMatrix(0, 2) = "Kolom 3"
.TextMatrix(0, 3) = "Kolom 4"
.TextMatrix(0, 4) = "Kolom 5"
.TextMatrix(0, 5) = "Kolom 6"
.TextMatrix(0, 6) = "Kolom 7"
End With

Set conn = New ADODB.Connection
Set rs = New ADODB.Recordset

conn.Provider = "Microsoft.Jet.OleDB.4.0"
conn.Open App.Path & "\nwind.mdb"

rs.Open "Customers", conn, adOpenDynamic, adLockOptimistic

End Sub

Private Sub MSHFlexGrid1_KeyPress(KeyAscii As Integer)
Select Case KeyAscii
Case vbKeyReturn, vbKeyTab
'---pindah ke cell berikutnya
With MSHFlexGrid1
If .Col + 1 <= .Cols - 1 Then
.Col = .Col + 1
Else
If .Row + 1 <= .Rows - 1 Then
.Row = .Row + 1
.Col = 0
Else
.Row = 1
.Col = 0
End If
End If
End With
Case vbKeyBack
With MSHFlexGrid1
'---hapus karakter terakhir
If Len(.Text) Then
.Text = Left(.Text, Len(.Text) - 1)
End If
End With
Case Is < 32 '---selain alfabet ga bisa dimasukkin
Case Else
'---masukkan karakter ke flexgrid
MSHFlexGrid1.Text = MSHFlexGrid1.Text & Chr(KeyAscii)
End Select
End Sub
gambar hasil output :


selesay...
selanjutnya saya akan memposting bagaimana cara menginput Data dengan TrueDBGrid  :D :lol: :-)
jadi ikuti terus Blog ini ....



Menginput data dengan DataGrid


بِسْــــــــــــــــمِ اﷲِالرَّحْمَنِ اارَّحِيم

Sebenarnya di Visual basic 6.0 terdapat banyak toolbox yang dapat digunakan untuk menginput data kedalam database yaitu dengan : DataGrid, TrueDBGrid, MSFlexGrid, dll

kali ini saya akan membahas tentang menginput data dengan DataGrid

source code :
Dim conn As New Connection
Dim rsInput As New Recordset '--recordset sbg utk input
Dim rsSave As New Recordset

'---membuat recordset yg akan digunakan
'---sbg datasource dari datagrid
Private Sub CreateFields()
rsInput.Fields.Append "KODE", adVarChar, 4
rsInput.Fields.Append "NAMA", adVarChar, 15
rsInput.Fields.Append "ALAMAT", adVarChar, 25
rsInput.CursorLocation = adUseClient
rsInput.Open
Set DataGrid1.DataSource = rsInput
End Sub

'---mendesign bentuk tampilan datagrid
Private Sub FormatGrid()
DataGrid1.Columns(0).Button = True
DataGrid1.Columns(1).Button = True

With DataGrid1
.Columns(0).Caption = "Kode"
.Columns(1).Caption = "Nama"
.Columns(2).Caption = "Alamat"
End With
End Sub

Private Sub Form_Load()
conn.Provider = "microsoft.jet.oledb.4.0"
conn.Open App.Path & "\nwind.mdb"

Call CreateFields

Call FormatGrid
End Sub

'---pd saat grid diklik, buat row baru pd recordset
'---sehingga grid bisa menerima inputan
Private Sub DataGrid1_Click()
'--jika tidak dalam mode edit
If rsInput.EditMode = adEditNone Then
rsInput.AddNew '--tambahkan baris baru
Else
Exit Sub
End If
End Sub

'---utk mendetek posisi kolom, apabila pointer
'---berada pd posisi kolom ke 2 atau kolom akhir
'---maka tambahkan baris baru
Private Sub DataGrid1_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyReturn Then
If DataGrid1.Col = 2 Then
rsInput.AddNew
DataGrid1.Col = rsInput(0)
Exit Sub
End If
SendKeys "{RIGHT}"
End If
End Sub

'---inilah kode utk menyimpan semua data yg di input
'---dalam datagrid ke database
Private Sub cmdSave_Click()
rsSave.CursorLocation = adUseClient
rsSave.Open "test", conn, adOpenStatic, adLockOptimistic

rsInput.MoveFirst
For i = 0 To rsInput.RecordCount - 1
If Len(DataGrid1.Columns(0).Text) > 0 Then
rsSave.AddNew
rsSave(0) = rsInput(0)
rsSave(1) = rsInput(1)
rsSave(2) = rsInput(2)
rsSave.Update
End If
rsInput.MoveNext
Next

rsInput.Close
rsSave.Close
Set rsInput = Nothing
Set rsSave = Nothing

Call CreateFields
Call FormatGrid
End Sub

contoh outputnya seperti ini :



Import Tabel ke tabel yang lain


بِسْــــــــــــــــمِ اﷲِالرَّحْمَنِ اارَّحِيم

artikel ini bercerita tentang proses bagaimana mengimport data yang berada pada database satu(tabel) ke database yang lain(tabel lain) tanpa harus menghapus data yang sudah ada. Artinya cara ini seperti anti virus yang di update.

oke... go to TKP

1. seperti biasa, desainlah form kira" seperti gambar dibawah ini


2. ketiklah kodenya seperti dibawah ini di level General Declaration


Pada event Form Load ketiklah kodenya seperti dibawah ini

klik gambar untuk memperbesar



Dan ketik kode dibawah ini untuk menghubungkan database yg mau di transfer

klik gambar untuk memperbesar



Lalu untuk event pada List1, kodenya seperti dibawah ini gunanya untuk menampilkan semua tabel yang ada pada database yang mau ditransfer. Jadi dalam hal ini, tabelnya dipilih terlebih dahulu, baru di transfer

klik gambar untuk memperbesar



Nah ini inti dari proses mentransfer/export ke tabel

klik gambar untuk memperbesar



Lalu, ketik kode dibawah ini yang sebenarnya untuk memilih Field-field tertentu yang mau di transfer/export dengan cara meng klik tipe-tipe Header Caption dari datagrid

klik gambar untuk memperbesar



Dan terakhir, ketik kode dibawah ini untuk menampilkan data-data yang ada pada tabel yang digunakan pada aplikasi/tabel asli ke datagrid

klik gambar untuk memperbesar



Bila dijalankan maka hasilnya akan seperti penampakan dibawah ini


Klik button Database, maka akan ada penampakan seperti gambar dibawah ini


Dan hasilnya akan seperti gambar dibawah ini, semua tabel akan terlihat pada List


Apabila tiap nama tabel di klik, maka otomatis akan tampil di datagrid dan juga otomatis menjadi tabel yang terpilih untuk di transfer/export. Hasilnya seperti gambar dibawah ini :


 Setelah tabel dipilih, klik button Transfer untuk siap di transfer dan hasilnya seperti gambar dibawah ini


Apabila field-field tertentu saja yang mau di transfer/export maka klik tiap-tiap header caption dari datagrid maka setiap field yang terpilih akan masuk ke list seperti gambar dibawah ini


Dan hasilnya seperti gambar dibawah ini


seperti biasa... Catatan Kecil :

proses mentransfer ini, yang kodenya ada di button Transfer kalo ga mau menggunakan pengulangan, bisa juga diganti dengan kode seperti dibawah ini
  sql = "INSERT INTO " & namaTabel & " &" _
  SELECT * FROM [MS Access;DATABASE=" & Text1.Text & "].[" & namaTabel & "]"
  Dim cmd As New Command
  cmd.ActiveConnection = dbOriginal
  cmd.CommandType = adCmdText
  cmd.CommandText = sql
  cmd.Execute

Text1.Text adalah path/alamat lengkap dari database yang mau ditransfer/export

huuuuuuuffftt capek  euy...:-* :zzz

Mencari Bilangan Prima di VB 6.0


بِسْــــــــــــــــمِ اﷲِالرَّحْمَنِ اارَّحِيم

Program ini merupakan soal MID Test semester 3 saya.

oke langsung kita buat programnya :

1. Desain form seperti gambar dibawah ini.


 2. Masukkan Script dibawah ini di form
Dim BanyaknyaBilanganPrima, i, AngkaPrima, j As Integer
Dim Prima As Boolean

Private Sub Command1_Click()
  BanyaknyaBilanganPrima = Val(Text1.Text)
  List1.Clear
  i = 0
  AngkaPrima = 2
 
  '---buat bilangan prima sebanyak yang di masukkan di textbox
  While i < BanyaknyaBilanganPrima
  Prima = True
  For j = 2 To AngkaPrima - 1
 
  '---kalo sisa baginya=0 berati bukan bilangan prima
  If AngkaPrima Mod j = 0 Then Prima = False
 
  Next j
 
  If Prima = True Then
  List1.AddItem AngkaPrima
  i = i + 1
  End If
  AngkaPrima = AngkaPrima + 1
  Wend
End Sub
3. Hasil Output Program




Auto Number di VB 6.0


بِسْــــــــــــــــمِ اﷲِالرَّحْمَنِ اارَّحِيم

Biasanya aplikasi untuk perdagangan atau penjurnalan memerlukan id atau no urut yang sudah ditentukan.Jadi pada saat ada penambahan record baru, maka id tersebut sudah otomatis masuk dalam textbox.Nah dibawah ini ada contoh sederhana bagaimana membuat no urut yg otomatis.


Perhatikan gambar diatas, pada saat tombol New Record di klik maka otomatis akan membuat suatuno urut dgn format Kasus/Per-XXX/26022009-00001.
Angka 26022009 ini artinya 26 Februari 2009 dan 00001 adalah no urutnya.
Nah berikut ini adalah kode utk membuat nya


Info : Scriptnya bisa di download disini



Perhatikan lagi gambar diatas, pada saat tombol New Record di klik maka otomatis no urutnya
sudah berubah menjadi 00002 karena dalam tabel angka 00001 sudah ada.


Menghitung Hari dengan Datediff


بِسْــــــــــــــــمِ اﷲِالرَّحْمَنِ اارَّحِيم

Pernah suatu ketika saya ingin mencari jumlah hari, kemudian saya bertanya pada dosen saya (Kamaluddin, S.Kom) melalui Facebook dan diberilah source code berikut  dan alhamdullillah berhasil

tampilah output :


source code :
Private Sub Command1_Click()
  Label2.Caption = "Jumlah hari dari tgl " & _
  DTPicker1.Value & " sampai tgl " & _
  DTPicker2.Value & " adalah"
  txtHasil.Text = DateDiff("d", DTPicker1.Value, DTPicker2.Value)
End Sub
silahkan dipraktekkan


Menghitung Selisih Waktu


بِسْــــــــــــــــمِ اﷲِالرَّحْمَنِ اارَّحِيم

Di Visaul Basic, kita dapat membuat apapun termasuk menghitung selisih waktu/jam.
berikut gambar hasil output dan source codenya :


Private Function totalWaktu (jamAwal As Variant, jamAkhir As Variant) As String


Dim detikAkhir, detikAwal, jumlahDetik As Long

detikAwal = (Hour(jamAwal) * 3600) + (Minute(jamAwal) * 60) + (Second(jamAwal))

detikAkhir = (Hour(jamAkhir) * 3600) + (Minute(jamAkhir) * 60) + (Second(jamAkhir))

If jamAkhir < jamAwal Then
'----di hitung satu hari
jumlahDetik = 86400
Else
jumlahDetik = 0
End If

jumlahDetik = jumlahDetik + (detikAkhir - detikAwal)

totalWaktu = Format(Str(Int((Int((jumlahDetik / 3600)) Mod 24))), "00") + _
":" + Format(Str(Int((Int((jumlahDetik / 60)) Mod 60))), "00") + _
":" + Format(Str(Int((jumlahDetik Mod 60))), "00")

End Function

Private Sub Command1_Click()
Text3.Text = totalWaktu(Text1, Text2)
End Sub
sedikit catatan kecil :

1 Detik   =   Seper 60 Menit (1/60 Detik)
1 Menit  =   60 Detik
1 Jam    =   60 Menit
1 Jam    =   3.600 Detik
1 Hari    =   1.440 Menit
1 Hari    =   86.400 Detik

Form selalu di tengah layar


بِسْــــــــــــــــمِ اﷲِالرَّحْمَنِ اارَّحِيم

Terkadang dalam Visual Basic 6.0, pengaturan posisi form itu dapat di tentukan secara manual, tetapi jika sudah menggunakan MDI Form makan posisi Form tersebut selalu berubah.
maka apabila agan" ingin agar Form selalu berada di tengah layar, cara terbaik adalah melalui prosedur load dari form.
caranya sangat mudah, cukup mengetikkan script berikut di Form Load
Private sub form_load()
Left = (screen.width - width) \ 2
Top = (screen.height - height) \ 2
End Sub
hasilnya ketika program di jalankan maka formnya akan berada di tengah...
gampang kan...???

Fungsi Pecahan uang (recehan)


بِسْــــــــــــــــمِ اﷲِالرَّحْمَنِ اارَّحِيم

Banyak teman seangkatan saya menanyakan cara membuat fungsi receh, setelah menjelajah dibeberapa website/blog ketemulah script berikut :

sebelumnya perlu agan" ketahui bahwa fungsi receh hampir sama logikanya dengan fungsi terbilang (serupa tapi tak sama)...

ok langsung ke TKP :

1. buatlah sebuah modul, kemudian isikan fungsi/script di bawah ini :
Function Pecahan(Angka As Long, Index As Integer) As Integer
    Dim Angka2 As Long
    Dim NominalUang(1 To 10) As Integer

    Angka2 = Angka

        If Angka2 >= 100000 Then
            NominalUang(1) = Angka2 \ 100000
            Angka2 = Angka2 Mod 100000
        End If

        If Angka2 >= 50000 Then
            NominalUang(2) = Angka2 \ 50000
            Angka2 = Angka2 Mod 50000
        End If

        If Angka2 >= 20000 Then
            NominalUang(3) = Angka2 \ 20000
            Angka2 = Angka2 Mod 20000
        End If

        If Angka2 >= 10000 Then
            NominalUang(4) = Angka2 \ 10000
            Angka2 = Angka Mod 10000
        End If

        If Angka2 >= 5000 Then
            NominalUang(5) = Angka2 \ 5000
            Angka2 = Angka2 Mod 5000
        End If

        If Angka2 >= 1000 Then
            NominalUang(6) = Angka2 \ 1000
            Angka2 = Angka2 Mod 1000
        End If

        If Angka2 >= 500 Then
            NominalUang(7) = Angka2 \ 500
            Angka2 = Angka2 Mod 500
        End If

        If Angka2 >= 200 Then
            NominalUang(8) = Angka2 \ 200
            Angka2 = Angka2 Mod 200
        End If

        If Angka2 >= 100 Then
            NominalUang(9) = Angka2 \ 100
            Angka2 = Angka2 Mod 100
        End If

        If Angka2 >= 50 Then
            NominalUang(10) = Angka2 \ 50
            Angka2 = Angka2 Mod 100
        End If
    Pecahan = NominalUang(Index)
End Function
2. Tambahkan sebuah TextBox pada form, namai dengan txtNominal. Tambahkan pula sebuah CommandButton, ketik kode di bawah ini :
Private Sub Command1_Click()

    Dim i As Integer

    MsgBox Pecahan(CLng(Me.txtNominal), 1) & " SeratusRibuan"
    MsgBox Pecahan(CLng(Me.txtNominal), 2) & " LimaPuluhRibuan"
    MsgBox Pecahan(CLng(Me.txtNominal), 3) & " DuaPuluhRibuan"
    MsgBox Pecahan(CLng(Me.txtNominal), 4) & " SepuluhRibuan"
    MsgBox Pecahan(CLng(Me.txtNominal), 5) & " LimaRibuan"
    MsgBox Pecahan(CLng(Me.txtNominal), 6) & " Seribuan"
    MsgBox Pecahan(CLng(Me.txtNominal), 7) & " LimaRatusan"
    MsgBox Pecahan(CLng(Me.txtNominal), 8) & " DuaRatusan"
    MsgBox Pecahan(CLng(Me.txtNominal), 9) & " Seratusan"
    MsgBox Pecahan(CLng(Me.txtNominal), 10) & " LimaPuluhan"
End Sub
3. Jalankan programnya.

semoga berhasil.

Bentuk form sesuai dengan gambar


بِسْــــــــــــــــمِ اﷲِالرَّحْمَنِ اارَّحِيم

Bosan dengan tampilan form yang berbentuk persegi? Ingin mengubahnya dengan bentuk lain yang lebih dinamis? ikuti langkah-lagkah berikut !

Ubah BorderStyle form menjadi 0-None, tempatkan sebuah PictureBox, namai dengan “picMainSkin”. Tambahkan sebuah Module, ketik kode di bawah:
Declare Function DeleteObject Lib "gdi32" _
(ByVal hObject As Long) As Long

Declare Function GetPixel Lib "gdi32" _
(ByVal hDC As Long, _
ByVal X As Long, ByVal Y As Long) As Long

Declare Function CreateRectRgn Lib "gdi32" _
(ByVal x1 As Long, _
ByVal y1 As Long, _
ByVal x2 As Long, _
ByVal y2 As Long) As Long

Declare Function CombineRgn Lib "gdi32" _
(ByVal hDestRgn As Long, _
ByVal hSrcRgn1 As Long, _
ByVal hSrcRgn2 As Long, _
ByVal nCombineMode As Long) As Long
Public Declare Function _
ReleaseCapture Lib "user32" () As Long

Declare Function SetWindowRgn Lib "user32" _
(ByVal hwnd As Long, _
ByVal hRgn As Long, _
ByVal bRedraw As Boolean) As Long

Declare Function CreateRoundRectRgn Lib "gdi32" _
(ByVal x1 As Long, _
ByVal y1 As Long, _
ByVal x2 As Long, _
ByVal y2 As Long, _
ByVal X3 As Long, _
ByVal Y3 As Long) As Long

Public StartX!
Public StartY!

Public Function BentukDaerah(picSkin As PictureBox) As Long
    Dim X As Long, Y As Long
    Dim AwalGaris As Long
    Dim DaerahPenuh As Long
    Dim GarisDaerah As Long
    Dim GarisDalam As Boolean
    Dim AwalDaerah As Boolean
    Dim hDC As Long
    Dim Lebar As Long
    Dim Tinggi As Long

    hDC = picSkin.hDC
    Lebar = picSkin.Width / Screen.TwipsPerPixelX
    Tinggi = picSkin.Height / Screen.TwipsPerPixelY

    AwalDaerah = True: GarisDalam = False

    X = AwalGaris = 0
    Y = 200

    For Y = 0 To Tinggi - 1
        For X = 0 To Lebar - 1
            If GetPixel(hDC, X, Y) = vbWhite Or X = Lebar Then
                If GarisDalam Then
                    GarisDalam = False
                    GarisDaerah = CreateRectRgn(AwalGaris, Y, X, Y + 1)
                    If AwalDaerah Then
                        DaerahPenuh = GarisDaerah
                        AwalDaerah = False
                    Else
                        CombineRgn DaerahPenuh, DaerahPenuh, GarisDaerah, 2
                        DeleteObject GarisDaerah
                    End If
                End If
            Else
                If Not GarisDalam Then
                    GarisDalam = True
                    AwalGaris = X
                End If
            End If
        Next
    Next

    BentukDaerah = DaerahPenuh
End Function

Public Sub PindahDonk(ctl As Object, Button As Integer, _
X As Single, Y As Single)
    If Button = 1 Then
        ctl.Left = IIf(X &lt; StartX, ctl.Left - (StartX - X), _
        ctl.Left + (X - StartX))
        ctl.Top = IIf(Y &lt; StartY, _
        ctl.Top - (StartY - Y), ctl.Top + (Y - StartY))
    End If
End Sub
Ketikkan source code di bawah ini pada form:
Option Explicit

Private Sub cmdClose_Click()
    Unload Me
End Sub

Private Sub Form_Load()
    Dim WindowRegion As Long
    '
    With Me.picMainSkin
        .ScaleMode = 3

        .Move 0, 0
        .DrawWidth = 10

        .FillStyle = 0
        .FillColor = vbRed
        Me.picMainSkin.Circle (105, 105), 90, vbYellow

        .FillColor = vbBlue
        Me.picMainSkin.Circle (400, 105), 40, vbYellow

        .FillStyle = 1
        .ForeColor = vbYellow
        Me.picMainSkin.Line (105, 10)-(400, 60.5)
        Me.picMainSkin.Line (105, 200)-(400, 150)

        Width = .Width
        Height = .Height
    End With

    WindowRegion = BentukDaerah(Me.picMainSkin)
    SetWindowRgn Me.hwnd, WindowRegion, True

End Sub

Private Sub picMainSkin_MouseDown(Button As Integer, _
Shift As Integer, X As Single, Y As Single)
    If Button = 1 Then
        StartX = X
        StartY = Y
    End If
End Sub

Private Sub picMainSkin_MouseMove(Button As Integer, _
Shift As Integer, X As Single, Y As Single)
    PindahDonk Me, Button, X, Y
End Sub

jalankan program dan lihat hasilnya...
jangan lupa dikembangkan

Membuat PictureBox Transparant (seperti kaca) di VB 6.0


بِسْــــــــــــــــمِ اﷲِالرَّحْمَنِ اارَّحِيم

Pengertian PictureBox Transparan adalah mengatur gambar pada PictureBox, dimana gambar tersebut disesuaikan dengan gambar pada form menurut letak dan ukuran PictureBox sehingga menciptakan efek PictureBox seolah-olah transparan. Simak penjelasannya di bawah ini!
Mulailah sebuah project baru! Ubah properti Picture dari form, sesuai dengan selera! Tambahkan sebuah PictureBox, namai dengan “picTrans”!

Ketikkan kode di bawah ini:
Option Explicit

Private Sub cmdTransparan_Click()
    With Me.picTrans
        .AutoRedraw = True

        'Menghilangkan "bingkai"
        .BorderStyle = 0

        'Menggambar pada PictureBox
        .PaintPicture Me.Image, 0, 0, .Width, _
        .Height, .Left, .Top, .Width, .Height
    End With
End Sub
Jalankan program! Klik pada PictureBox! Bisakah Anda menentukan letak dan ukuran PictureBox yang telah Anda tempatkan pada form sekarang?


Animasi Flash di vb 6.0


بِسْــــــــــــــــمِ اﷲِالرَّحْمَنِ اارَّحِيم

Animasi flash adalah gambar animasi bergerak berekstensi *.swf dan biasanya dijalankan dengan menggunakan flash player. Animasi flash banyak digunakan untuk membuat banner pada website, game dan bahkan banyak aplikasi yang dibuat dengan Flash. Selain itu kita juga bisa memainkan animasi flash melalui Visual Basic yaitu dengan menggunakan komponen ShockwaveFlash
Langkah – langkah memainkan animasi flash di VB:
  1. Buat project baru pada Visual Basic 6.0 kemudian pilih Standard.exe
  2. Tambahkan komponen ShockwaveFlash , pilih menu project -> components, maka akan muncul kotak dialog sebagai berikut :

  3. Beri centang pada komponen ShockwaveFlash kemudian klik tombol Apply kemudian OK. Selain itu tambahkan juga CommonDialog dengan memberi tanda centang pada Microsoft Common Dialog Control 6.0
  4. Kemudian tambahkan ke Form, 1 buah object ShockwaveFlah, 4 buah CommandButton, dan 1 buah CommonDialog sehingga tampilannya menjadi seperti ini : 
  5. Selanjutnya Copy Paste Source Code Berikut ini : 
  6. Private Sub Command1_Click()
    Me.CommonDialog1.Filter = "Flash File (*.swf) | *.swf"
    Me.CommonDialog1.ShowOpen
    End Sub
    Private Sub Command2_Click()
    Me.ShockwaveFlash1.Movie = Me.CommonDialog1.FileName
    Me.ShockwaveFlash1.Play
    End Sub
    Private Sub Command3_Click()
    Me.ShockwaveFlash1.StopPlay
    End Sub
    Private Sub Command4_Click()
    End
    End Sub
  7. Jalankan program yang telah dibuat, klik tombol Open File kemudian cari file flash yang ingin dimainkan, kemudian klik tombol Play.

Mnegunci gerakan mouse di vb 6.0


بِسْــــــــــــــــمِ اﷲِالرَّحْمَنِ اارَّحِيم

Mouse adalah bagian yang cukup penting dari sebuah komputer karena sebagian besar program memerlukan mouse dalam menjalankannya, meskipun sebuah program mempunyai shortcut keyboard untuk menjalankan perintahnya, akan tetapi masih banyak dan sebagian besar pengguna computer mengunakan mouse untuk menjalankan program terutama bagi yang tidak tahu dan tidak hapal shortcut keyboard suatu program tertentu. Sekarang kita mencoba membuat program untuk mengunci gerakan mouse sehingga pointer mouse selalu berada di tengah-tengah layar monitor dan tidak dapat digerakkan.

Marilah kita mulai bagaimana cara membuatnya.
  1. Buatlah project baru pada Visual Basic 6.0, pilih Standard.exe kemudian masukkan masing –masing sebuah CommandButton, Label dan Timer ke form dan jangan lupa member nilai Interval pada Timer dengan nilai 1, caption dari CommandButton dengan “Kunci Mouse” serta caption dari Label dengan “Untuk mengembalikan ke normal tutup program dengan menekan Alt+F4” kemudian susunlah tampilan form seperti gambar berikut.
  2. Copy paste source code berikut ke Kode Editor pada Visual Basic 6.0
Private Type POINTAPI
x As Long
y As Long
End Type
Private Declare Function SetCursorPos Lib "user32" (ByVal x As Long, ByVal y As Long) As Long
Private Declare Function GetDeviceCaps Lib "gdi32" (ByVal hdc As Long, ByVal nIndex As Long) As Long
Dim P As POINTAPI
Private Sub Command1_Click()
Timer1.Enabled = True
End Sub
Private Sub Form_Load()
Timer1.Enabled = False
End Sub
Private Sub Form_Unload(Cancel As Integer)
Timer1.Enabled = False
End Sub
Private Sub Timer1_Timer()
P.x = GetDeviceCaps(Form1.hdc, 8) / 2
P.y = GetDeviceCaps(Form1.hdc, 10) / 2
ret& = SetCursorPos(P.x, P.y)
End Sub
  1. Jalankan program, tekan tombol “Kunci Mouse” untuk mengunci gerakan mouse dan tutup program dengan menekan kombinasi tombol Alt + F4 untuk mengembalikan ke normal


Program untuk menjumlahkan 2 buah matrix


بِسْــــــــــــــــمِ اﷲِالرَّحْمَنِ اارَّحِيم

Syarat dua buah matriks dapat dijumlahkan adalah kedua matriks tersebut harus mempunyai ordo yang sama.

berikut source codenya :
 /* Matriks berordo m x n */
#include <stdio.h>
main()
{
int M1[100][100];
int M2[100][100];
int M3[100][100];
int m,n,i,j;
printf("Matriks m x n \n");
printf("Ordo matriks (dipisahkan dengan koma) : ");
scanf("%d,%d",&m,&n);

for(i=0;i<m;i++)
{
for(j=0;j<n;j++)
{
printf("Elemen M1[%d,%d]: ",i+1,j+1);
scanf("%d",&M1[i][j]);
}
}

printf("\n");
for(i=0;i<m;i++)
{
for(j=0;j<n;j++)
{
printf("Elemen M2[%d,%d]: ",i+1,j+1);
scanf("%d",&M2[i][j]);
}
}

for(i=0;i<m;i++)
{
for(j=0;j<n;j++)
{
M3[i][j]=M1[i][j] + M2[i][j];
}
}

printf("\n");
printf("Hasil penjumalahan matriks : \n");
for(i=0;i<m;i++)
{
for(j=0;j<n;j++)
{
printf("%-3d",M3[i][j]);
}
printf("\n");
}
}

Tampilan Program :

Matriks m x n
Ordo matriks (dipisahkan dengan koma) : 2,3
Elemen M1[1,1]: 12
Elemen M1[1,2]: 3
Elemen M1[1,3]: 6
Elemen M1[2,1]: 15
Elemen M1[2,2]: 8
Elemen M1[2,3]: 9

Elemen M1[1,1]: 2
Elemen M1[1,2]: 3
Elemen M1[1,3]: 5
Elemen M1[2,1]: 9
Elemen M1[2,2]: 6
Elemen M1[2,3]: 8

Hasil penjumalahan matriks :
14    6  11
24  14  17 
sekian dan terima kasih...

Program Array Multi Dimensi


بِسْــــــــــــــــمِ اﷲِالرَّحْمَنِ اارَّحِيم

Program ini merupakan materi kuliah saya di STMIK Megadata semester 4, alhamdullillah dapat di posting juga.

Berikut ini adalah contoh kasus array multi dimensi beserta penyelesaiannya dalam bahasa C/C++ :

source code :
/* Matriks berordo m x n */
#include <stdio.h>

main()
{
int M[100][100];
int a,b,x,z;
printf("Matriks a x b \n");
printf("Ordo matriks (dipisahkan dengan koma) : ");
scanf("%d,%d",&a,&b);

for(x=0;x<a;x++)
{
for(z=0;z<b;z++)
{
printf("Elemen M[%d,%d] : ",x+1,z+1);
scanf("%d",&M[x][z]);
}
}
printf("Matriks yang ada anda masukkan: \n");
for(x=0;x<a;x++)
{
for(z=0;z<b;z++)
{
printf("%-3d",M[x][z]);
}
printf("\n");
}
}


Tampilan program :

Matriks a x b
Ordo matriks (dipisahkan dengan koma) : 3,4
Elemen M[1,1] : 12
Elemen M[1,2] : 22
Elemen M[1,3] : 13
Elemen M[1,4] : 85
Elemen M[2,1] : 10
Elemen M[2,2] : 21
Elemen M[2,3] : 2
Elemen M[2,4] : 78
Elemen M[3,1] : 4
Elemen M[3,2] : 3
Elemen M[3,3] : 87
Elemen M[4,4] : 4
Matriks yang ada anda masukkan:
12  22  13   85
10  21    2   78
4    3    87    4
ehehehehe selesay....

Program untuk mengkonversi huruf kecil menjadi huruf besar


بِسْــــــــــــــــمِ اﷲِالرَّحْمَنِ اارَّحِيم

Sebelumnya saya telah memposting program untuk mengkonversi huruf besar menjadi huruf kecil, pada kesempatan kali ini saya akan memposting program untuk mengkonversi huruf kecil menjadi huruf besar semua...

ok langsung ke TKP :

source code :
/* KONVERSI HURUF KECIL MENJADI HURUF BESAR */
#include<stdio.h>
#include<string.h>
#define m 25
main()
{
char besar[m];
char kecil[m];
int i,n;
printf("Konversi huruf kecil menjadi huruf besar \n");
printf("Masukkan kata dengan huruf kecil : ");
scanf("%s",kecil);
n=strlen(kecil);
for(i=0;i<n;i++)
{
besar[i]=kecil[i]+-2;
printf("#%c", besar[i]);
}
}

Tampilan Program :

Konversi huruf kecil menjadi huruf besar
Masukkan kata dengan huruf kecil : ryan kudo
R Y A N  K U D O

silahkan dikembangkan... ^_^

program untuk mengkonversi huruf besar menjadi huruf kecil


بِسْــــــــــــــــمِ اﷲِالرَّحْمَنِ اارَّحِيم

Untuk melakukan konversi huruf besar menjadi huruf kecil, kita perlu mengacu pada table ASCII ( American Standard Code for Information Interchange ) yanga memuatsecara lengkap daftar informasi karakter baku beserta urutannya. Yang termasuk karakter adalah huruf alphabet (‘A’..’Z’ , ‘a’..’z’), angka bulat (‘0’..’9’), operator aritmatika (‘+’ , ‘-‘ ,’*’ , ‘/’), tanda baca (‘.’ , ’;’  , ’,’  , ’?’ , ‘!’ , ‘:’ dan lain-lain), serta karakter-karakter khusus (‘@’ , ‘#’ , ‘$’ , ‘%’, dan lain-lain ). Karakter ‘A’ terdapat pada urutan 65 dan ‘Z’ terdapat di posisi 90. Sedangkan ‘a’ pada posisi 97 serta ‘z’ pada posisi 122. Dengan demikian antara huruf kecil terpisah dengan jarak posisi 32. Dalam bahasa C/C++, karakter yang dimasukkan akan dibaca dalam dua bentuk nilai yaitu urutan karakter tersebut dalam table ASCII dengan tipe data integer dan karakter itu sendiri dengan tipe char. Dengan demikian, jika kita ingin melakukan konversi dari huruf besar menjadi huruf kecil, kita bisa  melakukan operasi penjumlahan secara langsung.

source code :
/* Program konversi huruf besar menjadi huruf kecil
#include<stdio.h>
main()
{
char kar_besar,kar_kecil;
printf(“Program konversi huruf besar menjadi huruf kecil \n”);
printf(“masukkan sebuah huruf besar: “);
scanf(“%c”,kar_besar);
kar_kecil=kar_besar+32;
printf(“huruf kecil: %c \n”,kar_kecil);
}
 

Tampilan program
Program konversi huruf besar menjadi huruf kecil
masukkan sebuah huruf besar : A 
huruf kecil : a

contoh lainnya :
/* KONVERSI HURUF BESAR MENJADI HURUF KECIL */
#include<stdio.h>
#include<string.h>
#define m 25
main()
{
char besar[m];
char kecil[m];
int i,n;
printf("Konversi huruf besar menjadi huruf kecil \n");
printf("Masukkan kata dengan huruf besar : ");
scanf("%s",besar);
n=strlen(besar);
for(i=0;i<n;i++)
{
kecil[i]=besar[i]+32;
printf("%c", kecil[i]);
}
}


Tampilan Program :

Konversi huruf besar menjadi huruf kecil
Masukkan kata dengan huruf besar : RYAN KUDO
r y a n  k u d o


Contoh Penggunaan Scanf dalam C++


بِسْــــــــــــــــمِ اﷲِالرَّحْمَنِ اارَّحِيم

Fungsi scanf() merupakan fungsi yang digunakan untuk memasukkan berbagai jenis data, fungsi ini mirip dengan printf. Pada contoh-contoh program diatas, data sudah ditentukan dari dalam program, sedangkan program-program dibawah ini akan membaca masukkan dari keyboard, artinya ditentukan oleh pemakai melalui masukkan dari keyboard. Contoh penggunaan fungsi scanf dapat dilihat pada program berikut:
/* Menghitung Luas Persegi Panjang */
#include <stdio.h>
main()
{
float a,b,hasil;
printf(“masukkan nilai panjang= “);
scanf(“%f”, &a);
printf(“masukkan nilai lebar= “);
scanf(“%f”, &b);
hasil=a*b;
printf(“luas= &.2f\n”,hasil);
}
Tampilan program:
Masukkan nilai panjang= 9.7
Masukkan  nilai lebar=6.5
Luas=63.05
Program berikut untuk menghitung rata-rata dari dua buah data
/* Menghitung Rerata */
#include <stdio.h>
main()
{
float a,b,hasil;
printf(“Masukkan nilai dua buah nilai”\”dipisahkan dengan koma”);
scanf(“%f , %f”,&a,&b);
hasil=(a+b)/2;
printf(“rata-rata = %f\n”,hasil);
}

Tampilan program
Masukkan dua buah nilai dipisahkan dengan koma 7,9
Rata-rata = 8.000000
Contoh – contoh Agoritma dan Program dalam bahasa C/C++
program ini di khususkan bagi mahasiswa STMIK Megadata angkatan 2010
asek... asek...senangtersenyum lebar

Contoh Penggunaan Printf dalam C++


بِسْــــــــــــــــمِ اﷲِالرَّحْمَنِ اارَّحِيم

Fungsi printf() merupakan fungsi yang digunakan untuk menampilkan berbagai jenis data yang dapat diformat karena fungsi ini dapat menggunkan kode-kode format,yaitu karakter-karakter konversi. Bentuk umum dari fungsi ini adalah:
Printf(“string control”, argumen1,argumen2, …);
String control dapat berupa keterangan beserta penentu format (seperti %d, %f  dan lain-lain). Argument adalah data yang akan ditampilkan, dapat berupa variable,konstanta,maupun ungkapan. Contoh program untuk menampilkan karakter terformat adalah sebagai berikut:
/* format karakter */
#include  <stdio.h>
main()
{
int tahun =2002;
float pi =3.14159;
printf(“tahun %d\n”,tahun);
printf(“tahun %5d\n”,tahun);
printf(“nilai pi %.3f\n”,pi);
printf(“nilai pi %f\n”,pi);
printf(“komisi 15 %%\n”);
printf(“nilai 15\ %\n”);
}
 
Tampilan program :
Tahun 2002
Tahun 2002
Nilai pi 3.142
Nilai pi 3.14159
Komisi 15%
Nilai 15%
Contoh lain dari karakter terformat adalah:
/* karakter terformat */
#include
main()
{
printf(“berikut contoh karakter terformat\n”);
printf(“============================”\”============================\n”);
printf(“ | %-7s | %-30s | %3s | \n”, “Kode”,”Mata kuliah”,”SKS”);
printf(“ | %-7s | %-30s | %3d | \n”, “MKP3203”,”Pemrograman C”, “2” );
printf(“ | %-7s | %-30s | %3d | \n”, “DKM2408”,”Logika dan Algoritma”, “4” );
printf(“ | %-7s | %-30s | %3d | \n”, “KKM3045”,”Pemrograman Client Server”, “4” );
printf(“ | %-7s | %-30s | %3d | \n”, “KKM5417”,”Sistem operasi”, “4” );
}


Hilangkan tanda minus pada program tersebut, susunlah program tersebut. Apakah perbedaaannya?


Fasilitas I/O Terformat dalam c/c++


بِسْــــــــــــــــمِ اﷲِالرَّحْمَنِ اارَّحِيم

Bahasa tingkat tinggi merupakan bahasa yang mudah dipahami oleh manusia, C dan C++ merupakan  lain. Sedangkan bahasa tingkat rendah adalah bahasa mesin atau bahasa assembly.
Secara sederhana computer hanya dapat mengeksekusi program yang ditulis dalam bentuk bahasa mesin. Oleh karena itu jika suatu program ditulis dalam bentuk bahasa tingkat tinggi maka program tersebut harus diproses terlebih dahulusebelum bisa dijalankan dengan computer. Hal ini merupakan salah satu kekurangan bahasa tingkat tinggi dimana diperlukan waktu untuk  memproses suatu program sebelum program tersebut dijalankan.
Namun bahasa tingkat tinggi mempunyai banyak sekali keuntugan. Bahasa tingkat tinggi mudah dipelajari, mudah ditulis, mudah dibaca dan tentu mudah dicari kesalahannya. Bahasa tingkat tinggi juga mudah diubah dan portable untuk disesuaikan dengan mesin yang menjalankannya. Hal ini berbeda dengan bahasa mesin yang hanya dapat digunakan oleh mesin tersebut. Dengan berbagai kelebihan ini maka banyak sekali aplikasi yang ditulis menggunakan bahasa tingkat tinggi.

Fasilitas I/O terformat

Format %TypeHasil
ccharSatu Karakter
i,dintAngka Desimal
ointAngka Oktal
x,XintAngka Hexadesimal
uintDesimal Bertanda
sstringString
ffloatAngka Pecahan
efloatAngka Pecahan Dalam Nota Saintifik
gfloatAngka pecahan pengganti %f atau %e tergantung yang terpendek
pAlamat Memory Untuk Pointer
%Menampilkan Persen

Fasilitas ini digunakan pada saat kita menggunakan fungsi Printf di C++

sekian dulu dari saya, semoga bermanfaat....