Translate

29 November 2009

Mencari Ranking Data Terbesar pada posisi data ke N

Membuat peringkat data tanpa mengguanakan perintah SQL, berikut contoh kasus mencari peringkat suatu data. Kita sering dihadapkan dengan persoalan mencari posisi data berdasarkan ranking dari urutan terbesar. Misalkan terdapat 10 data acak dengan nilai antara 1 sampai dengan 10 atau [1,10), diminta untuk menentukan siapakah yang menempati ranking ke 3? Langsung saja ya berikut jawaban fungsi Ranking dan mencari data pada posisi ranking tertentu menggunakan VB6;

----------------------------------------------------------------------------------
Function LargeData(Data(), TertinggiKe As Integer)
     Dim Konter, N As Integer
     Dim Tmp()

     Call SortDesc(Data()) 'Digunakan untuk mengurutkan berdasarkan data terbesar

     N = UBound(Data)
     If TertinggiKe = 0 Then TertinggiKe = 1

     ReDim Tmp(LBound(Data) To N)
     Konter = 0
     Do While Konter < TertinggiKe
          Konter = Konter + 1
          Tmp(Konter) = Data(Konter)
     Loop
     LargeData = Tmp(Konter)
End Function
----------------------------------------------------------------------------------

cara penggunaanya;
Dim Ranking3 as Integer
Dim Data()
Data = Array(7,8,9,6,5,3,4,2,5,8)

Ranking3 = LargeData(Data, 3)

Debug.Print Ranking3

Hasil data terbesar pada urutan ke 3, pada jendela Debug akan tampil angka 8, karena kalau kita urutkan hasilnya adalah
(9,8,8,7,6,5,5,4,3,2) .

Tips: Jika ingin mengganti berdasarkan data terkecil, ubahlah fungsi SortDesc menjadi SortAsc seperti yang pernah ditulis sebelumnya.

Selamat mencoba,.... Semoga bermanfaat.

No comments:

Post a Comment

Silahkan memberikan komentar, saran, pertanyaan atau apapun yang penting sesuai dengan etika.

Posting Popular