这个累加器怎么写? n=100;h(n)=h(n-1)+h(n-2);0+1+1+2+3+5+8+13...... 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 public class Add { public static int NUMBER = 100; public static void main(String[] args){ System.out.println(add(Add.NUMBER)); } static double add(int num){ double[] nums = new double[num]; double sum = 1; nums[0] = 0; nums[1] = 1; for(int i = 2; i < num; i++){ nums[i] = nums[i - 1] + nums[i - 2]; sum += nums[i]; } return sum; }} 递归式和递归入口都有了public int getH(int n) { if (n == 0) { return 0; } else if (n == 1) { return 1; } return getH(n - 1) + getH(n - 2); } 修改一下LS的,对于LS的测试来说,是没问题的不过如果求h(0)或h(1)时,即public static int NUMBER = 0; // or 1时就出错了。public class Add { public static int NUMBER = 100; public static void main(String[] args){ System.out.println(add(Add.NUMBER)); } static double add(int num){ if (num<=0) return 0; //here if (num == 1) return 1; //here double[] nums = new double[num]; double sum = 1; nums[0] = 0; nums[1] = 1; for(int i = 2; i < num; i++){ nums[i] = nums[i - 1] + nums[i - 2]; sum += nums[i]; } return sum; }} 读写文件出现乱码 关于JList和JScrollPane混用的问题? JAVA 泛型 问题,请各位热心人帮忙,谢谢 不声明类也可以? 用Java实现对Google数据的提取和重新包装? 关于java 中的泛型问题?很简单的问题,保证准时结贴. 磁盘空间不足的情况下如何关闭输出流,求大神指点,多谢~ 初学java,请教一个简单问题!谢谢! 有没有人知道jb5中application server的注册码? 哪位知道哪里错了 关于java显示中文的问题 如何平台无关的去掉文件名前的file:/
public class Add { public static int NUMBER = 100;
public static void main(String[] args){
System.out.println(add(Add.NUMBER));
}
static double add(int num){
double[] nums = new double[num];
double sum = 1;
nums[0] = 0;
nums[1] = 1;
for(int i = 2; i < num; i++){
nums[i] = nums[i - 1] + nums[i - 2];
sum += nums[i];
}
return sum;
}
}
if (n == 0) {
return 0;
}
else if (n == 1) {
return 1;
}
return getH(n - 1) + getH(n - 2);
}
不过如果求h(0)或h(1)时,即public static int NUMBER = 0; // or 1时就出错了。
public class Add { public static int NUMBER = 100;
public static void main(String[] args){
System.out.println(add(Add.NUMBER));
}
static double add(int num){
if (num<=0) return 0; //here
if (num == 1) return 1; //here double[] nums = new double[num];
double sum = 1;
nums[0] = 0;
nums[1] = 1;
for(int i = 2; i < num; i++){
nums[i] = nums[i - 1] + nums[i - 2];
sum += nums[i];
}
return sum;
}
}