Filter löschen
Filter löschen

Array operations

3 Ansichten (letzte 30 Tage)
Yassine
Yassine am 22 Mär. 2012
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 Kommentare
James Tursa
James Tursa am 22 Mär. 2012
Yes, n is those numbers.
Andrei Bobrov
Andrei Bobrov am 23 Mär. 2012
out = sum(sqrt(num(all(bsxfun(@rem,num.',[3 5 7]),2))))

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

yasmine
yasmine am 22 Mär. 2012
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 Kommentare
Yassine
Yassine am 23 Mär. 2012
thanks for the answer, but what does '1' mean in the expression rem(Z(i),1)?
Jan
Jan am 23 Mär. 2012
Please read the documentation: type "help rem" in the command window.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Jan
Jan am 22 Mär. 2012
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
...

Kategorien

Mehr zu Matrix Indexing finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by