Advertisement
Guest User

Untitled

a guest
May 24th, 2018
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. program array_func
  2. real, dimension(0:50) :: x
  3. real, dimension(0:50) :: y
  4. integer :: i=0, n=50, max_i, min_i
  5. real :: h, a=0, b=1, m, d, plus, minus, e, k
  6. h=(b-a)/n
  7. do while (i<=n)    !задание массива x
  8.     x(i) = a+i*h
  9.     i = i+1
  10. end do             !задание массива x
  11. i = 0              !задание массива y
  12. do while (i<=n)    
  13.     y(i) = FUNC(x(i))
  14.     i = i+1
  15. end do             !задание массива y
  16. i = 1              !поиск максимального элемента
  17. m = y(0)
  18. max_i = 0
  19. do while (i<=n)
  20.     if (m < y(i)) then
  21.         m = y(i)
  22.         max_i = i
  23.     end if
  24.     i = i+1
  25. end do
  26. print*, "maximalniy element massiva", m
  27. print*, "index maximalnogo elementa", max_i      !поиск максимального элемента
  28. i = 1                                            !поиск минимального элемента
  29. m = y(0)
  30. min_i = 0
  31. do while (i<=n)
  32.     if (m > y(i)) then
  33.         m = y(i)
  34.         min_i = i
  35.     end if
  36.     i = i+1
  37. end do
  38. print*, "minimalniy element massiva", m
  39. print*, "index minimalnogo elementa", min_i      !поиск минимального элемента
  40. i = 0                                            !поиск значений
  41. m = 0
  42. do while (i<=n)
  43.     m = m + y(i)
  44.     i = i+1
  45. end do
  46. e = m/(n+1)
  47. print*, "srednee znachenie", e
  48. m = 0
  49. i = 0
  50. do while (i<=n)
  51.     m = m + (y(i))**2
  52.     i = i+1
  53. end do
  54. d = m/(n+1)
  55. print*, "sredniy quadrat", d
  56. d = sqrt(d)
  57. print*, "srednequadratichnoe znachenie", d       !поиск значений
  58. i = 0                                             !относитльное количество+и-
  59. d = 0                                            
  60. m = 0
  61. do while (i<=n)
  62.     if (y(i) < 0) then
  63.         d = d+1
  64.     end if
  65.     if (y(i) > 0) then
  66.         m = m+1
  67.     end if
  68.     i = i+1
  69. end do
  70. plus = m/(n+1)
  71. minus = d/(n+1)
  72. print*, "otnositelnoe chislo pologitelnih", plus
  73. print*, "otnositelnoe chislo otrizatelnih", minus !относитльное количество+и-
  74. m = 0                                             !поиск среднеквадратичного отклонения
  75. i = 0
  76. do while (i<=n)
  77.     m = m + (y(i)-e)**2
  78.     i = i+1
  79. end do
  80. k = sqrt(m/(n+1))
  81. print*, "srednequadratichnoe otklonenie", k       !поиск среднеквадратичного отклонения
  82. end program
  83.  
  84. real function FUNC(x)               !задание функции
  85. real :: x
  86. FUNC = (1-x)**2-tan(pi*x**2/4)**2
  87. return
  88. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement