morz
Сообщение
#3174 11.5.2007, 14:12
Подскажите с программой пожалуйста!
Вычислите методом Монте-Карло определённый интеграл от функции (2x-3)/(x^2+2) на отрезке [2;5]. Ответ округлите до 2 знаков после запятой.
AlexDemche
Сообщение
#3180 11.5.2007, 21:25
Ну хорошо, задача ясна. А подсказать-то что?
morz
Сообщение
#3198 12.5.2007, 11:00
ну значит я сделал вот так
include Math
def f(x)
return (2*x-3)/(x*x+2)
end
puts "Vvedite koli4estvo to4ek"
n=gets.to_i
h=0.29
a=2
b=5
S=(b-a)*h
ni=0
for i in 1..n
x=(b-a)*rand( )+a
y=n*rand( )
if f(x)>y then
ni+=1
end
def round_f(x,k)
return(x*10**k).round.to_f/10**k
end
end
puts "I=#{round_f(S,2)}"
По идее программа должна генерировать каждый раз разные ответы а она всё время выводит одно и то же, прошу посмотреть есть ли у меня ошибки.