题目:
求1+2+3+…+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。
思路:
-
题目要求不能使用for,if等条件判断语句,所以要用别的方式达到条件判断的效果,想到条件与&&有短路效果,可以用它作为判断终止条件。
-
例如:(n>0)&&(条件),当n>0时,执行后面条件,n等于0时,就不判断后面的程序。
代码:
public static int sum_Solution(int n) {
int sum=n;
boolean flag = (n > 0) && ((sum += sum_Solution(n - 1)) > 0);
return sum;
}