While循环:如何在循环期间只设置一次(something=integer)

2024-10-17 06:26:12 发布

您现在位置:Python中文网/ 问答频道 /正文

我想不出如何将利率和本金都设置为它们的设定值只有一次

在这个循环中,它不断地重置rate=5和principal=9000,但我希望循环继续下去,principal不断增加到10000 11000 12000等等

N = 5
rate = 5
while rate <= 15: 
    principal = 9000
    principal = principal + 1000
    while principal <= 15000:
        simple = principal * (1 + (rate/100) * N)
        compound = principal * (1 + (rate/100)) ** N
        print(str(rate) + "%", principal, simple, compound)

运行时,它应该看起来像:

5% $10000 $12500.00 $12762.82
5% $11000 $13750.00 $14039.10
5% $12000 $15000.00 $15315.38
5% $13000 $16250.00 $16591.66
5% $14000 $17500.00 $17867.94
5% $15000 $18750.00 $19144.22
10% $10000 $15000.00 $16105.10
10% $11000 $16500.00 $17715.61
10% $12000 $18000.00 $19326.12
10% $13000 $19500.00 $20936.63
10% $14000 $21000.00 $22547.14
10% $15000 $22500.00 $24157.65
15% $10000 $17500.00 $20113.57
15% $11000 $19250.00 $22124.93
15% $12000 $21000.00 $24136.29
15% $13000 $22750.00 $26147.64
15% $14000 $24500.00 $28159.00
15% $15000 $26250.00 $30170.36

Tags: principalratesimple重置print利率whilestr
3条回答

您需要在while循环中增加速率,以便它结束:

while rate <= 15:
    rate += 5

谢谢大家的帮助,我想出来了:)

N = 5
rate = 5
principal = 10000
while principal <= 15000:
    simple = principal * (1 + (rate/100) * N)
    compound = principal * (1 + (rate/100)) ** N
    print(str(rate) + "%", "$" + str(principal), "$" + str(simple), "$" + str(compound))
    principal += 1000
    if principal >= 15001:
        rate += 5
        principal = 10000
    if rate >= 20:
        principal = 15001

while loop之外初始化rate并在第一个while中增加它

N = 5
rate = 0
while rate < 15:
    rate += 5
    principal = 9000
    while principal < 15000:
        principal = principal + 1000
        simple = principal * (1 + (rate/100) * N)
        compound = principal * (1 + (rate/100)) ** N
        print(str(rate) + "%", principal, simple, compound)

相关问题 更多 >