変数の生成 for分

조회 수: 135 (최근 30일)
洋生 福光
洋生 福光 2021년 1월 22일
댓글: 洋生 福光 2021년 1월 27일
現在変数の作成を行っているのですが
part1 = a1;
part2 = a2;
part3 = a3;
part4 = a4;
・・・
と書いていくとプログラムの行数が多くなってしまうので、for文を使って簡略化しようと思っているのですが
for i = 1 : 1 :10
' part ' + i = 'a' + i
end
という風に書きたいのですがどの様に書けばよいのでしょうか?
初歩的な質問ですみません💦

채택된 답변

Naoya
Naoya 2021년 1월 25일
変数の連番をループを使って定義する方法として eval , num2str を使う方法があります。
eval は 指定した文字列を実行する関数となります。
num2str は数字を文字列に変更するコマンドとなります。
<実行例>
for n = 1:5
str = ['part',num2str(n),'=a',num2str(n),';'];
eval(str)
end
※ なお、通し番号つきの変数(A1, A2,...,An)については、eval 関数を使って定義する方法よりも、構造体やセル配列などを用いて 1つの変数として管理する方法が推奨されています。
参考情報として以下記事が参照できます。
  댓글 수: 1
洋生 福光
洋生 福光 2021년 1월 27일
分かりやすい回答ありがとうございます。

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 文字と文字列에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!