Как расчитать функцию Лапласса для параметра Z - VB

Узнай цену своей работы

Формулировка задачи:

Собственно само задание: Эксперты оценили поздние сроки окончания работ, как 25% опоздания по каждой из них, а ранние – как 20% опережения, с учетом нормального закона распределения оценок работ. Рассчитать вероятность окончания всего проекта в срок– 30 дней. Вот сетевая модель. Вложение 336594 Но вопрос не в этом. Это так, в качестве дополнения. Вопрос в том, как расчитать функцию Лапласса для параметра Z. Вот код:
Листинг программы
  1. Private Sub Form_Load()
  2. Dim WorkNorm(8, 8) As Double
  3. Dim WorkOpt(8, 8) As Double
  4. Dim WorkPes(8, 8) As Double
  5. Dim OptOcenka As Double
  6. Dim PesOcenka As Double
  7. Dim Otkloneniye(8, 8) As Double
  8. Dim SredKvadOtkl As Double
  9. Dim Dispersia As Double
  10. Dim NV(8, 8) As Double
  11. Dim MatWait As Double
  12. Dim Z As Double
  13. Dim Ver As Double
  14. Dim TDirect As Double
  15. WorkNorm(1, 2) = 4: WorkNorm(1, 3) = 3: WorkNorm(1, 4) = 5: WorkNorm(2, 5) = 7: WorkNorm(3, 6) = 8: WorkNorm(4, 7) = 9
  16. WorkNorm(2, 6) = 10: WorkNorm(4, 6) = 12: WorkNorm(6, 8) = 10: WorkNorm(5, 8) = 8: WorkNorm(1, 2) = 11
  17. OptOcenka = 0.2
  18. PesOcenka = 0.25
  19. TDirect = 30
  20. For i = 1 To 8
  21. For j = 1 To 8
  22. WorkOpt(i, j) = WorkNorm(i, j) - WorkNorm(i, j) * OptOcenka
  23. Next j
  24. Next i
  25.  
  26. For i = 1 To 8
  27. For j = 1 To 8
  28. WorkPes(i, j) = WorkNorm(i, j) + WorkNorm(i, j) * PesOcenka
  29. Next j
  30. Next i
  31. For i = 1 To 8
  32. For j = 1 To 8
  33. Otkloneniye(i, j) = 0.028 * ((WorkPes(i, j) - WorkOpt(i, j)) ^ 2)
  34. Next j
  35. Next i
  36. SredKvadOtkl = 0
  37. For i = 1 To 8
  38. For j = 1 To 8
  39. SredKvadOtkl = SredKvadOtkl + Otkloneniye(i, j)
  40. Next j
  41. Next i
  42. Dispersia = Sqr(SredKvadOtkl)
  43.  
  44. For i = 1 To 8
  45. For j = 1 To 8
  46. NV(i, j) = (WorkOpt(i, j) + 4 * WorkNorm(i, j) + WorkPes(i, j)) / 6
  47. Next j
  48. Next i
  49. MatWait = NV(1, 4) + NV(4, 6) + NV(6, 8)
  50. Z = Round(((TDirect - MatWait) / Dispersia), 8)
  51. Ver = ÔóГ*êöèÿ_Г‹Г*ГЇГ«Г*Г±Г±Г*(Z)
  52. MsgBox Z 'Ver
  53. End Sub
  54.  
  55. Public Function ÔóГ*êöèÿ_Г‹Г*ГЇГ«Г*Г±Г±Г*(a As Double) As Double
  56. Dim h As Double
  57. Dim n As Double
  58. Dim Г€Г*ГІГҐГЈГ°Г*ëë As Double
  59. Dim e As Double
  60. Dim sum As Double, F0 As Double, Fn As Double
  61. Dim pi As Double
  62. Dim ÊîýôôèöèåГ*ГІ As Double
  63. pi = 3.1415926535
  64. e = 2.71828182845905
  65. n = 10
  66. h = Round(((a - 0) / n), 8)
  67. For i = 1 To n - 1
  68. sum = sum + e ^ (-0.5 * (i) ^ 2)
  69. Next i
  70. F0 = e ^ (-0.5 * 0 ^ 2)
  71. Fn = e ^ (-0.5 * 1000 ^ 2)
  72. Г€Г*ГІГҐГЈГ°Г*ëë = Round(((h * ((F0 + Fn) / 2 + sum) + (((a - 0) * h ^ 2) / (-12)))), 8)
  73. ÊîýôôèöèåГ*ГІ = Round(((1 / Sqr(2 * pi))), 8)
  74. ÔóГ*êöèÿ_Г‹Г*ГЇГ«Г*Г±Г±Г* = ÊîýôôèöèåГ*ГІ * Г€Г*ГІГҐГЈГ°Г*ëë
  75. End Function
Формула расчета функции Лапласса:Вложение 336601 дело в том, что интеграл я расчиывал по методу трапеций. Вот по этой формуле: Вложение 336598 Но в этой формуле нужно расчитать вот это число:Вложение 336599 а я не знаю что это за f с двумя штрихами, и расчитал без него. И расчет оказался не правильным(( Посмотрите пожалуйста код, подскажите, может ошибка не в этом??
не пойму, куда делись вложенные картинки, модератор?
Короче вот заново. Сетевая модель: Формула расчета функции Лапласса: дело в том, что интеграл я расчиывал по методу трапеций. Вот по этой формуле: Но в этой формуле нужно расчитать вот это число:

Решение задачи: «Как расчитать функцию Лапласса для параметра Z»

textual
Листинг программы
  1. Public Function Метод_Трапеций(a As Double, b As Double) As Double
  2. Dim h As Double
  3. Dim n As Double
  4. Dim e As Double
  5. Dim sum As Double, F0 As Double, Fn As Double, Fx As Double
  6.  
  7.  
  8. e = 2.71828182845905
  9. n = 1000
  10. h = Round(((a - b) / n), 8)
  11.  
  12. sum = 0
  13. For i = 1 To n - 1
  14.   Fx = b + i * h
  15.   sum = sum + e ^ (-Fx * Fx / 2)
  16. Next i
  17.  
  18. F0 = e ^ (-0.5 * 0 ^ 2)
  19. Fn = e ^ (-0.5 * n ^ 2)
  20.  
  21. Метод_Трапеций = Round(((h * ((F0 + Fn) / 2 + sum))), 8)
  22.  
  23. End Function
  24.  
  25. Public Function Лапласс(a As Double) As Double
  26. Dim pi As Double
  27. pi = 3.1415926535
  28.  
  29.   Лапласс = Round((Метод_Трапеций(a, 0) / Sqr(2 * pi)), 8)
  30.  
  31. End Function

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 3.429 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы