我需要创建一个包含100个数字(1-100)的数组,然后计算它的全部数量(1 + 2 + 3 + 4 + .. + 100 =总和)。
我不想手动将这些数字输入数组,100个点需要一段时间,而且代价更高。
我正在考虑使用变量++直到100,然后计算它的总和。不知道究竟会写得多么准确。 但重要的是它在数组中,所以我稍后也可以说,“数组55多少”,我可以很容易地看到它。
答案 0 :(得分:41)
以下是:
// Create an array with room for 100 integers
int[] nums = new int[100];
// Fill it with numbers using a for-loop
for (int i = 0; i < nums.length; i++)
nums[i] = i + 1; // +1 since we want 1-100 and not 0-99
// Compute sum
int sum = 0;
for (int n : nums)
sum += n;
// Print the result (5050)
System.out.println(sum);
答案 1 :(得分:9)
如果您只想计算1,2,3 ... n的总和,那么您可以使用:
int sum = (n * (n + 1)) / 2;
答案 2 :(得分:6)
int count = 100;
int total = 0;
int[] numbers = new int[count];
for (int i=0; count>i; i++) {
numbers[i] = i+1;
total += i+1;
}
// done
答案 3 :(得分:4)
我不确定您希望生成的数组是什么结构,但以下代码将执行我认为您要求的内容:
int sum = 0;
int[] results = new int[100];
for (int i = 0; i < 100; i++) {
sum += (i+1);
results[i] = sum;
}
为您提供循环[1, 3, 6, 10...]
答案 4 :(得分:2)
填充数组:
int[] numbers = new int[100];
for (int i = 0; i < 100; i++) {
numbers[i] = i+1;
}
然后总结一下:
int ans = 0;
for (int i = 0; i < numbers.length; i++) {
ans += numbers[i];
}
或简而言之,如果您想要从1到 n 的总和:
( n ( n +1))/ 2
答案 5 :(得分:1)
如果您的数字数组始终以1开头并以X结尾,那么您可以使用以下公式: sum = x *(x + 1)/ 2
从1到100,总和将是100 * 101/2 = 5050
答案 6 :(得分:1)
这实际上是具有共同差异的算术级数的总和为1.因此,这是自然数之和的特殊情况。它很容易用一行代码完成。
int i = 100;
// Implement the fomrulae n*(n+1)/2
int sum = (i*(i+1))/2;
System.out.println(sum);
答案 7 :(得分:0)
int [] nums = new int [100];
int sum = 0;
//使用for循环用数字填充它 for(int i = 0; i&lt; nums.length; i ++)
{
nums[i] = i + 1;
sum += n;
}
的System.out.println(总和);
答案 8 :(得分:-1)
Array声明没有初始化值,如果你想通过迭代循环来插入值,这个代码就可以了。
Public Class Program
{
public static void main(String args[])
{
//Array Intialization
int my[] = new int[6];
for(int i=0;i<=5;i++)
{
//Storing array values in array
my[i]= i;
//Printing array values
System.out.println(my[i]);
}
}
}