this should be easy I have a while loop that is infinite
Show older comments
When I run this it is inifinite and well that's not what i am looking for... i thought that by limiting the x value to 99 which is in the vector i could get it to stop but that's not the case. any ideas i know that it is going to be something simple...
clc, clear all, close all;
x = 1;
while x <= 99
x = 1:2:100
end
Accepted Answer
More Answers (4)
Azzi Abdelmalek
on 13 Sep 2012
Edited: Azzi Abdelmalek
on 13 Sep 2012
x = 1;
while x <= 99
x=x+2
% do
end
4 Comments
SonOfAFather
on 13 Sep 2012
Azzi Abdelmalek
on 13 Sep 2012
and what a while loop has to do with that?
SonOfAFather
on 13 Sep 2012
Azzi Abdelmalek
on 13 Sep 2012
x=1
while x<=100-2
x(end+1)=x(end)+2
end
Wayne King
on 13 Sep 2012
Edited: Wayne King
on 13 Sep 2012
Why do you need a while loop here? If you just want a vector running from 1 to 99 in increments of 2, the following does the job.
x = 1:2:100;
With the previous statement you are creating a vector whose last element is 99 and since you don't increment that vector inside the while loop, you never exceed your terminating condition.
note the difference between that and
x = 1;
while x<= 99
x = x+1;
end
x
You see with the above, that when you exit the while loop, x is equal to 100, which terminates the loop. In your example, you never exceed 99 and that is why you have an infinite loop.
1 Comment
SonOfAFather
on 13 Sep 2012
Wayne King
on 13 Sep 2012
If want you create a vector with a while loop (again not sure why you want to do that), there are many ways to code it.
clear x;
n = 1;
k = 1;
while k<100
x(n) = k;
n = n+1;
k = k+2;
end
3 Comments
SonOfAFather
on 13 Sep 2012
Azzi Abdelmalek
on 13 Sep 2012
Is it a joke?
SonOfAFather
on 13 Sep 2012
Andrei Bobrov
on 13 Sep 2012
x = 1;
while x(end) < 99
x=[x x(end)+2];
end
Categories
Find more on Loops and Conditional Statements in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!