Performing what toeplitz does without using pre-installed function

3 views (last 30 days)
I currently have 8x8 matrix of NaNs. The assignment is to replace all elements of the NaN with numbers 1-8 and then flip them around the way toeplitz function would, without actually using it. We are supposed to use nested for loops and end up with this result:
1 2 3 4 5 6 7 8
2 1 2 3 4 5 6 7
3 2 1 2 3 4 5 6
4 3 2 1 2 3 4 5
5 4 3 2 1 2 3 4
6 5 4 3 2 1 2 3
7 6 5 4 3 2 1 2
8 7 6 5 4 3 2 1
Any idea how to do this? I am completely stuck. So far I only have this
toeplitzSize=8
toeplitz=nan(toeplitzSize)
for a=1:toeplitzSize
for b=1:toeplitzSize
if isnan(toeplitz(a,b))
toeplitz(a,b)= b;
end
end
end
  1 Comment
Stephen23
Stephen23 on 1 Feb 2021
Note that you should NOT name any variable toeplitz, as this shadows the inbuilt function.

Sign in to comment.

Accepted Answer

Sindhu Karri
Sindhu Karri on 1 Feb 2021
Hiii Losoupbowla,
Hope the below attached code helps
toeplitSize=8;
toeplitz=nan(toeplitSize);
for i=1:toeplitSize
k=i;
for j=1:toeplitSize
if isnan(toeplitz(i,j))
if(j<=i)
toeplitz(i,j)=k;
k=k-1;
else
toeplitz(i,j)=j-i+1;
end
end
end
end

More Answers (0)

Categories

Find more on Operating on Diagonal Matrices in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!