python - 为什么python的算术总是为这个函数返回10?
问题描述
此代码的输出始终为 10。我做错了吗?我还想要帮助“Vc”的负有理指数方程
设 R=10000,C=1e-6,Vs=10
R= 10000
C= 10**-6
Vs= 10
T= float(R*C)
t= float(input("Enter the value of t:"))
Vc=Vs*(1-(10**-(t/T)))
print(format(Vc,".5f"))
预先感谢您的回复。
解决方案
你并不总是得到10
. 对于小数,您会得到一个 以外的值10
。.0001
例如,尝试输入。
对于较大的 值t
,表达式10**-(t/T)
是如此之小以至于 Python 将其视为0
。因此,对于足够大的 值,您有10*(1-0)
或。 太大了,所以你会得到, 和任何比这更大的条目。,顺便说一句,给出了一个有趣的答案,输入一个大的负值会使程序崩溃并出现溢出错误。10
t
1
10
1
-1
推荐阅读
- c# - 实例化后的类实例为空
- amazon-web-services - AWS step 函数保持执行运行多长时间?
- logic - 首先分配,然后在 if 块中重新分配,以替代 Verilog 中的 if-(else if)-else
- javascript - React:React 如何确保在浏览器有机会绘制之后调用 useEffect?
- mysql - 我是否必须进行 2 次查询才能在 API 中授权用户?
- angular - 使用 NgModel angular 7 进行表单验证
- python - 每当用户在 django rest 框架中发送帖子值时,如何发送 URL 作为响应?
- python - 关闭窗口后进程未完成
- python - 将列表从excel存储到字典中
- android - 如何将表情符号作为带有侦听器的按钮