一元多项式求导 (25分)
总结:
- 特例:如 1 0 :只有常数项,结果输出 0 0。因为指数递减,在第一个if进行判断即可。
- 非特例:常数项导数为0,不输出。
- while(scanf("%d %d", &c, &n) != EOF ) 或者 while (cin >> a >> b) 控制,输入结束时终止。
代码:
#include<cstdio>
//指数都为正
int main()
{
int c, n;
scanf("%d %d", &c, &n);
if(n){ //n=0 常数项 输出“0 0”
printf("%d %d", c*n, n-1);
while(scanf("%d %d", &c, &n) != EOF ){
if(n){ //常数项导数为0 不输出
printf(" %d %d", c*n, n-1);
}else break;
}
}else{
printf("0 0");//特例
}
return 0;
}
#include<iostream>
using namespace std;
int main()
{
int a, b, flag=0;
while( cin>>a>>b ){
if( b ){
if(flag==1) cout<<" ";
cout<<a*b<<" "<<b-1;
flag = 1;
}
}
if( flag==0 ) cout<<"0 0";
return 0;
}