public static int triple(int n)
{
if (n == 0)
return 0;
else
total = 3 + triple(n-1);
System.out.println(total);
return total;
}
Хорошо, у меня есть этот простой пример повторения, который я, кажется, просто не могу понять, я надеялся, что кто-то будет достаточно любезен, чтобы пройти меня по циклам за тем, как программа получает свой вывод.
Вот то, что я думал, произойдет.Допустим, n=5
Итак, программа циклически повторяет и нажимает total = 3 + triple(5-1)
, что, я думаю, будет равно 7 ... что неправильно, программа печатает
3
6
9
12
15
Итак ... потом я подумал, что триплет должен пробежать снова, прежде чем печатать итоговое значение ... что я верю, но я простотогда я вообще не понимаю, как все это получается.
Потому что это будет выглядеть так:
3 + triple(4)
3 + triple(3)
3 + triple(2)
3 + triple(1)
=3
Может кто-нибудь объяснить, пожалуйста, как вы можете, я очень потерян!