宿命的*_*な孤独 1 java algorithm math recursion
让我们说对于用户输入1,我可以很容易地找到它的平方.(单个数字输入)如何使用递归方法查找平方和(输入多个数字),例如12345应该给出1*1 + 2*2 + 3*3 + 4*4 + 5*5 = 55?对于基本情况,这是num == 1对的吗?从那里,我如何计算后面的后续数字1?
public static int squareSum(int num) {
if (num == 1) {
return num*num;
} else {
return 0;
}
}
Run Code Online (Sandbox Code Playgroud)
你必须先考虑一些小步骤.这都是关于提取数字和计算方块.
public static int squareSum(int num) {
if (num == 0) return 0;
return (num%10)*(num%10) + squareSum(num/10);
}
Run Code Online (Sandbox Code Playgroud)
对于12345: -
f(12345)
f(1234)+5*5
f(123)+4*4+5*5
f(12)+3*3+4*4+5*5
f(1)+2*2+3*3+4*4+5*5
f(0)+1*1+2*2+3*3+4*4+5*5
Run Code Online (Sandbox Code Playgroud)