Azzera filtri
Azzera filtri

using the while command

1 visualizzazione (ultimi 30 giorni)
francesca
francesca il 8 Mag 2013
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.

Risposta accettata

Azzi Abdelmalek
Azzi Abdelmalek il 8 Mag 2013
Modificato: Azzi Abdelmalek il 8 Mag 2013
You should use only while loop (remove the for loop), then increment the variable i inside the while loop (i=i+2).
  1 Commento
francesca
francesca il 8 Mag 2013
Thanks very much for your help and for your time.

Accedi per commentare.

Più risposte (2)

David Sanchez
David Sanchez il 8 Mag 2013
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 il 8 Mag 2013
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)
  1 Commento
francesca
francesca il 8 Mag 2013
Thanks very much for your help and for your time.

Accedi per commentare.

Categorie

Scopri di più su Loops and Conditional Statements in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by