Matlabda 1 den başlayıp 27 e kadar olan sayıların kombinasyonunu nasıl yapabilirim. Benm için çok önemli, rastgele seçim yapmak istiyorum mesala 6 lı kombinasyon 2 li kombınasyon gibi ve 300 milyon kombınasyona ıhtıyacım var. Acil dönüş yaparsanız cok sevınırım
nchoosek fonksiyonu ile bunu yapabilirsiniz. Mesela 1'den 10'a kadar olan sayılardan 2'li kombinasyonları yazabilmek için aşağıdaki örneği incleyebilirsiniz.
a = uint16(1:10);
c = nchoosek(a,uint16(2))
tekrar merhaba oluşturdugumuz kombinasyonda toplam kaç kombinasyon oluşmus ve bunları gösteren kod nasıldır. Ben atadıgım degişkene size() ve imshow() yazarak yapmaya alıştım ama istedigim sonucu alamadım
Merhaba,
for döngüsü ile bütün kombinasyonarı yazdırabilirsiniz:
Örneğin 1'den 10 kadar olan bir matrisin bütün kombinasyonları oluşturabilmek için aşağıdaki kodu inceleyebilirsiniz:
for i=1:10 a = uint16(1:10); c = nchoosek(a,uint16(i)) end
tesekkür ederim ama bunu yapıyorum bana tüm kombinasyonları göstermiyor sayı 27405 bana gösterdigi kombinasyon 5034 nedeni nedir ben kombinasyonların tamamının ne oldugunu görmek istiyorum tesekkür ederim ilgilendiginiz için.
- Ben yukarıdaki örnekte 1-10 arası sayılar için bir örnek verdim. Siz bunu 27 yaptınız mı?
- 27405 bu ne sayısı? Nere yazıyor bu sayı?
- 5034 bu ne sayısı? Nere yazıyor bu sayı?
- 300 milyon kombinasyonun hepsini mi bastırmak istiyorsunuz? (Bunun çok uzun sürebileceğini ve bilgisayar hafızanızın yetmeyebileceğini hatırlatmak isterim.)
Tekrar merhaba, 27405 bu 27 nin 4 lü kombinasyonu bana command windows penceresınde sadece 5034 adet kombinasyon gösteriyor ben hepsini görmek istiyorum.
1'den 27'ye kadar olan sayıların 4'lü kombinasyonları C(27,4)=17550 tane değerden oluşur. Sağlamasını buradaki bağlantıda yapabilirsiniz. Bu işlemi MATLAB ile yapmak için ise aşağıdaki koda bakabilirsiniz. Size 17550×4 boyutunda bir matris verecektir.
a = uint16(1:27); c = nchoosek(a,uint16(4))