Index in position 1 exceeds array bounds (must not exceed 1). How do I fix this error?

1 回表示 (過去 30 日間)
n = input('Number of dice: '); %number of dice being rolled
numberOfExperiments = input('Number of trials: ');
faces = input('Number of faces: ');
a = {'G1' 'g1'}
b = {'G2' 'g2'}
X = randn(numberOfExperiments, 2)
for rows = 1:numberOfExperiments
i =randperm(length(a),1)
A=a(i)
B=b(i)
Anew = cell2mat(A)
Bnew = cell2mat(B)
for cols = 1:2
C(:,cols) = X(Anew, Bnew)
end
C(rows, :) = X(Anew, Bnew)
end
  1 件のコメント
Image Analyst
Image Analyst 2020 年 7 月 19 日
What is the purpose of a and b? And what is faces used for? You never use it. Put in some comments to explain it to us. Often if you put in comments, you'll realize the error on your own.

サインインしてコメントする。

採用された回答

SAA
SAA 2020 年 7 月 19 日
Anew and Bnew are not integers, you define a and b as cells with chars then use cell2mat but they are still not integers so you'll get an error. You can't use chars for indexing.
Also just like Image Analyst suggested, comments would help help both you and the person that's tryin to help 😃😄

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeGraph and Network Algorithms についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by