所以,我的全部意思是打印出正数的总和,并且我已经添加并打印得很好,唯一的问题是它还添加了负数。
关于为什么会这样的任何想法? 我只是希望它添加正数。
public static double computeSumPositive(double[]numbers, int count)
{
double total=0;
{
if(count>0)
{
total = numbers[count-1] + computeSumPositive(numbers, count -1);
return total;
}
else
return total;
}
}
答案 0 :(得分:1)
您需要检查要添加的值。类似的东西:
public static double computeSumPositive( double[] numbers, int count )
{
double total = 0;
{
if( count > 0 )
{
double val = (numbers[count - 1] > 0)?numbers[count - 1]:0;
total = val + computeSumPositive( numbers, count - 1 );
return total;
}
else
return total;
}
}
答案 1 :(得分:0)
因为你没有检查有问题的数字是否为负,所以如果我理解你想要忽略numbers
数组中的所有负数,就像这样:
public static double computeSumPositive(double[] numbers, int count) {
double total = 0;
if (count > 0) {
if (numbers[count - 1] < 0) {
total = numbers[count - 1] + computeSumPositive(numbers, count - 1);
} else {
total = computeSumPositive(numbers, count - 1);
}
}
return total;
}
每次代码循环时,你也不需要在if
jus内部返回值。
答案 2 :(得分:0)
urlpatterns = [
path('', views.index, name='index'),
path('search/<str:searchcode>', views.index, name='index_search'),
path('search/detail/<str:place_id>', views.searchdetail, name='detail_search'),
path('result/<str:searchcode>', views.index, name='index_result'),
]