using the while command

1 次查看(过去 30 天)
By using the while command, I have to determine the number of terms needed so that the product 2x4x6x8...x2n exceeds a given number N (input by the user). The following is what I tried but it doesn't seem to work.
function y=question2(i,n);
N=input('Enter number N: ')
for i=1:1:n
question2=2*(i)
while question2<=N
question2=question2*(i+1)
display(n)
end
end
Thanks in advance.

采纳的回答

Azzi Abdelmalek
Azzi Abdelmalek 2013-5-8
编辑:Azzi Abdelmalek 2013-5-8
You should use only while loop (remove the for loop), then increment the variable i inside the while loop (i=i+2).

更多回答(2 个)

David Sanchez
David Sanchez 2013-5-8
Hello Francesca, firstly, why do you use "i" as a input variable? Since you use "i" as index within the for-loop, the input "i" will not be used. (advice: try to avoid using "i" as loop index to avoid confusing with imaginary unit) Second: do not forget to add semicolons (;) at the end of each line, it will produce a cleaner result, unless you want lots of useless information on the command windows. Before attempting anything, try to determine what your input variables will be.

David Sanchez
David Sanchez 2013-5-8
try this code, but remember that we are not here to do your homework.
N = input('Enter number N: ');
n = 2;
r = 2;
count = 0;
while r < N
count = count + 1;
n = n + 2;
r = 2*n;
end
disp(count)

类别

Help CenterFile Exchange 中查找有关 Loops and Conditional Statements 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by