Function output an array

I am trying towrite a function that takes an array of variable size, and calculates the differneces between the 1,2 2,3 3,4 ... inputs and displays as an array (without using the diff function). It keep giving a singular output for the first values but need it to give an array for all. any help would be great.
function [out] = differences(in)
%This function allows an array input and the differences between the array
i=1;
while (i<=size(in))
out(i)= in(i+1)-in(i);
i=i+1;
end
end

回答 (1 件)

VBBV
VBBV 2022 年 8 月 29 日
編集済み: VBBV 2022 年 8 月 29 日

0 投票

in = [rand(1,15);rand(1,15)];
differences(in)
ans = 1×15
0.2886 -0.0528 0.2459 -0.6453 -0.3648 -0.6805 0.3954 0.1678 0.1278 -0.2929 -0.5549 -0.1945 -0.4947 -0.0121 0.1477
function [out] = differences(in)
%This function allows an array input and the differences between the array
i=1;
while (i<size(in,1))
out(i,:)= in(i+1,:)-in(i,:);
i=i+1;
end
end

カテゴリ

ヘルプ センター および File ExchangeCreating and Concatenating Matrices についてさらに検索

製品

リリース

R2022a

質問済み:

2022 年 8 月 29 日

編集済み:

2022 年 8 月 29 日

Community Treasure Hunt

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

Start Hunting!

Translated by