Java判断一组数字是否是等差数列
公式:
1.先排序
2.当前数=第一个数+相邻两数的差【公差】*当前位置
eg:
1,3,5 每个数字之间相差2,假如当前数是5,则与前面相差两个2, 因为如果是等差数列的话,那么后面相邻的两数之差肯定是不变的 所以直接可把公差定为(第二个数-第一个数)即可,则公式为:
当前数[5]==第二个数-第一个数[3-1]*当前位置[从0开始的话是2]
int [] arrg=new int[]{1,5,3,7};
//先排序
Arrays.sort(arrg);
for (int i=0;i<arrg.length;i++) {
boolean isF=arrg[i]==arrg[0]+(arrg[1]-arrg[0])*i;
//如果为false则退出循环,并告知这不是等差数列
if(!isF){
System.out.println("该组数字不是等差数列");
break;
}
if(i==arrg.length-1 && isF){
System.out.println("该组数字是等差数列");
}
}