Java: массив с контуром
Мне нужно создать массив из 100 чисел (1-100), а затем вычислить, сколько всего это будет (1 + 2 + 3 + 4 +.. + 100 = сумма).
Я не хочу вводить эти числа в массивы вручную, 100 точек занимают некоторое время и стоят больше кода.
Я думаю что-то вроде использования переменной ++ до 100, а затем вычислить сумму всего этого. Не знаете, как именно это будет написано.
Но важно, чтобы это было в массивах, поэтому я также могу сказать позже: "Сколько стоит массив 55", и я могу легко его увидеть.
Ответы
Ответ 1
Вот как:
// 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);
Ответ 2
Если все, что вы хотите сделать, это вычислить сумму 1,2,3... n, то вы можете использовать:
int sum = (n * (n + 1)) / 2;
Ответ 3
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
Ответ 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...]
Ответ 5
Чтобы заполнить массив:
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
Ответ 6
Если ваш массив чисел всегда начинается с 1 и заканчивается на X, вы можете использовать следующую формулу:
sum = x * (x + 1)/2
от 1 до 100 сумма будет равна 100 * 101/2 = 5050
Ответ 7
это на самом деле суммирование арифметической прогрессии с общей разницей как 1. Таким образом, это частный случай суммы натуральных чисел. Его легко можно сделать с помощью одной строки кода.
int i = 100;
// Implement the fomrulae n*(n+1)/2
int sum = (i*(i+1))/2;
System.out.println(sum);
Ответ 8
int [] nums = new int [100];
int sum = 0;
//Заполните его цифрами, используя for-loop
for (int я = 0; я < nums.length; я ++)
{
nums[i] = i + 1;
sum += n;
}
System.out.println(сумма);
Ответ 9
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]);
}
}
}