失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > java 数组中数字和_java – 查找数组中的数字总和 – 不包括数字13和它后面的数字...

java 数组中数字和_java – 查找数组中的数字总和 – 不包括数字13和它后面的数字...

时间:2022-09-08 02:46:43

相关推荐

java 数组中数字和_java – 查找数组中的数字总和 – 不包括数字13和它后面的数字...

我想用

Java编写一个程序,给定一个数组,找到数组中所有数字的总和 – 有一个例外!由于数字13非常不吉利,我建议我们将完全排除数字13,以及直接在13之后的数字(如果存在的话)从总和中排除.

该程序,我将称之为sum13,应该从以下输入产生以下结果(这些只是几个例子):

sum13([1,2,2,1])= 6这个是正常的;没有13在这里.

sum13([5,13,​​2])= 5 13和13之后的数字被排除在外.

sum13([13,13])= 0数组只包含13个,因此它们都不包括在内.

sum13([1,2,13,2,1,13])= 4一个稍长的预期输出示例.

这是我为sum13提出的代码:

public int sum13(int[] nums) {

int sum = 0;

for (int i = 0; i < nums.length; i++) {

// we start by adding all the non-13s to the sum

if (nums[i] != 13) sum += nums[i];

}

// now we go back and remove all the non-13s directly after a 13

for (int j = 0; j < nums.length; j++) {

// the outermost loop checks if the numbers are a 13

if (nums[j] == 13 && j < nums.length - 1) {

for (int k = j + 1; k < nums.length; k++) {

// this loop checks that the number after the 13 is not a 13

if (nums[k] != 13) {

sum -= nums[k];

break;

}

}

}

}

return sum;

}

上面的程序有效,虽然看起来确实很混乱!

有没有更好的方法来编写这样一个不包含多个循环和嵌套ifs的程序?

如果觉得《java 数组中数字和_java – 查找数组中的数字总和 – 不包括数字13和它后面的数字...》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。