منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : طريقة اختصار تكرارات الارقام
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم اخواني 
عندي Listbox يحتوي على اعمار اشخاص من 0 الى 100 
بعض الاعمار تتكرر مثلا 
11
11
11
22
22
30
32
50
50
43

كيف بقدر اختصر هاي الارقام كالاتي 
11/3
22/2
30
32
50/2
43
يعني تكرارات الاعمار اختصرها برقم واحد واكتب جنب هذا الاختصار عدد التكرارات
السلام عليكم ورحمة الله وبركاته
اخي الكريم 
هذا مثال لما تريد تماما إن شاء الله
(10-02-22, 01:31 AM)ابراهيم ايبو كتب : [ -> ]السلام عليكم ورحمة الله وبركاته
اخي الكريم 
هذا مثال لما تريد تماما إن شاء الله

الف شكر اخوي ابراهيم 
مثال يفي بالغرض ولكن فيه مشكلة 
انو انا بحاجة انو يجمع التكرارات الي ورا بعض فقط يعني 
11
11
23
21
11
11
11
فبصير بالشكل الاتي 
11\2
23
21
11\3
يعني ما يجمعهم كلهم بخانة وعدد تكرارات مع بعض
لا كل مجموعه ورا بعض متكرره على التوالي يختصرهم بعددهم
عندك اي حل اخوي ابراهيم للمشكله؟
السلام عليكم ورحمة الله وبركاته
الحمد لله رب العالمين الذي يوفقني دائما وأبدا
فعلا الكود يحتاج الى صفاء في الذهن والتوكل على الله
تفضل اخي الكريم فقظ دعوة منك ان أشفى من مرض السكر هذا
كود :
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click

       Dim Lst As New ListBox()
       Lst.Items.Clear()
       Dim kk As Integer = 0

       For i As Integer = 0 To ListBox1.Items.Count - 1
           If Lst.Items.Count > 0 Then

               If Lst.Items(Lst.Items.Count - 1).ToString = ListBox1.Items(i).ToString Then
                   kk += 1
               Else
                   If kk > 1 Then
                       Lst.Items(Lst.Items.Count - 1) &= "/" & kk
                       kk = 0
                       Lst.Items.Add(ListBox1.Items(i))
                       kk += 1
                   Else
                       kk = 0
                       Lst.Items.Add(ListBox1.Items(i))
                       kk += 1
                   End If
               End If
           Else
               kk = 0
               Lst.Items.Add(ListBox1.Items(i))
               kk += 1
           End If
       Next
       ListBox1.Items.Clear()
       ListBox1.Items.AddRange(Lst.Items.Cast(Of String)().ToArray)
   End Sub
(10-02-22, 09:44 PM)ابراهيم ايبو كتب : [ -> ]السلام عليكم ورحمة الله وبركاته
الحمد لله رب العالمين الذي يوفقني دائما وأبدا
فعلا الكود يحتاج الى صفاء في الذهن والتوكل على الله
تفضل اخي الكريم فقظ دعوة منك ان أشفى من مرض السكر هذا
كود :
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click

       Dim Lst As New ListBox()
       Lst.Items.Clear()
       Dim kk As Integer = 0

       For i As Integer = 0 To ListBox1.Items.Count - 1
           If Lst.Items.Count > 0 Then

               If Lst.Items(Lst.Items.Count - 1).ToString = ListBox1.Items(i).ToString Then
                   kk += 1
               Else
                   If kk > 1 Then
                       Lst.Items(Lst.Items.Count - 1) &= "/" & kk
                       kk = 0
                       Lst.Items.Add(ListBox1.Items(i))
                       kk += 1
                   Else
                       kk = 0
                       Lst.Items.Add(ListBox1.Items(i))
                       kk += 1
                   End If
               End If
           Else
               kk = 0
               Lst.Items.Add(ListBox1.Items(i))
               kk += 1
           End If
       Next
       ListBox1.Items.Clear()
       ListBox1.Items.AddRange(Lst.Items.Cast(Of String)().ToArray)
   End Sub

ما شاء الله عليك 
الكود 100% صحيح الله يعطيك العافيه ويشافيك ويعافيك ويبارك فيك
الحمد لله والشكر لله 
ولك أخي الكريم