鱼C论坛

 找回密码
 立即注册
查看: 1164|回复: 2

小白求助

[复制链接]
发表于 2023-10-25 10:45:04 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
题目描述
计算多项式的导函数是一件非常容易的任务。给定一个函数f(x),我们用f'(x)来表示其导函数。我们用x^n来表示x的n次幂。为了计算多项式的导函数,你必须知道三条规则:
(1)、(C)' = 0 如果C是常量
(2)、(C*x^n)' = C*n*x^(n-1) 如果n >= 1且C是常量
(3)、(f1(x)+f2(x))' = f1'(x)+f2'(x)
容易证明,多项式的导函数也是多项式。
现在,请你编写一个程序,给定一个不包含负系数且已合并好同幂次项的多项式f(x),计算出它的导函数。

输入
输入有两行。
第一行是一个整数n(0 <= n <= 100)表明多项式的最高次幂为n。
第二行包含n+1个非负整数,C n ,C n-1 ,C n-2 ,C n-3 ,C n-4 ,… ,C 1,C 0(0 <= C i <= 1000)且Cn != 0。Ci是幂次为i的项的系数。

输出
在一行内输出f'(x)的结果。
(1) 如果g(x) = 0那么直接输出0
(2) 如果g(x)形如C m(x^m)+C m-1(x^(m-1))+…+C 0(C m!=0)那么输出C m…C 0
(3) 相邻整数之间有单个空格。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-10-25 10:45:12 | 显示全部楼层
解决方案如下:

首先,我们需要根据输入的多项式的最高次幂n和系数C来计算导函数。

我们可以使用一个列表来存储导函数的系数。首先将列表初始化为长度为n的全零列表。

然后,我们遍历输入的系数列表,对于每个系数C[ i],我们将其乘以对应的幂次i,并将结果添加到导函数的系数列表中的对应位置。

最后,我们将导函数的系数列表转换成字符串,并在相邻的系数之间添加空格。

以下是具体的代码实现:
n = int(input())  # 输入多项式的最高次幂
coefficients = list(map(int, input().split()))  # 输入多项式的系数

derivative = [0] * n  # 初始化导函数的系数列表

for i in range(1, n+1):
    derivative[i-1] = i * coefficients[ i]

result = ' '.join(map(str, derivative))  # 将导函数的系数列表转换成字符串

print(result)

希望能帮到你!如果你有任何疑问,请随时提出。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-10-26 10:22:18 | 显示全部楼层
#include <stdio.h>

int main() {
    int n, i;
    int c[105]; // 存储多项式的系数,最多到100次幂
    scanf("%d", &n);
    for(i = 0; i <= n; i++) {
        scanf("%d", &c[i]);
    }
    for(i = n; i >= 0; i--) {
        if(i == n) {
            printf("%d", c[i]);
        } else {
            printf("%d ", c[i]);
        }
    }
    printf("\n");
    return 0;
}
代码解释:

首先读入多项式的最高次幂n和系数数组c,c数组长度为n+1。
从高次幂到低次幂遍历c数组,依次输出系数,如果系数为0则不输出。相邻系数之间用空格隔开。
输出完成后换行,程序结束。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-10-5 17:27

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表