gpt4 book ai didi

java - 递归求包括负数在内的数字之和

转载 作者:行者123 更新时间:2023-11-30 01:54:09 26 4
gpt4 key购买 nike

我正在使用 Java 中的递归(对我来说是一个新概念)来解决一些挑战。我目前正在研究一种递归方法,该方法给出给定长参数(n)的数字总和。预期输出:

  • 257 = 14
  • -257 = -14

我尝试编辑基本情况以仅包含 1 到 10 之间的数字,然后递减 sumOfDigits() 的总和,但显然您不能使用 if递归方法中的 >、else ifelse 语句。我被困住了!有人可以引导我找到解决方案吗?这是我的方法:

    public static long sumOfDigits(long n){

long sum = n %10;
if ( n < 10){
return sum;
} else {
return sum += sumOfDigits(n%10);
}
}

最佳答案

对于任何想知道的人,我自己设法解决了这个问题!解决办法:

public static long sumOfDigits(long n){

long sum = n %10;

if (n == 0) return 0;

if ( n >= 1 && n < 10){
return sum;
} else if (n < 0){
return sum - sumOfDigits(-n %10);
} else {
return sum + sumOfDigits(n%10);
}
}

关于java - 递归求包括负数在内的数字之和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55073001/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com