确定1到50之间的所有整数,其中n3 - n2 + 40大于1000且n不能被3整除。然后解决问题: 1到50之间的任何整数是否完美(也就是说,它们是否等于它们的因子之和)?这本书给出了以下代码
n = 1:50;
f = n.^3-n.^2+40;
ii = find(f > 1000 & mod(n,3) ~= 0);
n(ii)
但我想仅使用" for"更改此代码和"如果"循环。有人可以帮我改变这段代码吗?
提前多多感谢。
答案 0 :(得分:4)
n = 1:50;
f = n.^3-n.^2+40;
results = [];
for num = n //let's get into n
if f(num) > 1000 & mod(num,3) ~= 0
results(end+1) = num; //store the result into an array
end
end
这很容易,但find
看起来更合适。