• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

1 den 8 e kadar olan rakamların kombinasyon adedi matematiksel olarak nasıl hesaplanır?

  • Konbuyu başlatan Konbuyu başlatan Asri
  • Başlangıç tarihi Başlangıç tarihi
Katılım
24 Nisan 2005
Mesajlar
3,683
Excel Vers. ve Dili
Office 2016 EN 64 Bit
1 den 8 e kadar olan rakamların kombinasyon adedi matematiksel olarak nasıl hesaplanır?
Koşullar:
- bir rakam iki defa kullanılamaz. 11,1232,12345671 gibi.
- bir sayıda aynı rakamlar var ise tek sayı sayılır. 1234, 4321, yada 1256, 2615 gibi

bu koşullara uyan kombinasyon listesini oluşturabilirim. Ancak bunun hesabı nasıl yapılır?
 
Merhaba
Kutu yöntemini deneyin.
1-8 arası sayılar kullanılacaksa;
1. kutuya 8 farklı sayı yazılabilir
2. kutuya 7 farklı sayı
3. kutuya 6 farklı sayı
...
...

8. kutuya 1 farklı sayı
1*2*3*4*5*6*7*8=40.320

kontrol ediniz.

Bunu for-next döngüsü ile sayfaya yazdırarak da görebilirsiniz.
 
Merhaba
Kutu yöntemini deneyin.
1-8 arası sayılar kullanılacaksa;
1. kutuya 8 farklı sayı yazılabilir
2. kutuya 7 farklı sayı
3. kutuya 6 farklı sayı
...
...

8. kutuya 1 farklı sayı
1*2*3*4*5*6*7*8=40.320

kontrol ediniz.

Bunu for-next döngüsü ile sayfaya yazdırarak da görebilirsiniz.

Teşeekkür ederim. Bu yöntem e permutasyon mu deniyordu.
Bende geriye doğru çarpım 8*7*6*5*4*3*2*1 ile 40 bin sayısını buldum ancak emin olamadım :)
 
Merhaba
Kutu yöntemini deneyin.
1-8 arası sayılar kullanılacaksa;
1. kutuya 8 farklı sayı yazılabilir
2. kutuya 7 farklı sayı
3. kutuya 6 farklı sayı
...
...

8. kutuya 1 farklı sayı
1*2*3*4*5*6*7*8=40.320

kontrol ediniz.

Bunu for-next döngüsü ile sayfaya yazdırarak da görebilirsiniz.

Kutu yöntemi oldukça açıklayıcı oldu. Tekrar teşekkür.
 
Merhaba Asri Hocam,
İdris Hocamın dosyasına bakmadım ama, bu tür çalışmalarda kullanılan rakamlar arasında sıfır varsa ilk rakam 0 olamayacağından, basamak sayısı -1 defa, yani 7*7*6*5*4*3*2*1, sıfır yoksa 8*7*6*5*4*3*2*1 sayıda olur. Sorunuzu şimdi gördüm.
İyi çalışmalar
 
Programı yazdığımda 255 adet sayı oluşuyor. 40 bin değil.
Bu hesap neye göre yapılıyor. :)

Kod:
Sub ozelkombi()
listes = "1,2,3,4,5,6,7,8"
liste = Split(listes, ",")
satir = 1
For i1 = 0 To UBound(liste)
    Cells(satir, "K").Value = liste(i1)
    satir = satir + 1
Next

For i1 = 0 To UBound(liste)
  For i2 = i1 + 1 To UBound(liste)
      Cells(satir, "K").Value = liste(i1) & liste(i2)
      satir = satir + 1
  Next
Next

For i1 = 0 To UBound(liste)
    For i2 = i1 + 1 To UBound(liste)
        For i3 = i2 + 1 To UBound(liste)
            Cells(satir, "K").Value = liste(i1) & liste(i2) & liste(i3)
            satir = satir + 1
        Next
    Next
Next
'
For i1 = 0 To UBound(liste)
    For i2 = i1 + 1 To UBound(liste)
        For i3 = i2 + 1 To UBound(liste)
            For i4 = i3 + 1 To UBound(liste)
                Cells(satir, "K").Value = liste(i1) & liste(i2) & liste(i3) & liste(i4)
                satir = satir + 1
            Next
        Next
    Next
Next
'
For i1 = 0 To UBound(liste)
    For i2 = i1 + 1 To UBound(liste)
        For i3 = i2 + 1 To UBound(liste)
            For i4 = i3 + 1 To UBound(liste)
                For i5 = i4 + 1 To UBound(liste)
                    Cells(satir, "K").Value = liste(i1) & liste(i2) & liste(i3) & liste(i4) & liste(i5)
                    satir = satir + 1
                Next
            Next
        Next
    Next
