无法找到中断序列的方法
Unable to find a way to break a sequence
如果名称的长度大于序列的长度,我希望序列中断(不打印任何序列),但我找不到方法:
我知道 print(List) 语句不应该存在,但我不知道该放在哪里。
x=input("enter name")
def seq():
q=1
n=int(input("enter number"))
List=[n]
while q<n:
if (n % 2):
n = 3*n + 1
List.append(n)
else:
n=n//2
List.append(n)
while len(List)<len(x):
break
print(List)
seq()
将您的代码更改为:
x=input("enter name")
def seq():
q=1
n=int(input("enter number"))
List=[n]
while q<n:
if (n % 2):
n = 3*n + 1
List.append(n)
else:
n=n//2
List.append(n)
if len(List)<len(x):
break
print(List)
seq()
尝试将 when 替换为 If Condition,您也可以尝试将 x 值传递给 fun:
def seq():
q=1
n=int(input("enter number"))
List=[n]
while q<n:
if (n % 2):
n = 3*n + 1
List.append(n)
else:
n=n//2
List.append(n)
If (len(List)<len(x)):
break
print(List)
x=input("enter name")
seq()
如果名称的长度大于序列的长度,我希望序列中断(不打印任何序列),但我找不到方法: 我知道 print(List) 语句不应该存在,但我不知道该放在哪里。
x=input("enter name")
def seq():
q=1
n=int(input("enter number"))
List=[n]
while q<n:
if (n % 2):
n = 3*n + 1
List.append(n)
else:
n=n//2
List.append(n)
while len(List)<len(x):
break
print(List)
seq()
将您的代码更改为:
x=input("enter name")
def seq():
q=1
n=int(input("enter number"))
List=[n]
while q<n:
if (n % 2):
n = 3*n + 1
List.append(n)
else:
n=n//2
List.append(n)
if len(List)<len(x):
break
print(List)
seq()
尝试将 when 替换为 If Condition,您也可以尝试将 x 值传递给 fun:
def seq():
q=1
n=int(input("enter number"))
List=[n]
while q<n:
if (n % 2):
n = 3*n + 1
List.append(n)
else:
n=n//2
List.append(n)
If (len(List)<len(x)):
break
print(List)
x=input("enter name")
seq()