MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn moreOpportunities for recent engineering grads.

Apply Today
Asked by jelly on 5 Oct 2012

how can i do this? ex.

"for i=1:3

end"

desired output: i=[1 2 3] or i=123

..

ex.two

" x=input('input value of x: ') %then the user will enter x=[1:5]

y=x.*2;"

desired output: y=[2 4 6 8 10] or y=246810

..

ex three

N=35

while N>=2

A=rem(N,2) N=floor(N/2) end

and my desired output is A=11000 or A=[1 1 0 0 0]

how could i do this?

*No products are associated with this question.*

Answer by Thomas on 5 Oct 2012

Edited by Thomas on 5 Oct 2012

ii=1:3

or

ii=[1:3]

Show 5 older comments

Thomas on 5 Oct 2012

I guess this is what u need

N=35; count=1; while N>=2

A(count)=rem(N,2);

N=floor(N/2); count =count+1; end

A

jelly on 6 Oct 2012

Hey tom, yes this is really what i need, finally someone get what i mean, HAHA, thankyou for spending time understanding my problem, thanks bro.

Walter Roberson on 6 Oct 2012

You will find that this code will not print the result on one line at some point around 2^19 to 2^24 (depending exactly how wide your command window is set to.) Instead you will get a display such as

A =

Columns 1 through 18

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Columns 19 through 20

0 0

The output for A will also not have the [] that you required when there were spaces between the elements.

You can fix both of those problems by not displaying A and instead displaying

mat2str(A)

Answer by Image Analyst on 5 Oct 2012

If you're going to allow the user to enter brackets and colons, then you're going to have to accept it as a string and either call eval(), or parse the string to extract out the individual numbers.

Answer by Walter Roberson on 5 Oct 2012

N=35 fprintf('%s', 'A='); while N>=2

A=rem(N,2); fprintf('%d', A); N=floor(N/2); end fprintf('\n')

Note that your logic will fail to print the last binary digit.

## 1 Comment

Direct link to this comment:http://www.mathworks.com/matlabcentral/answers/49992#comment_103412

Please read the guide to tags and retag this question; see http://www.mathworks.co.uk/matlabcentral/answers/43073-a-guide-to-tags