题目:
随机产生一个数组,要求数组前两个元素之和插入到第三个元素的后面,以此类推
例如:一组数组{3, 5, 7, 8, 9,4}
构成的新的数组是{3, 5, 7, 8, 8, 9 , 4 , 17}
8 和17 为新插入的元素
如果9后面没有元素,那么就不用变化
public class Demo{
public static void main(String[] args) {
//定义一组随机数组
int [] arr = new int[6];
for (int i = 0; i < arr.length; i++) {
int num = (int)(Math.random()*20+1);
arr[i] = num;
}
//新增元素的长度可以用arr数组的长度/3来计算,3个元素为一个周期 才能插入一个新的元素
int arrNewLength = arr.length +(int)(arr.length/3);
//定义一个新的数组,来装新的元素和之前旧的元素
int [] arrNew = new int[arrNewLength];
int j = 0;//做新数组arrNew的下标值
for (int i = 0; i < arr.length; i++) {
arrNew[j] = arr[i];
j++;
//当数组元素的下标值是3的倍数的时候,插入新的元素
if((i+1)%3==0) {
arrNew[j] = arr[i-1] + arr[i-2];
j++;
}
}
//遍历新的数组并输出
for (int i = 0; i < arrNew.length; i++) {
System.out.print(arrNew[i]+"\t");
}
}
}