1010 一元多项式求导 (25)(25 分)
设计函数求一元多项式的导数。(注:x^n^(n为整数)的一阶导数为n*x^n-1^。)
输入格式:以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过1000的整数)。数字间以空格分隔。
输出格式:以与输入相同的格式输出导数多项式非零项的系数和指数。数字间以空格分隔,但结尾不能有多余空格。注意“零多项式”的指数和系数都是0,但是表示为“0 0”。
输入样例:
3 4 -5 2 6 1 -2 0
输出样例:
12 3 -10 1 6 0
代码:
#include <iostream>
using namespace std;
int main()
{
int a[1010],b[1010];
int k,t=0;
while((scanf("%d",&k))!=EOF)
{
a[t]=k;
t++;
}
if(a[1]==0)
{
cout<<"0 0";
return 0;
}
int j=0;
for(int i=0;i<t;i+=2)
{
b[j]=a[i]*a[i+1];
b[j+1]=a[i+1]-1;
if(b[j]==0)
j-=2;
j+=2;
}
for(int i=0;i<j;i++)
{
cout<<b[i];
if(i<j-1)cout<<" ";
}
return 0;
}