Shifting Elements of a Vector to the right while deleting the last number

2 ビュー (過去 30 日間)
Clemens Mueller
Clemens Mueller 2015 年 7 月 10 日
コメント済み: Clemens Mueller 2015 年 7 月 10 日
I have a vector like this:
A = [1 2 3 4 5 0 0 0]
now, I want to shift the elements to the right (lets say beginning from 3), while eliminating the last digit and replacing the 3 with a zero.
desired outcome:
A = [ 1 2 0 3 4 5 0 0]
Is there an easy command to achieve this?
Thank you very much in advance!

採用された回答

James Tursa
James Tursa 2015 年 7 月 10 日
編集済み: James Tursa 2015 年 7 月 10 日
A = [1 2 3 4 5 0 0 0] % Original vector
p = 3 % index for first element to shift
z = 1 % number of spots to shift
n = numel(A)
A = [A(1:p-1) zeros(1,min(n-p+1,z)) A(p:n-z)]
A =
1 2 3 4 5 0 0 0
p =
3
z =
1
n =
8
A =
1 2 0 3 4 5 0 0

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeGet Started with MATLAB についてさらに検索

タグ

製品

Community Treasure Hunt

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

Start Hunting!

Translated by