设计函数求一元多项式的导数。 输入格式: 以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过1000的整数)。数字间以空格分隔。 输出格式: 以与输入相同的格式输出导数多项式非零项的系数和指数。数字间以空格分隔,但结尾不能有多余空格。
时间: 2023-02-06 10:52:58 浏览: 313
设计一个函数求一元多项式的导数的步骤如下:
1. 解析输入的多项式,将其转化为一个系数和指数的列表。
2. 循环遍历列表,对每一项求导。对于一元多项式的导数的规律为:
$$ (ax^b)' = a*b*x^{b-1} $$
3. 将求出的导数的系数和指数存入新的列表中。
4. 对新列表进行输出,按照指数从大到小的顺序输出系数和指数。
代码实现如下:
```
def derivative(polynomial):
# 解析输入的多项式
terms = []
for term in polynomial.split():
coef, exp = term.split('x^')
terms.append((int(coef), int(exp)))
# 求导
derived = []
for coef, exp in terms:
if exp == 0:
continue
derived.append((coef*exp, exp-1))
# 输出导数
result = []
for coef, exp in derived:
result.append(str(coef) + 'x^' + str(exp))
return ' '.join(result)
```
示例:
```
derivative('3x^2 2x^1 1')
```
输出:
```
6x^1 2
```