char データ型からシンボリック データ型への変換方法を知っている人はいますか? 私はこれを置く:
x = 0.49;
n = 22;
roundn(exp(x*49/200),n)
class ans
答えは次のとおりです。
ans =
0
ans =
char
数値を探しています。char データ型をシンボリック データ型に変換するにはどうすればよいですか?
ありがとうございました。
char データ型からシンボリック データ型への変換方法を知っている人はいますか? 私はこれを置く:
x = 0.49;
n = 22;
roundn(exp(x*49/200),n)
class ans
答えは次のとおりです。
ans =
0
ans =
char
数値を探しています。char データ型をシンボリック データ型に変換するにはどうすればよいですか?
ありがとうございました。
出力は正しいクラスです。あなたの問題はあなたの構文にあります。使用する:
class(ans)
それ以外の
class ans
1 つ目は変数のクラスをans
示し、2 つ目は文字列 "ans" のクラスを示します。
roundn(...)
からの出力をシンボリック式にしたいようです。ただし、ROUNDNはMapping Toolboxの関数のように見えるため、シンボリック変数で機能するとは思えません。
おそらく、 Symbolic ToolboxからVPAを使用することが必要だと思います。
>> eq = sym('exp(x*49/200)'); %# A symbolic equation
>> x = sym(0.49); %# A symbolic value
>> n = 22; %# Number of digits of precision
>> vpa(subs(eq,'x',x),n) %# Substitute x and evaluate
ans =
1.127553227831349194548 %# ans is a symbolic value
これはあなたが探しているものですか?
%char
expr = '1+exp(1)';
%sym
x = sym(x);
%number
xval1 = double(x);
%rounded number
xval2 = double(vpa(x, 2));
>> n = 22;
>> expr = exp(x*49/200);
>> res = subs(expr,x,0.49);
res =
1.1276
>> class(res)
res =
double
>>