sprintf conflict in operations

1 次查看(过去 30 天)
receiving 5 values for Mt2b while using sprintf for Pmax (i used to to get an exact value without variables) .if i remove sprintf from Pmax i'm receiving 1 value as needed .The question being how can fix my result for Mt2b without having to remove sprintf from Pmax ?
Fa=88050;
E=2.1*10^5;
R=200;
r0=1.11*((Fa*R)/E)^(1/3)
Pmax=sprintf('%.0f\n',0.39*((Fa*E^2)/R^2)^(1/3))
Mt2b=sprintf('%.0f\n',((pi^2)/8)*0.2*Pmax*r0^3)

采纳的回答

Star Strider
Star Strider 2021-3-24
To use ‘Pmax’ in a calculation, it has to be turned back into a number.
Try this:
Mt2b=sprintf('%.0f\n',((pi^2)/8)*0.2*str2double(Pmax)*r0^3)
producing:
Mt2b =
'50709
'
.
  2 个评论
Opariuc Andrei
Opariuc Andrei 2021-3-24
thx ,i'll write that down somewhere , for future reference :)
Star Strider
Star Strider 2021-3-24
As always, my pleasure!
The online documentation reference is str2double

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 MATLAB Coder 的更多信息

产品


版本

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by