Permutasi dan Kombinasi dengan pyhton
Nama: Lyla Putri Deviana
NPM: 20316036
Prodi: Teknik Komputer
Tugas: Statistika Probabilitas (Pertemuan 6)
Apa itu Permutasi
Permutasi adalah konsep tentang bagaimana cara menggabungkan objects dalam suatu grub angka (array/list) dengan memperhatikan urutan, contohnya seperti ini
1 | {1,2,3}, {2,3,1}, {3,1,2} |
ketiga contoh diatas tidak lah sama karena ketiganya tidak memperhatikan urutan, sebagai gambaran kita akan menggunakan studi kasus cerita, seperti ini
Ada sebuah kotak berisi 3 bola masing-masing berwarna merah, hijau dan biru. Jika seorang anak ditugaskan untuk mengambil 2 bola secara acak dan urutan pengambilan diperhatikan, ada berapa permutasi yang terjadi?
contoh soal permutasi
dari kasus diatas dapat kita tangkap bahwa
Ada 6 permutasi yaitu; M-H, M-B, H-M, H-B, B-M dan B-H.
jawaban soal permutasi
kali ini lanjut untuk mengenal apa itu kombinasi
Mengenal Apa itu Kombinasi
lawan dari permutasi adalah kombinasi , nah kombinasi adalah cara menggabungkan objects dalam suatu grub angka (array/list) tanpa memperhatikan urutan, contohnya seperti ini
1 | {1,2,3}, {2,3,1}, {3,1,2} |
sama seperti sebelumnya, kita menggunakan soal cerita seperti ini
Seorang anak hanya diperbolehkan mengambil dua buah amplop dari tiga buah amplop yang disediakan yaitu amplop A, amplop B dan amplop C. Tentukan ada berapa banyak kombinasi untuk mengambil dua buah amplop dari tiga buah amplop yang disediakan?
soal contoh kombinasi
dari kasus ini dapat kita menyimpulkan bahwa
Ada 3 kombinasi yaitu; A-B, A-C dan B-C.
jawaban soal kombinasi
Membuat Program
nah dari rumus diatas kita bisa membuat program dari rumus diatas, kita bisa membuat program, sederhana menggunakan modul bawaan dari python
Permutasi
langkah pertama kita buat dulu bentuk dasar dari permitasi di file permutasi.py lalu isi seperti ini
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | from itertools import permutations data_list = [1, 2, 3, 4, 5] # penggunaan permutation permutasi = permutations(data_list) # cetak object print(permutasi) # loop untuk mengetahui hasil dari fungsi permutation for index, data in enumerate(list(permutasi), 1): print(f'hasil nomor: {index}. {data}') |
jika dijalankan hasilnya seperti ini
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 | hasil nomor: 1. (1, 2, 3, 4, 5) hasil nomor: 2. (1, 2, 3, 5, 4) hasil nomor: 3. (1, 2, 4, 3, 5) hasil nomor: 4. (1, 2, 4, 5, 3) hasil nomor: 5. (1, 2, 5, 3, 4) hasil nomor: 6. (1, 2, 5, 4, 3) hasil nomor: 7. (1, 3, 2, 4, 5) hasil nomor: 8. (1, 3, 2, 5, 4) hasil nomor: 9. (1, 3, 4, 2, 5) hasil nomor: 10. (1, 3, 4, 5, 2) hasil nomor: 11. (1, 3, 5, 2, 4) hasil nomor: 12. (1, 3, 5, 4, 2) hasil nomor: 13. (1, 4, 2, 3, 5) hasil nomor: 14. (1, 4, 2, 5, 3) hasil nomor: 15. (1, 4, 3, 2, 5) hasil nomor: 16. (1, 4, 3, 5, 2) hasil nomor: 17. (1, 4, 5, 2, 3) hasil nomor: 18. (1, 4, 5, 3, 2) hasil nomor: 19. (1, 5, 2, 3, 4) hasil nomor: 20. (1, 5, 2, 4, 3) hasil nomor: 21. (1, 5, 3, 2, 4) hasil nomor: 22. (1, 5, 3, 4, 2) hasil nomor: 23. (1, 5, 4, 2, 3) hasil nomor: 24. (1, 5, 4, 3, 2) hasil nomor: 25. (2, 1, 3, 4, 5) hasil nomor: 26. (2, 1, 3, 5, 4) hasil nomor: 27. (2, 1, 4, 3, 5) hasil nomor: 28. (2, 1, 4, 5, 3) hasil nomor: 29. (2, 1, 5, 3, 4) hasil nomor: 30. (2, 1, 5, 4, 3) hasil nomor: 31. (2, 3, 1, 4, 5) hasil nomor: 32. (2, 3, 1, 5, 4) hasil nomor: 33. (2, 3, 4, 1, 5) hasil nomor: 34. (2, 3, 4, 5, 1) hasil nomor: 35. (2, 3, 5, 1, 4) hasil nomor: 36. (2, 3, 5, 4, 1) hasil nomor: 37. (2, 4, 1, 3, 5) hasil nomor: 38. (2, 4, 1, 5, 3) hasil nomor: 39. (2, 4, 3, 1, 5) hasil nomor: 40. (2, 4, 3, 5, 1) hasil nomor: 41. (2, 4, 5, 1, 3) hasil nomor: 42. (2, 4, 5, 3, 1) hasil nomor: 43. (2, 5, 1, 3, 4) hasil nomor: 44. (2, 5, 1, 4, 3) hasil nomor: 45. (2, 5, 3, 1, 4) hasil nomor: 46. (2, 5, 3, 4, 1) hasil nomor: 47. (2, 5, 4, 1, 3) hasil nomor: 48. (2, 5, 4, 3, 1) hasil nomor: 49. (3, 1, 2, 4, 5) hasil nomor: 50. (3, 1, 2, 5, 4) hasil nomor: 51. (3, 1, 4, 2, 5) hasil nomor: 52. (3, 1, 4, 5, 2) hasil nomor: 53. (3, 1, 5, 2, 4) hasil nomor: 54. (3, 1, 5, 4, 2) hasil nomor: 55. (3, 2, 1, 4, 5) hasil nomor: 56. (3, 2, 1, 5, 4) hasil nomor: 57. (3, 2, 4, 1, 5) hasil nomor: 58. (3, 2, 4, 5, 1) hasil nomor: 59. (3, 2, 5, 1, 4) hasil nomor: 60. (3, 2, 5, 4, 1) hasil nomor: 61. (3, 4, 1, 2, 5) hasil nomor: 62. (3, 4, 1, 5, 2) hasil nomor: 63. (3, 4, 2, 1, 5) hasil nomor: 64. (3, 4, 2, 5, 1) hasil nomor: 65. (3, 4, 5, 1, 2) hasil nomor: 66. (3, 4, 5, 2, 1) hasil nomor: 67. (3, 5, 1, 2, 4) hasil nomor: 68. (3, 5, 1, 4, 2) hasil nomor: 69. (3, 5, 2, 1, 4) hasil nomor: 70. (3, 5, 2, 4, 1) hasil nomor: 71. (3, 5, 4, 1, 2) hasil nomor: 72. (3, 5, 4, 2, 1) hasil nomor: 73. (4, 1, 2, 3, 5) hasil nomor: 74. (4, 1, 2, 5, 3) hasil nomor: 75. (4, 1, 3, 2, 5) hasil nomor: 76. (4, 1, 3, 5, 2) hasil nomor: 77. (4, 1, 5, 2, 3) hasil nomor: 78. (4, 1, 5, 3, 2) hasil nomor: 79. (4, 2, 1, 3, 5) hasil nomor: 80. (4, 2, 1, 5, 3) hasil nomor: 81. (4, 2, 3, 1, 5) hasil nomor: 82. (4, 2, 3, 5, 1) hasil nomor: 83. (4, 2, 5, 1, 3) hasil nomor: 84. (4, 2, 5, 3, 1) hasil nomor: 85. (4, 3, 1, 2, 5) hasil nomor: 86. (4, 3, 1, 5, 2) hasil nomor: 87. (4, 3, 2, 1, 5) hasil nomor: 88. (4, 3, 2, 5, 1) hasil nomor: 89. (4, 3, 5, 1, 2) hasil nomor: 90. (4, 3, 5, 2, 1) hasil nomor: 91. (4, 5, 1, 2, 3) hasil nomor: 92. (4, 5, 1, 3, 2) hasil nomor: 93. (4, 5, 2, 1, 3) hasil nomor: 94. (4, 5, 2, 3, 1) hasil nomor: 95. (4, 5, 3, 1, 2) hasil nomor: 96. (4, 5, 3, 2, 1) hasil nomor: 97. (5, 1, 2, 3, 4) hasil nomor: 98. (5, 1, 2, 4, 3) hasil nomor: 99. (5, 1, 3, 2, 4) hasil nomor: 100. (5, 1, 3, 4, 2) hasil nomor: 101. (5, 1, 4, 2, 3) hasil nomor: 102. (5, 1, 4, 3, 2) hasil nomor: 103. (5, 2, 1, 3, 4) hasil nomor: 104. (5, 2, 1, 4, 3) hasil nomor: 105. (5, 2, 3, 1, 4) hasil nomor: 106. (5, 2, 3, 4, 1) hasil nomor: 107. (5, 2, 4, 1, 3) hasil nomor: 108. (5, 2, 4, 3, 1) hasil nomor: 109. (5, 3, 1, 2, 4) hasil nomor: 110. (5, 3, 1, 4, 2) hasil nomor: 111. (5, 3, 2, 1, 4) hasil nomor: 112. (5, 3, 2, 4, 1) hasil nomor: 113. (5, 3, 4, 1, 2) hasil nomor: 114. (5, 3, 4, 2, 1) hasil nomor: 115. (5, 4, 1, 2, 3) hasil nomor: 116. (5, 4, 1, 3, 2) hasil nomor: 117. (5, 4, 2, 1, 3) hasil nomor: 118. (5, 4, 2, 3, 1) hasil nomor: 119. (5, 4, 3, 1, 2) hasil nomor: 120. (5, 4, 3, 2, 1) |
jadi dari contoh kasus diatas terdapat 120 permutasi bedasarkan data yang kita input dalam variabel data_list mari kita kupas satu persatu
pertama kita import fungsi permutation dari modul itertools
1 | from itertools import permutations |
kemudian kita definisikan list yang akan kita hitung permutasinya menggunakan fungsi permutations
1 2 3 4 | data_list = [1, 2, 3, 4, 5] # penggunaan permutation permutasi = permutations(data_list) |
nah dari kode diatas variabel permutasi akan berisi object dari permutations(data_list) jika kita cetak menggunakan fungsi print hasilnya seperti ini
1 | <itertools.permutations object at 0x7fc49ead8860> |
nah untuk mengetahui hasil dari permutasinya kita perlu convert dulu menjadi list kemudian kita lakukan looping
1 2 | for index, data in enumerate(list(permutasi), 1): print(f'hasil nomor: {index}. {data}') |
Kombinasi
sekarang masuk ke kasus yang kedua yaitu kombinasi, sama seperti kasus sebalumnya kita akan menggunakan fungsi bawaan dari python, yaitu combinations penerapanya seperti ini
1 2 3 4 5 6 7 8 9 10 11 12 13 | from itertools import combinations data_list = [1, 2, 3, 4, 5] kombinasi = combinations(data_list, r=2) # cetak objects print('object kombinasi', kombinasi) # Cetak Hasil for index, data in enumerate(list(kombinasi), 1): print(f'kombinasi ke: {index}. {data}') |
jika kita jalankan hasilnya akan seperti ini
1 2 3 4 5 6 7 8 9 10 | kombinasi ke: 1. (1, 2) kombinasi ke: 2. (1, 3) kombinasi ke: 3. (1, 4) kombinasi ke: 4. (1, 5) kombinasi ke: 5. (2, 3) kombinasi ke: 6. (2, 4) kombinasi ke: 7. (2, 5) kombinasi ke: 8. (3, 4) kombinasi ke: 9. (3, 5) kombinasi ke: 10. (4, 5) |
sama seperti sebelumnya yang kita konversi adalah object dari kombinasi yang tersimpan dalam variabel kombinasi yang kita conversi menjadi list dan kita looping
1 2 3 | # Cetak Hasil for index, data in enumerate(list(kombinasi), 1): print(f'kombinasi ke: {index}. {data}') |
Link Website:
- Universitas Teknokrat Indonesia
- Fakultas Ekonomi dan Bisnis
- Fakultas Teknik dan Ilmu Komputer
- Fakultas Sastra dan Ilmu Pendidika
- Kemahasiswaan Teknokrat
- Online Learning
- Prodi Informatika
- Prodi Sistem Informasi
- Prodi Teknologi Informasi
- Prodi Teknik Sipil
- Prodi Sistem Informasi Akuntansi
- Prodi Teknik Elektro
- Prodi Teknik Komputer
Website Fakultas dan Kemahasiswaan
https://feb.teknokrat.ac.id - https://ftik.teknokrat.ac.id
https://fsip.teknokrat.ac.id - https://kemahasiswaan.teknokrat.ac.id
Online Learning :
https://spada.teknokrat.ac.id
Website Program Studi FTIK :
http://if.ftik.teknokrat.ac.id http://si.ftik.teknokrat.ac.id
http://ti.ftik.teknokrat.ac.id http://ts.ftik.teknokrat.ac.id
http://sia.ftik.teknokrat.ac.id http://te.ftik.teknokrat.ac.idt.ac.id
http://tk.ftik.teknokrat.ac.idt.ac.id
Website Program Studi FSIP:
http://po.fsip.teknokrat.ac.id http://sastrainggris.fsip.teknokrat.ac.id
http://pbi.fsip.teknokrat.ac.id http://matematika.fsip.teknokrat.ac.id
Website Program Studi FEB :
http://manajemen.feb.teknokrat.ac.id
http://akuntansi.feb.teknokrat.ac.id

Komentar
Posting Komentar