Страницы

Поиск по вопросам

среда, 11 декабря 2019 г.

Как найти сумму чисел из массива в java?

#java #массивы


Пытаюсь получить сумму всех чисел

Например:

public static void testArray() {
    int myArray[] = {3,5,7,12};
    for(int i=0; i=myArray.length-1){
            i2=0;
            i2=0;
        }
        int sum=myArray[i]+myArray[i2];
        System.out.println(sum);
    }
}


Да, да, я знаю, что этот код - кусок бреда, который даже близко не выполняет свою
функцию, но я уже голову себе сломал и далеко я не математик (и не программист).

Как же мне найти сумму чисел в массиве, при условии что длина массива может быть
произвольной, а числа в нем разные, не имеющие какой либо последовательности?
    


Ответы

Ответ 1



Честно не понял вопроса. В начале говорится - пытаюсь получит сумму некоторых чисел... а что значит некоторых?? Если всех чисел, то это очень просто сделать public static void testArray() { int myArray[] = {3,5,7,12}; int sum=0; for(int i=0; i

Ответ 2



В Java 8 можно в 1 строку с помощью stream int myArray[] = {3, 5, 7, 12}; int total = IntStream.of(myArray).sum(); аналогично можно использовать класс Arrays Arrays.stream(myArray).sum() Метод stream имеет перегрузки для примитивных типов и обобщенный вид, что подойдет для массивов других типов.

Ответ 3



Существует несколько способов найти сумму элементов в массиве: Цикл с использование индексов int array[] = {3, 5, 7, 12}; int sum = 0; for (int i = 0; i < array.length; ++i) sum += array[i]; Цикл по элементам (for-each цикл) int array[] = {3, 5, 7, 12}; int sum = 0; for (int element : array) sum += element; Используя Java 8 Stream API (сначала с помощью метода Arrays::stream преобразовываем массив в поток целых чисел, затем получаем сумму этого потока методом Stream::sum) int array[] = {3, 5, 7, 12}; int sum = Arrays.stream(array).sum(); Онлайн примеры кода: Цикл по индексам Цикл for-each Java 8 Stream API

Ответ 4



public class test{ public static int [] myArray; public static void main(String []args){ int myArray[] = {3,5,7,12}; System.out.print(sum(myArray)); } public static int sum(int [] arr) { return sum(arr, 0, 0); } public static int sum(int [] arr, int sum, int count){ sum += arr[count]; if (count < arr.length -1) return sum(arr,sum,count+1); return sum; } }

Ответ 5



считаем сумму двух чисел. если находится верни TRUE public class moed2AQuation2A2015 { public static void main (String args[]){ int arr[] = {-2,3,5,7,12}; System.out.println(sum2(arr, 19)); } public static boolean sum2(int [] arr, int num){ return sum2(arr, num, 0, arr.length - 1); } public static boolean sum2(int [] arr, int n,int first,int second){ int summa = arr[first] + arr[second]; if (summa == n) return true; if (second < first && first == second) return false; if (first < arr.length - 1 && second != first) return sum2(arr,n,first,second-1) || sum2(arr,n,first+1,second); else return false; } }

Ответ 6



/** * calculate sum of the array */ public static void main(String []args){ int myArray[] = {3,5,7,12}; System.out.print(sum(myArray)); } public static int sum(int [] arr) { return sum(arr, arr.length-1); } public static int sum(int [] arr, int n){ if(n==0) return arr[0]; else return arr[n]+ sum(arr,n-1); }

Ответ 7



for (int i = 0; i < arraySize; i++) { numbers[i] = numberOfArrayElements.nextInt(); sum = sum + numbers[i]; }

Ответ 8



/** * Sum of all elements from 1 to 1000 */ final int sum = Stream.iterate(1, n -> n + 1).limit(1000).mapToInt(el -> el).sum();

Ответ 9



Вот 3 способа, от самого примитивного, до нормального) сильно не критикуйте, сам только учусь) import java.util.Arrays; // сумма всех элементов массива, способ первый class Bla-Bla-Bla1 { public static void main(String[] args) { int[] nums = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; int sum = 0; for (int i = 0; i < nums.length; i++) sum += nums[i]; System.out.println("1ый способ = " + sum); } } // сумма всех элементов массива, способ второй class Bla-Bla-Bla2 { public static void main(String[] args) { int[] nums = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; int sum = 0; sum = Arrays.stream(nums).sum(); System.out.println("2ой способ = " + sum); } } // сумма всех элементов массива, способ третий: FOR-EACH class Bla-Bla-Bla3 { public static void main(String[] args) { int[] nums = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; int sum = 0; for (int x : nums) sum += x; System.out.println("3ий способ = " + sum); } }

Комментариев нет:

Отправить комментарий