Kombinasyonları Görme Tekniği?
-
Merhaba arkadaşlar,
Bütün kombinasyonları görebileceğim bir teknik arıyorum. Hangi programlama dilinde veya office programında çözüm önereceğiniz önemli değil. Hangisinde biliyorsanız artık fark etmez... Mesela C(12,2)=66, yani 12'de 2'yi 66 farklı şekilde seçebiliriz. Ben bu 66 farklı şeklin hepsini görebilmek istiyorum.
-
PHP ile:
<?php $sira = 1; for ($a=1; $a <=12; $a++) { for ($b=$a; $b <=12; $b++) { if ($a != $b) { echo $sira." -> ".$a." - ".$b."<br>"; $sira++; } } } ?>Çıktısı:
1 -> 1 - 2 2 -> 1 - 3 3 -> 1 - 4 4 -> 1 - 5 5 -> 1 - 6 6 -> 1 - 7 7 -> 1 - 8 8 -> 1 - 9 9 -> 1 - 10 10 -> 1 - 11 11 -> 1 - 12 12 -> 2 - 3 13 -> 2 - 4 14 -> 2 - 5 15 -> 2 - 6 16 -> 2 - 7 17 -> 2 - 8 18 -> 2 - 9 19 -> 2 - 10 20 -> 2 - 11 21 -> 2 - 12 22 -> 3 - 4 23 -> 3 - 5 24 -> 3 - 6 25 -> 3 - 7 26 -> 3 - 8 27 -> 3 - 9 28 -> 3 - 10 29 -> 3 - 11 30 -> 3 - 12 31 -> 4 - 5 32 -> 4 - 6 33 -> 4 - 7 34 -> 4 - 8 35 -> 4 - 9 36 -> 4 - 10 37 -> 4 - 11 38 -> 4 - 12 39 -> 5 - 6 40 -> 5 - 7 41 -> 5 - 8 42 -> 5 - 9 43 -> 5 - 10 44 -> 5 - 11 45 -> 5 - 12 46 -> 6 - 7 47 -> 6 - 8 48 -> 6 - 9 49 -> 6 - 10 50 -> 6 - 11 51 -> 6 - 12 52 -> 7 - 8 53 -> 7 - 9 54 -> 7 - 10 55 -> 7 - 11 56 -> 7 - 12 57 -> 8 - 9 58 -> 8 - 10 59 -> 8 - 11 60 -> 8 - 12 61 -> 9 - 10 62 -> 9 - 11 63 -> 9 - 12 64 -> 10 - 11 65 -> 10 - 12 66 -> 11 - 12
-
hocam istediğimiz sayıları yazmak için nasıl yapılabilir bu? mesela forma 4,5,6,7,8,9,10,45,12,46 diye 10 tane veya istediğim kadar yazacağım ve kaçlı kombinasyonların alınacağını belirteceğim şekilde nasıl yapılabilir?
-
yukarıdakini ben yazmıştım verdiğin örneğe dayanarak.
senin istediğini yapmak için şuradan Math Combinatorics paketini kullanabilirsin: http://pear.php.net/package/Math_Combinatorics/download
örnek kod:
<?php require_once 'Combinatorics.php'; $words = array('cat', 'dog', 'fish'); $combinatorics = new Math_Combinatorics; foreach($combinatorics->permutations($words, 2) as $p) { echo join(' ', $p)."\n<br>\n"; } ?>çıktısı:
cat dog dog cat cat fish fish cat dog fish fish dog
kaynak: http://stackoverflow.com/questions/9787051/php-take-all-combinations
(PHP içindir)
overbite tarafından 20/Mar/13 14:09 tarihinde düzenlenmiştir
