Advertisement
Artashes

Modeling5

Mar 8th, 2019
110
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.75 KB | None | 0 0
  1. import random
  2.  
  3. a_m = 25
  4. a_sig = 5
  5. b_m = 30
  6. b_sig = 3
  7. n = 1000
  8.  
  9.  
  10. def get_random(m, sig):
  11.     sum_ = 0
  12.     for _ in range(0, 12):
  13.         sum_ += random.uniform(0, 1)
  14.     return m + sig * (sum_ - 6)
  15.  
  16.  
  17. def get_random_c():
  18.     x = random.uniform(0, 1)
  19.     if x < 0.1:
  20.         return 10
  21.     elif x < 0.35:
  22.         return 20
  23.     elif x < 0.85:
  24.         return 30
  25.     else:
  26.         return 40
  27.  
  28.  
  29. res = []
  30. for _ in range(0, n):
  31.     a = get_random(a_m, a_sig)
  32.     b = get_random(b_m, b_sig)
  33.     c = get_random_c()
  34.     res.append((a + b) / c)
  35.  
  36. M = float(sum(res)) / max(len(res), 1)
  37. D = 0
  38. for el in res:
  39.     D += pow(el - M, 2)
  40.  
  41. D /= n - 1
  42.  
  43.  
  44. print("Мат ожидание: {}".format(M))
  45. print("Дисперсия: {}".format(D))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement