C# Kombinasyon Hesaplama

C# Kombinasyon Hesaplama

C# Kombinasyon Hesaplama

Kombinasyon, n elemanlı bir küme elemanları ile elde edilen tüm grupların her bir tanesine kombinasyon denir.  Örnek vermek gerekirse, 1,2,3,4,5 rakamlarının ikisi ile oluşturulan bir 1,5 grubu ikili bir kombinasyondur.  Küme içerisinde sıralamanın herhangi bir önemi olmadığı gibi kombinasyonda da yoktur.

1,2,3,4,5 elemanlarını içeren bir kümenin ikili kombinasyonlarını da görelim.

{1,2} , {1,3} , {1,4} , {1,5} , {2,3} , {2,4} , {2,5} , {3,4} , {3,5} , {4,5}

Dikkat ettiyseniz {1,2} var iken {2,1} yazmadık. Sıranın bir önemi olmadığından ikisi de aynı küme sayılır. Bu sebeple yazılmaz.

Kombinasyon’u öğrendikten sonra şimdi bu işlemin kodlarına geçelim.

private void btn_kombinasyon_hesapla_Click(object sender, EventArgs e)
        {
            Kombinasyon_Hesapla();
        }

        int n, r, kombinasyon, fakt, fakt1, fakt2;
        void Kombinasyon_Hesapla()
        {
            n = Convert.ToInt32(txt_n.Text);
            r = Convert.ToInt32(txt_r.Text);

            fakt = n;
            for (int i = n - 1; i >= 1; i--)
            {
                fakt = fakt * i;
            }
            fakt2 = r;
            for (int i = r - 1; i >= 1; i--)
            {
                fakt2 = fakt2 * i;
            }

            int number;
            number = n - r;
            fakt1 = number;
            for (int i = number - 1; i >= 1; i--)
            {
                fakt1 = fakt1 * i;
            }
            fakt1 = fakt2 * fakt1;
            kombinasyon = fakt / fakt1;
            txt_sonuc.Text = kombinasyon.ToString();
        }

 

Çıktısı,

 

Kaynak: C# Kombinasyon Hesaplama

Yorum Yaz

Yorum yazabilmek için üye girişi yapmanız gerekiyor!

Yukarı Git