MATLAB Answers

Aman
0

Storing multiple values in one location of matrix

Asked by Aman
on 3 Feb 2011
Latest activity Edited by Aakash Bhatia on 3 Dec 2017
I have used 2 variables i and j . now i want to place their values in one place in matrix,like if i=1 and j=2 i want to store 12 at matrix location (1,1)
kindly tell me the way to do it.,. thank you

  0 Comments

Sign in to comment.

Tags

3 Answers

Answer by Andreas Goser on 3 Feb 2011
 Accepted Answer

I need to speculate a bit what the question is. Here an example code:
a=1; % I peronally never use i,j,I,J
b=2;
M=zeros(4);
M(3,3)=a; % Apply the content of a to position (3,3)
M(4,4)=b
Or is it something like that?
a=1; % I peronally never use i,j,I,J
b=2;
M=zeros(4);
M(3,3)=str2num([num2str(a), num2str(b)])

  1 Comment

Hi , thank you for working this out. But is there a way to seperate the two elements i.e. a and b in your case with a comma?
Thanks

Sign in to comment.


Answer by Davide Ferraro on 3 Feb 2011

If your need is to place the single digits to create a bigger number if you would like to avoid passing through string conversion (as suggested by Andreas) you can use sums and multiplications to create the number.
a=1;
b=2;
M=zeros(4);
M(1,1) = [a b] * [10 1]';
% For more elements
a = 1;
b = 2;
c = 3;
d = 4;
M(1,1) = [a b c d] * (10.^(3:-1:0))';
This means a * 10 + b * 1 = 12. In the second example I'm extending the notation to allow the definition of more terms without writing a * 1000 + b * 100 * c * 10 * d * 1.
If your need is to store two values (a matrix) in another matrix you need to use Cell Arrays:
C = {[a,b]}

  0 Comments

Sign in to comment.


Answer by Aman
on 3 Feb 2011

Thank you so much for your support people..thank you so much:)

  0 Comments

Sign in to comment.