Advertisement
Guest User

Untitled

a guest
Mar 18th, 2019
274
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.88 KB | None | 0 0
  1. import random
  2.  
  3.  
  4.  
  5.  
  6. def upgrading(level,durability):
  7. chance=random.randint(0, 10000)
  8.  
  9. if(level==0):
  10. if chance >= 2000:
  11. level=level+1
  12. elif level==1:
  13. if chance >= 6000:
  14. level = level + 1
  15. else:
  16. level = level - 1
  17. durability=durability-5
  18. elif level==2:
  19. if chance >= 9500:
  20. level = level + 1
  21. else:
  22. level = level - 1
  23. durability = durability - 5
  24. return (level,durability)
  25.  
  26.  
  27.  
  28. no_more_rings=0
  29.  
  30. def how_many_upgrades():
  31. i=0
  32. level=0
  33. durability=100
  34. number_of_rings_needed=0
  35. while(level!=3):
  36. level=upgrading(level,durability)[0]
  37. durability=upgrading(level,durability)[1]
  38. if(durability==0):
  39. level=0
  40. number_of_rings_needed += 1
  41. if number_of_rings_needed>6:
  42. global no_more_rings
  43. no_more_rings=no_more_rings+1
  44. i=i+1
  45.  
  46. return (i,number_of_rings_needed)
  47.  
  48. min_tries=10000
  49. max_tries=0
  50. def how_many_tries_on_average():
  51. sum = 0
  52. sum_2=0
  53. for i in range(0, sample_size):
  54. x=how_many_upgrades()[0]
  55. sum = sum + x
  56. sum_2=sum_2+ how_many_upgrades()[1]
  57. global min_tries
  58. global max_tries
  59.  
  60. if x<min_tries:
  61. min_tries=x
  62. if x>max_tries:
  63. max_tries=x
  64.  
  65.  
  66. average = sum / sample_size
  67. average_2=sum_2/sample_size
  68. print("you need " + str(average) + " tries on average to get TRI")
  69. print("you need " + str(average_2) + " rings on average to get TRI")
  70.  
  71. no_more_rings_48=0
  72.  
  73. def do_i_get_tri():
  74. tries=48
  75. level=0
  76. durability=100
  77. number_rings=6
  78. for i in range(0,tries):
  79. level=upgrading(level,durability)[0]
  80. if(durability==0):
  81. level=0
  82. number_rings=number_rings-1
  83. if number_rings==0:
  84. global no_more_rings_48
  85. no_more_rings_48+=1
  86. return 0
  87.  
  88. if(level==3):
  89. return 1
  90. else:
  91. return 0
  92.  
  93.  
  94.  
  95.  
  96. def chance_to_get_tri_in_48_tries():
  97.  
  98. sum=0
  99. for i in range(0,sample_size):
  100. sum=sum+do_i_get_tri()
  101. average=sum/sample_size*100
  102. print("the chance to get TRI is " + str(average) + "%")
  103.  
  104. sample_size=1000
  105. how_many_tries_on_average()
  106. print("the minimum number of tries is:" + str(min_tries))
  107. print("the maximum number of tries is:" + str(max_tries)+" (very unlucky)")
  108.  
  109.  
  110. chance_to_get_tri_in_48_tries()
  111. print(str(no_more_rings_48)+ " times (from " + str(sample_size)+") it happened so there were no more rings(" +str(no_more_rings_48/sample_size*100)+"%) considering you have 48 tries")
  112. print(str(no_more_rings)+ " times (from " + str(sample_size)+") it happened so there were no more rings(" +str(no_more_rings/sample_size*100)+"%) considering you have infinite number of tries")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement