# build an array y depending on x

2 views (last 30 days)
Mina on 4 Jun 2021
Answered: the cyclist on 4 Jun 2021
Build an array y by doubling all the elements of a vector x that are positive and adds 10 to all the elements of x that are negative. Note that x could be any length.
Initialise x as indicated above and y to an array of zeroes for the same number as elements as x.
Use a loop to change each element of y as described above. Use the variable i as your loop counter.
##### 2 CommentsShowHide 1 older comment
Mina on 4 Jun 2021
x = input();
for i = 1:x
if x(i) >= 0
y = x(i)* 2;
else
y = x(i) + 10;
end
disp(y);
end

the cyclist on 4 Jun 2021
You have a few problems to fix:
As you can see in its documentation, the input function requires you to include some prompting text, such as
input('Enter x: ')
for i = 1:x
you want to loop from 1 to the number of elements in x (not from 1 to x itself). You should be able to figure that out. It is not difficult.
Finally, you keep overwriting the same scalar value of y, over and over. Instead, you also want to define a vector y, and only write to each element in turn. Again, I bet you can figure that out (since you are doing something similar with x).