• DİKKAT

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

Birden Kırkdokuza kadar sayıların Kombinasyonu

htsumer

Altın Üye
Altın Üye
Katılım
7 Eylül 2004
Mesajlar
975
Excel Vers. ve Dili
Excel-2003
Benim şöyle bir makroya ihtiyacım var.

1 den 49 kadar sayıların kombinasyon ile sıralanmasına ait makro.

Yani 1 ile 49 sayıları arasında 6 tane kombinasyonu hesaplayacakmakro..
 
İlgin için tşk.Sitedeki tüm komb.inceledim ama işime direk olarak sorgum üzerine bulamadım.
 
Merhaba,

Verdiğim linkin 13 nolu mesajında Sayın Haluk' un örnek dosyası sizin istediğinizi yapıyor . Yani 49 un 6 lı kombinasyonunu sıralıyor.

Not: Dosyayı çalıştırmadan önce Araçlar / Makro / Güvenlik / Güvenilen yayımcılar da "VB projelerine erişimine güven" seçeneğini işaretleyiniz.
 
=KOMBİNASYON(49;6) = 13.983.816 sonuç.

Kod:
Sub Listele()
Dim X As Byte, z As Long
Dim a As Byte, b As Byte, c As Byte, d As Byte, e As Byte, f As Byte, g As Byte
 
X = 49
 
For a = 1 To X
    For b = a + 1 To X
        For c = b + 1 To X
            For d = c + 1 To X
                For e = d + 1 To X
                    For f = e + 1 To X
                            z = z + 1
                            Cells(z, 1) = a
                            Cells(z, 2) = b
                            Cells(z, 3) = c
                            Cells(z, 4) = d
                            Cells(z, 5) = e
                            Cells(z, 6) = f
                    Next f
                Next e
            Next d
        Next c
    Next b
Next a
 
End Sub
 
13 mesajı inceledim debug hatasını da hallettim ama sütün sayısı yatmiyor ve ben o şekilde istemiyorum.Ardışık olmayacak...
@anemos sizinkiside aynı mantıkta..Karışık vermeli ve excelin satırları bittikçe yeni sayfa/sütuna geçmeli
 
@htsumer,
tam olarak ne istediğinizi anlıyamadım. bir örnek dosya gönderebilir misiniz?
 
Karışık nasıl olur bilemiyorum ama sayıları birleştirerek her kolona 60.000 olasılık yazdırdım.

Ne işe yarıyacağını da merak ettim doğrusu.

Kod:
Sub Hesapla()
Adet = 49
Kolon = 1
Sıra = 1
Satır = 1
For s1 = 1 To Adet - 5
    For s2 = s1 + 1 To Adet - 4
        For s3 = s2 + 1 To Adet - 3
            For s4 = s3 + 1 To Adet - 2
                For s5 = s4 + 1 To Adet - 1
                    For s6 = s5 + 1 To Adet - 0
 
                        Cells(Satır, Kolon).Value = Sıra & "--) " & _
                                s1 & "-" & s2 & "-" & s3 & "-" & _
                                s4 & "-" & s5 & "-" & s6
                        Sıra = Sıra + 1
                        Satır = Satır + 1
                        If Satır > 60000 Then
                            Satır = 1
                            Kolon = Kolon + 1
                        End If
 
                    Next s6
                Next s5
            Next s4
        Next s3
    Next s2
Next s1
Mesaj = "HESAPLAMA İŞLEMİ TAMAMDIR "
End Sub
 
Daha açık yazayım..

Örnek TC Kimlik,Hazır kart şifreleri gibi sayılar 5646587 gibi bunu bir sayı altı veya bir sayı üstü yok.Şifreleme komb.
bir sayımız var

493261 bu sayının

493260
493259
493258 gibi yazıldığında ulaşılamayacak.Veya 493261, 493262 üstlerindeki olasılığı denk gelmeyecek..

Sayın YESERTENER,

Bu 6'lı şifrelemeyi bir çalışmaya uyarlayacağım.Verdiğiniz kodu uyguladım
1--) 1-2-3-4-5-6
2--) 1-2-3-4-5-7
3--) 1-2-3-4-5-8
4--) 1-2-3-4-5-9
5--) 1-2-3-4-5-10
şeklinde veriyor oysaki şöyle olmalı..

