在不使用循环的情况下乘以数组元素

时间:2016-06-18 14:27:16

标签: arrays recursion multiplication

如果我有数组a [] = {2,3,5}结果数组应为{(2 * 3)6,(2 * 5)10,(3 * 5)15}。 你不能使用循环。这可以解决使用递归,但我无法解决它。

2 个答案:

答案 0 :(得分:0)

递归地乘以数组。

void multiply(double[] a, double[] b, index){
    if(index==a.length){
        return;
    }
    a[index] = a[index]*b[index];
    multiply(a, b, index+1);
}

答案 1 :(得分:0)

int multiply1(int n, int left, int right)
{

    if(left==(n-1))
        return 1;

    //System.out.print(arr[left]+" ");
    //System.out.print(arr[right]+" ");
    System.out.println(arr[left]*arr[right]);
    right++;
    if(right==n)
    {
        left++;
        right=left+1;
    }
    multiply1(n, left, right);
    //arr1[start]=arr[ind]*arr[next];
    //multiply1(start+1, ind, next+1);
    return 0;
}