الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

أريد كود في احتمالات تشغيل عدد معين من المولدات مع بعضها

بدأه Visual Studio في 25 فبراير 2014 · 1 رد · 311 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته

 

عندي عدد معين من المولدات الكهربية كل مولد له قدرة ومعامل تشغيل ومعامل توقف

 

وكل مولد إما أن يكون في الخدمة ويعطي قدرته وإما أن يكون خارج الخدمة ولا يعطي قدره

 

أريد أن أضع كود يضع لي جميع الاحتمالات الممكنة لأي عدد من المولدات حيث يمكن تشغيلهم جميعا في نفس الوقت أو بعضهم وفي كل مرة يحسب القدرة التي هي مجموع قدرة كل مولد

 

وكل مولد له احتمالان إما أن يعطي قدرته وإما أن يعطي قدره قدرها صفر

 

وشكرا

 

 

 

                                                                     

#2

السلام عليكم ...

ربما انت بحاجة لإيجاد كل المجموعات الجزئية من مجموعة المولدات .... ثم تحسب مجموع القدرات في تلك المجموعة الجزئية ..مثلا لو كانت المولدات هي :

{1, 2, 3, 4, 5}

سيكون الخرج :

{1,}=1
{2,}=2
{1,2,}=3
{3,}=3
{1,3,}=4
{2,3,}=5
{1,2,3,}=6
{4,}=4
{1,4,}=5
{2,4,}=6
{1,2,4,}=7
{3,4,}=7
{1,3,4,}=8
{2,3,4,}=9
{1,2,3,4,}=10
{5,}=5
{1,5,}=6
{2,5,}=7
{1,2,5,}=8
{3,5,}=8
{1,3,5,}=9
{2,3,5,}=10
{1,2,3,5,}=11
{4,5,}=9
{1,4,5,}=10
{2,4,5,}=11
{1,2,4,5,}=12
{3,4,5,}=12
{1,3,4,5,}=13
{2,3,4,5,}=14
{1,2,3,4,5,}=15

و إليك الكود :

Function CreateSubsets(Of T)(ByVal originalArray() As T) As List(Of T())

        Dim subsets As New List(Of T())

        For i As Integer = 0 To originalArray.Length - 1

            Dim subsetCount As Integer = subsets.Count
            subsets.Add(New T() {originalArray(i)})

            For j As Integer = 0 To subsetCount - 1
                Dim newSubset(subsets(j).Length) As T
                subsets(j).CopyTo(newSubset, 0)
                newSubset(newSubset.Length - 1) = originalArray(i)
                subsets.Add(newSubset)
            Next

        Next

        Return subsets

    End Function

    Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
        Dim array() As Integer = {1, 2, 3, 4, 5}
        Dim subsets As List(Of Integer()) = CreateSubsets(array)

        For Each subset As Integer() In subsets
            Console.Write("{")
            For Each i As Integer In subset
                Console.Write(i & ",")
            Next
            Console.Write("}=")
            Dim sum As Integer = subset.Sum()
            Console.WriteLine(sum)

        Next

    End Sub

المصدر :

How to make all possible sum combinations from array elements in VB  رابط .

1

لا إله إلا الله ... محمد رسول الله

لو كانت مشاركتي مفيدة و تريد تشجيعي على المزيد من العطاء , فضلا قم بتقييم المشاركة

المعرًف القديم : houssam11350_11350

من مواضيعي : ArabGenCode : مولد كود و إجراءات مخزنة و واجهات لجداول سيكوال سيرفر

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…