multiplying all elements by fellow elements

Dear All, please if i have matrix of [1 2;4 3], i want to write a statement that can multiply every element by their fellow element and give final result in matrix. that is it will perform and give this kind of matrix: [1*1 1*2 1*4 1*3; 2*1 2*2 2*3 2*4] thanks

1 Kommentar

Stephen23
Stephen23 am 3 Nov. 2018
See Bruno Luong's answer for the simple and efficient MATLAB solution.

Melden Sie sich an, um zu kommentieren.

 Akzeptierte Antwort

madhan ravi
madhan ravi am 2 Nov. 2018
Bearbeitet: madhan ravi am 2 Nov. 2018

1 Stimme

A=[1 2;4 3] %edited
[m,n]=size(A);
result=cell(1,m);
for i = 1:m
result{i}=[A(1,i).*(A)];
end
result=horzcat(result{:})

2 Kommentare

mac-nic ifegbo
mac-nic ifegbo am 2 Nov. 2018
Bearbeitet: mac-nic ifegbo am 2 Nov. 2018
Hi sir, yours is correct but what if is a bigger array. Am actually working with a 10 by 10 matrix. using your method will be very long
madhan ravi
madhan ravi am 2 Nov. 2018
See edited answer now

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Bruno Luong
Bruno Luong am 2 Nov. 2018

1 Stimme

Not clear what you want but KRON might be what you are looking for
>> A=[1 2; 4 3]
A =
1 2
4 3
>> kron(A,A)
ans =
1 2 2 4
4 3 8 6
4 8 3 6
16 12 12 9
>> kron(A,[1,2])
ans =
1 2 2 4
4 8 3 6
>> kron(A,[1;2])
ans =
1 2
2 4
4 3
8 6
>> kron([1,2],A)
ans =
1 2 2 4
4 3 8 6
>> kron([1;2],A)
ans =
1 2
4 3
2 4
8 6

Kategorien

Community Treasure Hunt

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

Start Hunting!

Translated by