for文中で30行1列の関数から指定した要素を抜き出そうとすると「インデックスが配列要素数(1)を超えています」というエラーが出ます。
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
H = [1:1:10]';
count_number = 1;
for loop = 0:10
H = H(count_number)
count_number = count_number + 1;
のようなプログラムを組んでいますが,エラーコードに「インデックスが配列要素数 (1) を超えています。」と表示されます。
for文内でH = H(count_number) のようにある特定の値を繰り返し次々と取り出すにはどうしたら良いでしょうか
0 commentaires
Réponse acceptée
Atsushi Ueno
le 9 Déc 2021
Modifié(e) : Atsushi Ueno
le 9 Déc 2021
> for文内でH = H(count_number) のようにある特定の値を繰り返し次々と取り出すにはどうしたら良いでしょうか
Hの要素にアクセスした結果H(count_number)をHに代入すると、Hがスカラ値として上書きされてしまうので、他の変数に結果を代入すればやりたい事が実現します。ここではHの代わりにGに代入しました。
またfor loop=0:10だと11回実行され、11回目にH(11)にアクセスする為エラーが発生します。
H = [1:1:10]';
count_number = 1;
for loop = 0:10
G = H(count_number) % ← 他の変数に結果を代入します
count_number = count_number + 1;
end
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Matrix Indexing dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!