Function that squares each elemnt of a matrix
165 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Hi everyone,
I´m strugling with writing a function that is suppose to square each element of my matrix. I tried doing it through vector and then reshaping it, but couldn´t quite hit the correct code. My problem is that i figured out a part of the code but can´t really put it all together since im new to mathlab.
Having matrix n x m then
for 1:n
for 1:m
x.^2
end
end
but i dont really understand or know how to put in the function and what re the variables.
Thanks for any help.
2 Kommentare
Torsten
am 26 Mär. 2020
You don't need the for-loops above.
If A is a matrix of arbitrary size, then A.^2 is the matrix with all entries squared.
Can you take it from here ?
Antworten (2)
Peng Li
am 26 Mär. 2020
If you only want to square each element of a matrix, you use .^
For example:
A = randn(100, 100);
B = A.^2;
4 Kommentare
Peng Li
am 27 Mär. 2020
function A2 = myElementSquare(A)
A2 = nan(size(A)); % this pre-allocation speeds up the loop
for iR = 1:size(A, 1)
for iC = 1:size(A, 2)
A2(iR, iC) = A(iR, iC) .^ 2;
end
end
end
save above script as a function file. you can call this function by
Res = myElementSquare(anyNumericMatrix);
for example:
test = randn(100, 100);
test2 = myElementSquare(test);
harsh raval
am 18 Okt. 2021
a=[1 2; 3 4]
squa1=a^2
squa2=a.^2
squa1 =
7 10
15 22
squa2 =
1 4
9 16
so, for traditional square of the matrix use a^2
but, for square of each element use a.^2
0 Kommentare
Siehe auch
Kategorien
Mehr zu Matrix Indexing finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!