明天我的Comp Sci 2类的大型Java程序到期。 在一个主要的Java程序中,存在多个问题。
2。开发一个递归方法f2以计算结果1 / i + 2 /(i-1)+ 3 /(i-2)+…+(i-1)/ 2 + i / 1并返回一个值。无需在方法内部打印。
3。1999年,世界人口达到60亿,并以每年1.4%的速度增长。编写一个递归函数f3以返回/确定总人口将超过100亿的时间。
开发一个递归函数f4以返回序列String 调用f4(i)时为“ 1 2 3 4 5…i”。
与数字4相同,但相反。当调用F5(i)时,返回序列字符串“ 5 4 3 2 1 ...”。
开发一个递归函数f6以返回序列String 当调用f6(1,i)时为“ 1 2 3 4 5…i(i-1)(i-2)…5 4 3 2 1”。
我已经尝试为每个语句找出正确的if语句,并试图为每个语句找出正确的return语句和最终结果。
public class RecursiveMethod{
public static void main(String[] args){
F1(4096);
F2(1);
F3(6,000,000,000);
F4(i);
F5(i);
F6(1,i);
}
public static int F1(int n)
{
if (n==0){
return 1;
}else{
return n+n*2;
}
}
public static int F2(int i)
{
if(i==0){
return 0;
}else{
return F2(i++) + F2(i--);
}
}
public static int F3(int pop, int rate)
{
if(pop<=6,000,000,000){
return F3;
}else{
int Population = pop + (pop * rate / 100);
return F3(10,000,000,000);
}
}
public static String F4(String i)
{
if(Integer.parseInt(i) <= 1){
return "1";
}else{
return i + " " + F4(Integer.parseInt(i)+1);
}
}
public static String F5(String i)
{
if (Integer.parseInt(i) <= 1){
return "1";
}else{
return i + " " + F5(Integer.parseInt(i)-1);
}
}
public static String F6(String i)
{
if (Integer.parseInt(i) <= 1){
return "1";
}else{
return i + " " + F6(Integer.parseInt(i)+1) + F6(Integer.parseInt(i)-1);
}
}
}
每个编号的问题中都有预期的结果,尽管每个问题都不允许我在其中使用“ System.out.print”。