Next
'
For i1 = 0 To UBound(liste)
  For i2 = i1 + 1 To UBound(liste)
    For i3 = i2 + 1 To UBound(liste)
        For i4 = i3 + 1 To UBound(liste)
            For i5 = i4 + 1 To UBound(liste)
                For i6 = i5 + 1 To UBound(liste)
                    Cells(satir, "K").Value = liste(i1) & liste(i2) & liste(i3) & liste(i4) & liste(i5) & liste(i6)
                    satir = satir + 1
                Next
            Next
        Next
     Next
   Next
Next
'
For i1 = 0 To UBound(liste)
   For i2 = i1 + 1 To UBound(liste)
      For i3 = i2 + 1 To UBound(liste)
        For i4 = i3 + 1 To UBound(liste)
            For i5 = i4 + 1 To UBound(liste)
                For i6 = i5 + 1 To UBound(liste)
                    For i7 = i6 + 1 To UBound(liste)
                        Cells(satir, "K").Value = liste(i1) & liste(i2) & liste(i3) & liste(i4) & liste(i5) & liste(i6) & liste(i7)
                        satir = satir + 1
                    Next
                Next
            Next
         Next
      Next
    Next
Next
'
For i1 = 0 To UBound(liste)
    For i2 = i1 + 1 To UBound(liste)
        For i3 = i2 + 1 To UBound(liste)
            For i4 = i3 + 1 To UBound(liste)
                For i5 = i4 + 1 To UBound(liste)
                    For i6 = i5 + 1 To UBound(liste)
                        For i7 = i6 + 1 To UBound(liste)
                            For i8 = i7 + 1 To UBound(liste)
                                  Cells(satir, "K").Value = liste(i1) & liste(i2) & liste(i3) & liste(i4) & liste(i5) & liste(i6) & liste(i7) & liste(i8)
                                  satir = satir + 1
                            Next
                        Next
                    Next
                Next
            Next
        Next
    Next
Next
End Sub
 
1, 2, 3, 4, 5, 6, 7, 8, 12, 13, 14, 15, 16, 17, 18
23, 24, 25, 26, 27, 28, 34, 35, 36, 37, 38, 45, 46
47, 48, 56, 57, 58, 67, 68, 78, 123, 124, 125, 126,
127, 128, 134, 135, 136, 137, 138, 145, 146, 147,
148, 156, 157, 158, 167, 168, 178, 234, 235, 236,
237, 238, 245, 246, 247, 248, 256, 257, 258, 267,
268, 278, 345, 346, 347, 348, 356, 357, 358, 367,
368, 378, 456, 457, 458, 467, 468, 478, 567, 568,
578, 678, 1234, 1235, 1236, 1237, 1238, 1245, 1246,
1247, 1248, 1256, 1257, 1258, 1267, 1268, 1278, 1345
1346, 1347, 1348, 1356, 1357, 1358, 1367, 1368, 1378,
1456, 1457, 1458, 1467, 1468, 1478, 1567, 1568, 1578,
1678, 2345, 2346, 2347, 2348, 2356, 2357, 2358, 2367
2368, 2378, 2456, 2457, 2458, 2467, 2468, 2478, 2567,
2568, 2578, 2678, 3456, 3457, 3458, 3467, 3468, 3478,
3567, 3568, 3578, 3678, 4567, 4568, 4578, 4678,5678,
12345, 12346, 12347, 12348, 12356, 12357, 12358, 12478,
12367, 12368, 12378, 12456, 12457, 12458, 12467, 12468,
12567, 12568, 12578, 12678, 13456, 13457, 13458, 13467,
13468, 13478, 13567, 13568, 13578, 13678, 14567, 14568,
14578, 14678, 15678, 23456, 23457, 23458, 23467, 23468,
23478, 23567, 23568, 23578, 23678, 24567, 24568, 24578,
24678, 25678, 34567, 34568, 34578,123468, 123478, 123567,
34678, 35678, 45678, 123456, 123457, 123458, 123467,
123568, 123578, 123678, 124567,124568, 124578, 124678,
125678, 134567, 134568, 134578, 134678, 135678, 145678,
234567, 234568, 234578, 234678,235678, 245678, 345678,
1234567, 1234568, 1234578, 1234678, 1235678, 1245678,
1345678, 2345678, 12345678
 
Merhaba,

Bir arkadaşım formülü yazdı bende excele çevirdim.
sayı adedini verdiğimizde 1 den 8 e gibi, 8 adet diye formüller her bir hane için koşullara uygun oluşabilecek sayı adedini veriyor.
8 için.

HANE

HANE ADET

1

8

2

28

3

56

4

70

5

56

6

28

7

8

8

1

9 için

HANE

HANE ADET

1

9

2

36

3

84

4

126

5

126

6

84

7

36

8

9

9

1


10 için


1

10

2

45

3

120

4

210

5

252

6

210

7

120

8

45

9

10

10

1


Saygılarımla.
 
Son düzenleme:
Asri Bey, eklediğiniz dosyadaki formül yerine aşağıdaki Kombinasyon formülünü de kullanabilirsiniz.



.
 
Geri
Üst