1'de 49'a kadar sayılar içinden 6 sıralı 16-23-45-31-13-2 gibi sayı üretecek ama bu sayının
16-23-45-31-13-3 yada 16-23-45-31-13-4 sayılarını .altını veya üstündeki sayıları kullanmayacak.

Başka bir örnek
16-23-45-31-13-3 bu sayıyı verdi diyelim

16-23-16-31-13-3 dahi (16 ortaya eklendi.. ) gelmeyecek..Aynı TC kimlik nosu gibi..Bir altı veya bir üstü yazıldığında o sayıdan olmayacak..Bu bir tür şifreleme komb.gibi..

Sanırım yeteri kadar örnek yazdım..

(Site modlarına Not:Bu yazdığım editörde Kalın harf kırmızı kod vs..tuşları nedense yok..)
 
Sorumu şu şekilde tekrar toparlamak istiyorum..

1-2-3-4-5-6 gibi sayılar asla yanyana gelmeyecek.

1 varsa yanına mutlaka 49 sayıların içinden bir tanesi gelecek 2 gelemeycek ve bu gelen örnek 45 olsun

1-45 ve bunun yanına 1-45- olarak 46 gelmeyecek 33 gibi bir denk gelen sayı gelecek..

nasıl anlatacağımı bilemiyorum ama ardışık olmayacak.her sayının yanına o sayın altı veya üstü gelmeyecek..
 
merhaba
siz sanırım sayısal loto için bişeyler hazırlıyorsunuz ama sisteminizi anlatmak istemiyorsunuz :)
 
Evet aynen öyle ..:)
Ama o kadar kolona param olsa zaten oynamam:) Buda doğru değilmi?
 
merhaba
ardışık sayı olmayacak, tek sayılar olmayacak, çit sayılar olmayacak vs vs ;)
 
evet aynen öyle
kombinasyon dedim zaten
 
site içerisinden bir örnek

istediğin böyle bir şey mi
 
tşk ama tam olarak istediğim gibi değil
satırlara dökmüyor ve tahmini veriyor
 
Sayın EEkurt

verdiğiniz linki tekrar inceledim sanırım olabilir ama
her çıkan sayıyı ayrı bir sayfada ayrı sütunlarda listelemesi halinde işime yarayabilir..Tabi o üretilen sayılar içinde birbirinin aynısı olmaz herhalde..
 
siz bir kerede kaç kolan hazırlayacaksınız?
aynı anda tüm alternatifler listelendi olmuyor?

rastgele 8 kolon için mi hazırlamak istiyorsunuz?

mesal 8 kolon oynandı oynanan 48 rakamın hiç biri birbirinin yanı olmayacak gibi mi?
 
Sayın hsayar,

Ya ben anlatamıyorum..K.Bakmayın..

Şimdi 49 tane sayı içinden 6 tane rakam yazılacak değilmi?..Bu rakamları kombinasyona göre sayın Haluk hocam yapmış zaten ama ordaki komb.olması gereken kombinasyon..

Benim parametrelerim yada kıstaslarım şöyle,

Rakamlar 6 lı olarak 49 sayılar dahilinde ve ardışık olmayan sayıları listelemeli.

Sizin sorduğunuz şekilde kolon hesabı yok.49 adet sayının yani 1 den 49 a kadar sayıların 6 lı komöbinasyonu olacak..

EErkut'un verdiği çalışmada güzel üretiyor ama onları rastgele üretiyor bu adı üzerinde rastgele sayılar.Bu sayılar kombinasyon şeklinde ve rastgele olacak..Kafayı yicem şimdi anlatırken..

12-15-23-27-26-33 sayısını ürettiği zaman bu sayıyı bir daha üretmeyecek ve içindeki 23 veya diğer sayıalrın sayısının altı veya üstü yanyana gelemeycek..
Ben kafayı yedim nerdeyse tek eksiğim matematiğin koda dönüşümündeki matematik..
 
Geri
Üst