我试图在Java中创建一个方法,它打印fib序列,直到传递给该方法的数字。我的问题是,我需要使用int返回类型来返回序列,而我不能使用递归。
public void fibonacci(int num) {
int a = 0;
int b = 0;
int c = 1;
for (int i = 0; i < num; i++) {
a = b;
b = c;
c = a + b;
System.out.print(c + ", ");
}
}
public int fibonacci(int num) {
//some code...
return x; //This is what confuses me. I know this isn't right.
}
//Method call in driver class.
fibonacci(5);
//This would print to console.
1, 1, 2, 3, 5
您可以使用等式[(h)^a-(j)^a]*[1/SQRT(5)]
。
'a'
是所需的斐波那契数'h'
是[1+sqrt(5)]/2'j'
是[1-sqrt(5)]/2public static int returnFibonacci(int a) {
double firstTerm; // calculate h
double secondTerm; //calculate j
double fib; //calculate 1/sqrt(5) with firstTerm and secondTerm
}
所以我明白了如何使用一个递归方法,它有一些其他的返回类型,而不是作废。通常我会在同一个方法中再次调用相同的方法(在递归的情况下),同时在调用中递减或增加一些值以达到基本情况。然后在某个时候达到基本情况,问题就解决了,所以它开始返回每个调用的值。沿着这些路线。 但是 如果该方法的返回类型为void,那么您不能调用该方法,因为它不会/不能返回任何内容,该怎么办?我试着倒着写一个句子,我已经用for循环
为了概括这个问题,我借用了Zelenski CS课堂讲义中的材料。而且,这与我的具体问题有关,因为几年前我从另一位讲师那里学习了C语言的这种方法。讲义在这里。我对C的理解很低,因为我偶尔使用它。基本上,我需要编写一个程序的几次,我回到课堂材料,找到类似的东西,然后从那里开始。 在本例(第4页)中,Julie正在字符串函数中使用递归算法查找单词。为了减少递归调用的数量,她添加了一个决策点。 为了增加
我有一个递归函数,它会重复这个函数,直到不满足if条件,然后输出一个整数。但是,此函数之外需要整数的函数正在接收一个单位。我应该如何修改代码以返回int? 这就是整个程序 }
问题内容: 我有一个适用于Django应用的命令行Python API。当我通过API访问该应用程序时,它应该返回JSON,而在浏览器中它应该返回HTML。我可以使用不同的URL访问不同的版本,但是如何只用一个模板在views.py中呈现HTML模板和JSON ? 要呈现HTML,我将使用: 但是如何在不放置JSON模板的情况下对JSON做同样的事情?(应为而不是) 什么将决定JSON和HTML输
问题内容: 考虑以下示例(OOP书籍中的典型示例): 我有一Animal堂课,每个人Animal可以有很多朋友。 和子类喜欢Dog,Duck,Mouse等里面加如特定行为bark(),quack()等等。 这是Animal课程: 这是一些带有大量类型转换的代码片段: 有什么办法可以将泛型用于返回类型来摆脱类型转换,所以我可以说 这是一些带有返回类型的初始代码,这些代码作为从未使用过的参数传递给该方
我现在正在学习Java,有一个任务,我应该创建一个方法,在输入两个关键字中的一个之前,一直要求用户输入。然后,它应该返回一个int。