3
I’m doing some exercises on and I stopped on this a few days ago.
I got to the following code:
/**
* Funcao: Soma dos primeiros valores ímpares positivos começando em 5.
* @param quantidade - quantidade de valores a somar
*
* valores esperados para quantidade = 1
* 5
* valores esperados para quantidade = 4
* 32
*/
public static int funcao06 (int quantidade){
int resposta = 5;
if(quantidade > 1){
IO.println ("(" + quantidade + ") Valor Impar: " + (funcao06(quantidade - 1) + 2));
} else {
resposta = 5;
IO.println ("(" + quantidade + ") Valor Impar: " + resposta);
}// fim do se
return (resposta);
} // fim do funcao06
Out of my job:
What am I doing wrong ?!
I noticed that in this case when I want the sum of the first three numbers I would have to call the function in the main as follows: sum (quantity - 1); Because f(0) = 5 is the first installment of the sum!
– water
It’s a matter of taste, you can change the function to start counting from 1 (instead of 0) by modifying the base case to quantity == 1, but normally in the programming we start counting from 0.
– Gustavo Fragoso
Yes, I left the comment as an actual observation! =)
– water