我需要编写一个方法,将两个数组的最后两个元素相加,并将总和添加到另一个数组上。但如果这两个元素超过 10,那么我需要将该数字携带到下一个数组。
这个程序应该类似于里程表的功能。
这是我的示例代码。
int [] sum(int []number1, int []number2)
{
int [] total;
int carry = 0;
for ( int k = numbers1 - 1; k >= 0; k++)
{
sum = number1[k] + number2[k] + carry;
carry = sum/10;
total[k] = sum
}
return total;
}
示例输出如下:
0 1 2 3 4
0 8 9 9 9
4 5 7 0 3
5 4 7 0 2
所以顶部数组只是一个视觉辅助工具,告诉我们数字的位置。 该程序假设将接下来的两个数组添加在一起。即 9 + 3 = 12 由于 12 高于 9,因此它将 10 转移到下一组数组,这就是为什么第三个数组的位置只有 2,这就是为什么下一个数组是 9 + 0 = 0;因为 10 被结转了。
我不确定为什么我的代码不起作用。我没有得到正确的数字。谁能给这个问题任何提示或解决方案?
-谢谢
最佳答案
我假设numbers1
是数组中元素的数量。
在本例中,它应该是 k--
而不是 k++
,因为您是从最后一个元素开始并移动后台词。
关于java - 添加数组中的两个元素 (Java),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35963442/