设计函数求一元多项式的导数。(注:xn(n为整数)的一阶导数为nxn−1。)
输入格式:
以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过 1000 的整数)。数字间以空格分隔。
输出格式:
以与输入相同的格式输出导数多项式非零项的系数和指数。数字间以空格分隔,但结尾不能有多余空格。注意“零多项式”的指数和系数都是 0,但是表示为 0 0
。
输入样例:
3 4 -5 2 6 1 -2 0
输出样例:
12 3 -10 1 6 0
解题思路:
先创建一个数组存储这一行数据,再用空格划分开,用循环将每两个数相乘放入第二个数组中,再将后一个数减一放入第二个数组中,最后判断第二个数组中元素是否为0,且最后一个元素后不带空格。
解题代码:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
String s=sc.nextLine();
String arr[]=s.split(" ");
int arr2[]=new int[arr.length];
for(int i=0;i<arr.length;i+=2){
arr2[i]=Integer.parseInt(arr[i])*Integer.parseInt(arr[i+1]);
arr2[i+1]=Integer.parseInt(arr[i+1])-1;
}
for(int i=0;i<arr2.length;i+=2){
if(arr[i+1].equals("0")){
continue;
}else{
if(i!=arr2.length-2){
System.out.print(arr2[i]+" "+arr2[i+1]+" ");
}else{
System.out.print(arr2[i]+" "+arr2[i+1]);
}
}
}
}
}