把并联公式通分成 R = r1·r2/(r1+r2) 一次算出结果,再用 %.2f 格式化四舍五入保留 2 位小数输出。
OJ: roj
题目 ID: 1015
难度:入门
标签:入门数学python
创建: 2026-09-29 13:19
更新: 2026-10-04 22:30
题目描述
对于阻值为
输入格式:一行两个浮点数
输入样例:1 2;输出样例:0.67。
思路
把公式通分成 printf("%.2f") 一步完成四舍五入与固定两位补零。
参考代码
Python 版:
python
#!/usr/bin/env python3
# Author by Rainboy blog: https://rainboylv.com github: https://github.com/rainboylvx
# rbook: -> https://rbook.roj.ac.cn https://rbook2.roj.ac.cn
# rainboy的学习导航网站: https://idx.roj.ac.cn
# create_at: 2026-09-29 13:19
# update_at: 2026-09-29 13:19
import sys
def solve() -> None:
r1, r2 = map(float, sys.stdin.buffer.read().split())
# 并联公式 R = 1/(1/r1 + 1/r2) = r1*r2/(r1+r2),通分后少一次除法
resistance = r1 * r2 / (r1 + r2)
print(f"{resistance:.2f}")
if __name__ == "__main__":
solve()C++ 版(同一算法):
cpp
/**
* Author by Rainboy blog: https://rainboylv.com github: https://github.com/rainboylvx
* rbook: -> https://rbook.roj.ac.cn https://rbook2.roj.ac.cn
* rainboy的学习导航网站: https://idx.roj.ac.cn
* create_at: 2026-10-04 22:30
* update_at: 2026-10-04 22:30
*/
#include <cstdio>
// 并联电阻公式:R = 1/(1/r1 + 1/r2) = r1*r2/(r1+r2),通分后少一次除法
int main() {
double r1, r2; // 两个电阻的阻值,浮点型
scanf("%lf%lf", &r1, &r2);
double r = r1 * r2 / (r1 + r2);
printf("%.2f\n", r); // 四舍五入并固定保留 2 位小数
return 0;
}