Info
この質問は閉じられています。 編集または回答するには再度開いてください。
方程式の複数の解をそれぞれ別の文字に代入する方法
1 回表示 (過去 30 日間)
古いコメントを表示
方程式を数値的に解いた場合の複数の解に対し,例えば小さい順にそれぞれa,b,c...というように与えるには,解をどのように扱えば良いのでしょうか.
よろしくおねがいします.
1 件のコメント
Shota Kato
2020 年 10 月 10 日
eval関数を用いることで,文字列で与えたコマンドを実行する事ができます.
方程式の解がどのような形式で保存されているかわかりませんが,
X = [10, 5, 1, 20]というようにベクトルで表されているとします.
以下のように書けばXを小さい順にa, b, c, dに与えることができます.
X = [10, 5, 1, 20];
X_sorted = sort(X);
var_list = ['a'; 'b'; 'c'; 'd'];
% アルファベット順の変数名のリストを作成したい場合,以下を使用.
% var_list = char(double('a') + [1:length(X)]');
for i = 1:length(X)
eval(char(double('a') + i - 1) + "=X_sorted(i);")
end
ただ,eval関数は好ましくない(https://jp.mathworks.com/help/matlab/matlab_prog/string-evaluation.html)ので,別の方法で代替することをおすすめします.
回答 (0 件)
この質問は閉じられています。
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!