Dalam sebuah konteks deret angka kita mengenal istilah Leader atau pemimpin yang biasanya hal ini merujuk kepada angka yang lebih besar disebelah kanannya dari semua angka yang ada dalam deretan angka tersebut.Misal deretan angka [16,17,4,3,5,2] dari deretan angka tersebut yang menjadi Leader adalah angka [17,5,2]'.
|
Output |
Keterangan:
- 16 tidak menjadi angka leader karena disebelah kanannya ada yang lebih besar yaitu 17, maka angka 17 menjadi Leader
- Disebelah kanan angka 17 tidak ada yang lebih besar dari 17, maka 17 tetap menjadi Leader
- Angka 4 dan 3 tidak menjadi leader karena sebelah kanannya ada yang lebih besar yaitu angka 5, angka angka 5 menjadi Leader
- Angka 2 menjadi Leader karena tidak ada angka disebelah kanannya
Setelah kita memahami tentang angka Leader melalui teori, sekarang kita akan praktekan menggunakan kode program vb6, apakah hasilnya akan sama?.
Berikut adalah langkah-langkah mencari angka Leader dalam sebuah deret angka menggunakan vb6 :
1. Buka Form VB6 Standar EXE
2. Pada Form1 tanamkan beberapa control berikut :
1 TextBox
1 ListBox
1 CommandButton, dan
Beberapa Label
3. Desainlah Form seperti Gambar dibawah ini :
|
Desain Form |
4. Setelah mendesain Form seperti gambar diatas, ketiklah kode dibawah ini :
Option Explicit
Private Sub Command1_Click()
If Text1.Text = "" Then
MsgBox "Tidak boleh kosong", vbInformation, "Info"
Text1.SetFocus
Else
If Command1.Caption = "Tampilkan" Then
Command1.Caption = "Clear"
Dim inputArray() As String
Dim numbers() As Integer
Dim leaders() As Integer
Dim i As Integer
Dim maxRight As Integer
' Ambil input dari TextBox dan pisahkan berdasarkan koma
inputArray = Split(Text1.Text, ",")
' Ubah input ke dalam array angka
ReDim numbers(UBound(inputArray))
For i = 0 To UBound(inputArray)
numbers(i) = CInt(Trim(inputArray(i)))
Next i
' Kosongkan ListBox hasil
List1.Clear
' Algoritma untuk mencari leader
ReDim leaders(UBound(numbers))
Dim leaderIndex As Integer
leaderIndex = 0
maxRight = numbers(UBound(numbers)) ' Mulai dari elemen paling kanan
' Elemen paling kanan selalu menjadi leader
leaders(leaderIndex) = maxRight
leaderIndex = leaderIndex + 1
' Iterasi dari kanan ke kiri
For i = UBound(numbers) - 1 To 0 Step -1
If numbers(i) > maxRight Then
maxRight = numbers(i)
leaders(leaderIndex) = maxRight
leaderIndex = leaderIndex + 1
End If
Next i
' Tampilkan hasil ke ListBox
For i = leaderIndex - 1 To 0 Step -1
List1.AddItem leaders(i)
Next i
Else
If Command1.Caption = "Clear" Then
List1.Clear
Text1.Text = ""
Command1.Caption = "Tampilkan"
Text1.SetFocus
End If
End If
End If
End Sub
Private Sub Form_Activate()
Text1.SetFocus
End Sub
Private Sub Form_Load()
Text1.Text = "16, 17, 4, 3, 5, 2"
End Sub
5. Setelah mengetikan kode diatas jalankan Project dengan menekan tombol F5 / RUN, lalu pada TextBox kosong masukan angka 16,17,4,3,5,2 (menggunakan tanda koma) lalu tekan tombol [Tampilkan], maka hasilnya akan terlihat di ListBox yaitu angka 17,5 dan 2.
Demikianlah artikel kali ini tentang Mencari Bilangan Leader Dalam Sebuah Deret Angka Dengan VB6, semoga artikel ini bermanfaat buat kita semua,amin.
Selamat mencoba, semoga berhasil.
Related Post:
Matematika
No comments:
Post a Comment