gpt4 book ai didi

java - 对给定范围 [a,b] 中的奇数求和?

转载 作者:行者123 更新时间:2023-11-29 07:42:41 26 4
gpt4 key购买 nike

我正在练习 UVA Online Judge 的一些练习,我尝试做基本上给定范围 [a,b] 的奇数和,计算从 a 到 b 的所有奇数的总和。

我编写了代码,但出于某种原因我不明白当范围为 [1,2] 时我得到的结果是 891896832,并且根据算法它应该是 1,不是吗?

import java.util.Scanner;
public class OddSum
{
static Scanner teclado = new Scanner(System.in);
public static void main(String[] args)
{
int T = teclado.nextInt();
int[] array = new int[T];
for(int i = 0; i < array.length; i++)
{
System.out.println("Case "+(i+1)+": "+sum());
}
}
public static int sum()
{
int a=teclado.nextInt();
int b = teclado.nextInt();
int array[] = new int[1000000];
for (int i = 0; i < array.length; i++)
{
if(a%2!=0)
{
array[i]=a;
if(array[i]==(b))
{
break;
}
}
a++;
}
int res=0;

for (int i = 0; i < array.length; i++)
{
if(array[i]==1 && array[2]==0)
{
return 1;
}

else
{
res = res + array[i];
}
}
return res;
}
}

最佳答案

只有当区间的高端为奇数时才会检查您的停止条件。

移动

if (array[i] == (b)) {
break;
}

if(a % 2 != 0) 子句之外。

一般来说,我认为您不需要数组,只需对循环中的奇数值求和,而不是将它们添加到数组中。

关于java - 对给定范围 [a,b] 中的奇数求和?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28734149/

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