PERMUTASI DAN KOMBINASI DENGAN PHYTON

PERMUTASI DAN KOMBINASI DENGAN PYHTON


 Nama : M Athallah Permana A

Npm : 19316019

Kelas : Tk 19 A


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}')

Komentar

Postingan populer dari blog ini

Geometric Distribution & Poisson Distribution

CONDITIONAL PROBABILITAS

Desain Eksperimen