How to arrange a column vector into two columns?

So, I have this vector and I need to arrange it as loops. Each value for each loop should start as the next integer from the previous ending loop x= [128 147 166 181 195 216 236 255]
It should look something like this x= [128 147; 148 166; 167 181; 182 195; 196 216; 217 236; 237 255]
I cannot do it manually, since I have to arrange several vectors that will not have the same length as this one. I tried using nested for loops but wasn't successful

4 Comments

@David Silva: why do you ignore the second-to-last value (236) when creating the output matrix?
May be becuase, it falls in the intervel [217 255].
"May be becuase, it falls in the intervel [217 255]."
Every (non-end) element in that vector falls in the interval formed by its adjacent elements. What is so special about 236?
You are right, I corrected the mistake

Sign in to comment.

 Accepted Answer

Assuming that the missing 236/237 row is a mistake:
x = [128,147,166,181,195,216,236,255]
x = 1×8
128 147 166 181 195 216 236 255
m = [x(1),1+x(2:end-1);x(2:end)].'
m = 7×2
128 147 148 166 167 181 182 195 196 216 217 236 237 255

More Answers (0)

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Products

Release

R2021b

Asked:

on 4 Feb 2022

Edited:

on 4 Feb 2022

Community Treasure Hunt

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

Start Hunting!