Is there a way to get MATLAB to write out a certain number more than once without typing them individually

Hi Is there a way to get MATLAB to write out 20 lots of 1's 20 lots of 2's etc. without typing them out individually

2 Comments

You mean repmat? Or for-loops? (combine it with sprintf or fprintf)
Sorry I don't know what you mean by that, could you show us an example of how I would do it

Answers (1)

E.g.,
>> ones(1,20)
ans =
Columns 1 through 18
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Columns 19 through 20
1 1
>> ones(1,20)*2
ans =
Columns 1 through 18
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
Columns 19 through 20
2 2

3 Comments

E.g.,
W = [ones(1,20);2*ones(1,20)];
or
W = ones(2,20);
W(2,:) = 2;
Or if you want columns of numbers, e.g.
W = [ones(20,1),2*ones(20,1)];
or
W = ones(20,2);
W(:,2) = 2;
It sounds like you would really benefit from a starter course on Matlab. Assigning and concatenating variables is probably in the first lesson of every tutorial.

This question is closed.

Tags

Asked:

on 6 Nov 2017

Closed:

on 20 Aug 2021

Community Treasure Hunt

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

Start Hunting!