list box ta üç büyük sayıyı bulma

Visual Basic bölümünde yer alan bu konu Mr.Jackson tarafından paylaşıldı.

  1. Mr.Jackson

    Mr.Jackson Sagopa Kajmer

    listbox (List1 ve List2) ve 1 command button (command1) ekleyin,
    Formun load olayında list1 e rasgele sayı ekleyin, örneğin,

    Private Sub Form_Load()
    List1.AddItem 100
    List1.AddItem 204
    List1.AddItem 33
    List1.AddItem 402
    List1.AddItem 54
    List1.AddItem 633
    List1.AddItem 73
    List1.AddItem 82
    List1.AddItem 92
    End Sub

    Command1 nesnesinin click olayı ise şu şekilde olacak,
    Sayi isimli dizi değişkeni tanımlanır, döngü içinde a değişkeni. 0 dan başlayarak listedeki eleman sayısı kadar döngü oluşturulur.
    arkasından sayılar teker teker kontrol edilir. Sayi(0) en büyük sayı, eğer ki Sayi(0) da depolanan sayı listeden okunan sayıdan küçük ise, Sayi(1), Sayi(2) ye, Sayi(0), Sayi(1) e, listedeki sayı en büyük olduğu için Sayi(1) e atanır. Değilse listeden okunan sayı Sayi(1) den büyükse; Sayi(1), Sayi(2) ye, listeden okunan sayı Sayi(1) e atanır. Eğer listeden okunan sayı Sayi(0) ve Sayi(1) den küçük Sayi(2) den büyükse Sayi(2) ye listeden okunan sayı atanır.
    Ben sayıları list2 ye sıralattım.

    Private Sub Command1_Click()
    Dim Sayi(2) As Long, a As Integer

    For a = 0 To List1.ListCount - 1
    If Sayi(0) < Val(List1.List(a)) Then
    Sayi(2) = Sayi(1)
    Sayi(1) = Sayi(0)
    Sayi(0) = Val(List1.List(a))
    ElseIf Sayi(1) < Val(List1.List(a)) Then Sayi(2) = Sayi(1): Sayi(1) = Val(List1.List(a))
    ElseIf Sayi(2) < Val(List1.List(a)) Then Sayi(2) = Val(List1.List(a))
    End If
    Next a
    List2.Clear
    List2.AddItem Sayi(0)
    List2.AddItem Sayi(1)
    List2.AddItem Sayi(2)
    End Sub