为什么我在python的while循环中会遇到这个问题?

时间:2020-12-31 11:18:18

标签: python python-3.x

我的代码有问题,我认为是因为我的 while 循环。有人可以帮我吗?抱歉,如果评论难以理解(我先用我的母语添加了评论)。

编辑 1:我忘记将税变量更改为 kambiyo_yuzde,所以它应该是这样的:

问题是,while 循环并没有以我想要的值结束。例如,当我输入“usd_bolu_tl”“7.500”和“sahip_tl”“2000”时,satis_tl 的值应为 266,67.000,即 1866.2,而 deger_tl 的值应为 2004。我想用什么计算我的 while 循环是它应该在每次循环时向“yeni_usd”变量添加 0.001 值,并在 satis_tl 的值(即 266.67.000+0.001)大于 deger_tl(即 2004)时结束

kambiyo_yuzde = 2 / 1000
usd_bolu_tl = input("current rate: ")

sahip_tl = input("how much money you have in turkish liras: ")
# money plus taxes
deger_tl = float(sahip_tl) + (float(sahip_tl) * float(kambiyo_yuzde))

print("Bu tl değerinde dolar alabilmek için kambiyo vergisi ile beraber ", deger_tl, "tl ödemeniz gerekir.")

# usd we bought with turkish liras
alinacak_usd = float(sahip_tl) / float(usd_bolu_tl)

# new currency
yeni_usd = 7.000
# selling
satis_tl = float(alinacak_usd) * float(yeni_usd)

while satis_tl < deger_tl:
    print("yeni dolarin degeri: ", yeni_usd)
    yeni_usd += 0.001

# to profit
print("minimum kar icin dolarinizi satmaniz gereken deger: ", yeni_usd, "'dir.")

input("cikis yapmak icin herhangi bir tusa basiniz.")

1 个答案:

答案 0 :(得分:1)

while 循环中的 break 语句将在第一次迭代后终止循环的执行,因此您需要重新考虑完全删除该 break 或重新考虑停止的初始条件你的 while 循环。

此外,根据您共享的代码部分,我没有看到您已为 kambiyo_yuzde 变量初始化任何值。