题目
如下函数同时返回两个数的平方和以及两个数的和,如果只给一个变量,则另一个变量的默认值为整数10,请补充横线处代码。def psum(underline(①)):underline(②)a=eval(input())print(psum(a))
如下函数同时返回两个数的平方和以及两个数的和,如果只给一个变量,则另一个变量的默认值为整数10,请补充横线处代码。
def psum($\underline{①}$):
$\underline{②}$
a=eval(input())
print(psum(a))
题目解答
答案
根据题目要求,需定义函数 `psum`,支持一个或两个参数。若仅传入一个参数 `a`,则 `b` 默认为10。函数应返回 `(a**2 + b**2, a + b)`。主程序需接收用户输入 `a` 并调用 `psum(a)`。
完整代码如下:
```python
def psum(a, b=10):
return (a**2 + b**2, a + b)
a = eval(input())
print(psum(a))
```
功能说明:
1. 若输入 `5`,输出 `(125, 15)`。
2. 若输入 `3.3`,输出 `(110.89, 13.3)`。
此实现符合题目要求,支持默认参数与多返回值。
解析
考查要点:本题主要考查Python函数的默认参数设置和多返回值的实现方式。
解题核心思路:
- 参数设定:函数需接受1个或2个参数,第二个参数默认为10。
- 计算逻辑:返回两个数的平方和与和的元组。
关键点:
- 默认参数的语法:在函数定义中为第二个参数赋默认值。
- 元组返回:用逗号分隔两个计算结果,Python会自动封装为元组。
函数定义与参数设置
函数psum需要处理两种情况:
- 传入一个参数:此时第二个参数
b自动取默认值10。 - 传入两个参数:直接使用传入的两个值。
因此,函数参数应定义为a, b=10。
返回值计算
函数需返回两个结果:
- 平方和:
a**2 + b**2 - 和:
a + b
将两个结果用逗号分隔,Python会自动返回一个元组。
主程序逻辑
- 输入处理:通过
input()获取用户输入,并用eval转换为数值类型。 - 函数调用:仅传入一个参数
a,b自动取默认值10。