尝试同时添加两个输入

Trying add two inputs in while

我正在用 python 计算等差数列。 在 10 个第一个术语之后,我想询问用户还希望看到多少个术语。如果它是 0,它将结束程序。如果不是程序 return 要求的术语数。并重复直到它为 0。 在第一个循环之后,程序运行,之后程序 return 是一个空的。

i = int(input('Start of PA: '))
r = int(input('PA Reason:  '))
t1 = i
cont = 1
terms = 1
n1 = 0
while cont <= 10:
    t1 = t1 + r
    cont += 1
    print(f'{t1} > ', end='')
while terms != 0 :
    terms = int(input('\nHow many terms? '))
    if terms!= 0:
        while cont <= (10 + terms):
            t1 = t1 + r
            cont += 1
            print(f'{t1} > ', end='')
    else:
        print('END!')

resolution

编辑:对不起我的英语。

while cont <= (10 + terms):

只是第二批结果的正确条件。下一批应该小于20 + terms,以此类推。

而不是添加到 terms,您应该在打印下一批术语的每个循环之前将 cont 设置回 0

而不是检查 terms 是否为零两次,而是使用 while True: 并在他们进入 0.

时跳出循环
while True:
    terms = int(input('\nHow many terms? '))
    if terms!= 0:
        cont = 0
        while cont <= terms:
            t1 = t1 + r
            cont += 1
            print(f'{t1} > ', end='')
    else:
        print('END!')
        break

或者不使用 while 循环,而是使用 forrange()

while True:
    terms = int(input('\nHow many terms? '))
    if terms != 0:
        for _ in range(terms)
            t1 = t1 + r
            print(f'{t1} > ', end='')
    else:
        print('END!')
        break