如果通过前面的计算得到一个数列或向量,其中如果存在相邻两数都是负数的情况,那么就判断不成立,原先计算数列的过程中的一个变量P加上一个步长,重新计算这个数列,然后继续判断,直到不存在相邻两数均为负数,则输出这个数列。这样的循环for还是while,判断又怎么写?
我觉得你需要两个循环嵌套,外面的大循环是while,这样才能改变小循环for的步长
假设你这个是一个列表吧,我写几行代码出来你参考一下
step = 1 #设置步长while True:
both_negative = False #设置一个flag,并且每次大循环开始都重置为False
for i in [ ]:
#如果相邻两数都是负数,改变步长,结束当前的循环
if [ ][i]<0 and [ ][i+step]<0:
both_negative = True
step+=1
break
if step==len([ ]): break #步长超过了列表长度,结束循环
if not both_negative: break #说明你找到了这个列表,结束循环
#然后在循环外面根据你的步长step输出列表
温馨提示:答案为网友推荐,仅供参考