input variable in evalin

3 visualizaciones (últimos 30 días)
kman
kman el 31 de Oct. de 2017
Comentada: Walter Roberson el 31 de Oct. de 2017
y=double(evalin(symengine, 'binomial(2634,1)*binomial(1360*125-2634, 125-1)/binomial(1360*125, 125)'))
The above gives sume number y. but instead of 1 I want variable x in the above equation.
function y=f(x)
y=double(evalin(symengine, 'binomial(2634,x)*binomial(1360*125-2634, 125-x)/binomial(1360*125, 125)'))
end
Of course this gives an error. How can I make function using the input variable x? Thank you.

Respuesta aceptada

Birdman
Birdman el 31 de Oct. de 2017
x=sym('x');
y=evalin(symengine, 'binomial(2634,x)*binomial(1360*125-2634, 125-x)/binomial(1360*125, 125)','x');
y=double(vpa(subs(y,x,1)))
  5 comentarios
Birdman
Birdman el 31 de Oct. de 2017
Hi Stephen,
I did not recommend him to use eval function. Thank you for your attention once more.
Walter Roberson
Walter Roberson el 31 de Oct. de 2017
There are some symbolic tasks that still need evalin(symengine) or feval(symengine), but those are somewhat advanced tasks.

Iniciar sesión para comentar.

Más respuestas (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!