Increasing increment values with vector operations

23 visualizaciones (últimos 30 días)
Ken Lew
Ken Lew el 27 de Jun. de 2018
Comentada: Ken Lew el 27 de Jun. de 2018
I'm trying to change this code into a single line of code using vector operations,
a = [];
x = 5;
while x <= 15
a(x-4) = x^2;
x = x + 1;
end
Where the sequence is
25,36,49,64,81,100,121,144,169,196,225
and the difference between two numbers are
11,13,15,17,19,21,23,25,27,29
The number difference have a value of 2 between them
My idea was,
a=25:X:225
where X is the increment value, but i found that X should increase by 2 after every number(11,13,15,17,...). How should i go about this?
  2 comentarios
Jan
Jan el 27 de Jun. de 2018
By the way: a[x-4] = x^2 must be a(x-4) = x^2
Ken Lew
Ken Lew el 27 de Jun. de 2018
Oh right. Changed it, Thanks!

Iniciar sesión para comentar.

Respuesta aceptada

Jan
Jan el 27 de Jun. de 2018
This is leaner than your loop:
a = (5:15) .^ 2

Más respuestas (1)

Ameer Hamza
Ameer Hamza el 27 de Jun. de 2018
difference = 11:2:29;
a = 25+[0 cumsum(difference)]
a =
25 36 49 64 81 100 121 144 169 196 225

Categorías

Más información sobre Loops and Conditional Statements en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by