Array operations

4 ビュー (過去 30 日間)
Yassine
Yassine 2012 年 3 月 22 日
How can I solve this problem using MATLAB? The array n is all integers from 1 to 110. The array y is defined by: y= n^(1/2) if n is divisible by 3, 5, or 7 y= 0 otherwise Find the value of the sum of the elements of y.
  4 件のコメント
James Tursa
James Tursa 2012 年 3 月 22 日
Yes, n is those numbers.
Andrei Bobrov
Andrei Bobrov 2012 年 3 月 23 日
out = sum(sqrt(num(all(bsxfun(@rem,num.',[3 5 7]),2))))

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

採用された回答

yasmine
yasmine 2012 年 3 月 22 日
num = 1:110;
for i = 1:101 z(i) = num(i)/3; x(i)= num(i)/5; y(i)= num(i)/7;
if rem(z(i),1) == 0; k(i) = num(i)^(1/2);
elseif rem(x(i),1) == 0; k(i) = num(i)^(1/2);
elseif rem(y(i),1) == 0; k(i) = num(i)^(1/2);
else k(i) = 0;
end;
end;
sum = sum(k);
  2 件のコメント
Yassine
Yassine 2012 年 3 月 23 日
thanks for the answer, but what does '1' mean in the expression rem(Z(i),1)?
Jan
Jan 2012 年 3 月 23 日
Please read the documentation: type "help rem" in the command window.

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

その他の回答 (1 件)

Jan
Jan 2012 年 3 月 22 日
Start with:
n = 1:110;
Now remember that ^(1/2) is the squareroot.
How can you check, if the numbers in a vector can be divided by 3, 5, or 7? Look e.g. in the help for rem:
doc rem
Another idea:
x = 1:3:20
...

カテゴリ

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