首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

口试编程题目

2012-06-26 
面试编程题目题目:求1+2++n,要求不能使用乘除法、for、while、switch、case等关键字以及条件判断语句(A?B:C)。?

面试编程题目

题目:求1+2++n,
要求不能使用乘除法、for、while、switch、case等关键字以及条件判断语句(A?B:C)。

?

看题目只能用递归解决这个问题。代码如下:

/** * 迭代计算 * @author feng * */public class Recursion {/** * 计算 n+(n-1)+(n-2)+...+1 * @param n * @return */public static int accumulation(int n){if(n==1){return 1;}else {return accumulation(n-1)+n;}}/** * 计算 n*(n-1)*(n-2)*...*1 * @param n * @return */public static long accmulationMultiplication(int n){if(n==1){return 1;}else {return accmulationMultiplication(n-1)*n;}}public static void main(String[] args) {System.out.println(Recursion.accumulation(1000));System.out.println(Recursion.accmulationMultiplication(20));}}
?

热点排行