How to make vectors zero when adding two different size vectors?

15 visualizaciones (últimos 30 días)
I know how to make vectors add such as x=[1 2 3] and y=[-1 2 -1] and it should return as [0 4 2] But when adding two different length vectors such as x=[1 2 3 4 5] and y=[-1 -2 3[], then y should first be transformer to [0 0 -1 -2 3] and the function returns as [1 2 2 2
function y = adding(a,b)
if length(a) == length(b), y=b+a; end
if length(a) < length(b), y=a+ zeros(1,length(a)-length(b)); end
if length (a) > length(b), y=b+ zeros(1,length(b)-length(a)); end
end

Respuesta aceptada

Stephen23
Stephen23 el 30 de En. de 2017
Editada: Stephen23 el 30 de En. de 2017
function Z = adding(A,B)
d = numel(A)-numel(B);
Z = [zeros(1,-d),A] + [zeros(1,d),B];
end
and tested:
>> adding([1,2,3,4,5],[-1,-2,3])
ans =
1 2 2 2 8

Más respuestas (0)

Categorías

Más información sobre MATLAB en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by