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
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