In an assignment A(I) = B, the number of elements in B and I must be the same. this is the error i am getting

1 回表示 (過去 30 日間)
hi i am trying to assign few values like this "for k=1:1:12 rh(k)=[200 300 400 400 900 1300 1350 1300 1000 700 650 350]; end"
the error i am getting is In an assignment A(I) = B, the number of elements in B and I must be the same. i have to assign rh(1)=200, rh(2)= 300 and so on till rh(12)=350. can anyone please help me?

採用された回答

Azzi Abdelmalek
Azzi Abdelmalek 2013 年 10 月 25 日
You don't need a for loop for that
rh=[200 300 400 400 900 1300 1350 1300 1000 700 650 350];
  7 件のコメント
trilochan
trilochan 2013 年 10 月 25 日
thank you for helping and sorry for confusing you

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

その他の回答 (1 件)

Zack Peters
Zack Peters 2013 年 10 月 24 日
Hi Trilochan,
MATLAB is a powerful resource for matrix indexing operations. Rather than loop through and assign each element of the array to each element of variable 'rh' why don't you try the following:
rh(1:12) = [200 300 400 400 900 1300 1350 1300 1000 700 650 350];
or alternatively if variable 'rh' only has 12 elements, you can get rid of the (1:12) indexing and instead simply use:
rh = [200 300 400 400 900 1300 1350 1300 1000 700 650 350];
~Zack
  1 件のコメント
trilochan
trilochan 2013 年 10 月 25 日
thanks for the answer. but still i have to assign because, rh( required heat) has 12 values one for each month. i have to compare this each rh to another value and have to place an if statement based on the comparison. hope you understood the problem

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

カテゴリ

Help Center および File ExchangeLoops and Conditional Statements についてさらに検索

タグ

製品

Community Treasure Hunt

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

Start Hunting!

Translated by