Flipping between two values using a for loop

I'm trying to figure out how to make this switch between -1 and 1. If I set p to -1, I still get it alternating between 0 and 1.
The actual question is as follows:
Have a for loop flip the value of p between -1 and 1, changing it once each loop iteration USING A SINGLE LINE OF CODE. Display the value of p each iteration by omission of semicolon. Use the pause() function to stop the loop temporarily each iteration.
clc;
clear;
p = -1;
for k = 1 : 10
p = ~p
pause(1);
end
Any suggestions would be greatly appreciated!

 采纳的回答

Try this:
d = -1;
for k = 1 : 10
p = d^k
pause(1);
end
or you could simplify it further as:
for k = 1 : 10
p = (-1)^k
pause(1);
end

2 个评论

My pleasure!
If my Answer solved your problem, please Accept it.

请先登录,再进行评论。

更多回答(0 个)

类别

在 帮助中心 和 File Exchange 中查找有关 Loops and Conditional Statements 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by