Программа которая вычисляет сумму элементов массива

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

Отслеживать
задан 3 сен 2011 в 15:53
user2771 user2771

9 ответов 9

Сортировка: Сброс на вариант по умолчанию

Честно не понял вопроса. В начале говорится — пытаюсь получить сумму некоторых чисел. а что значит некоторых?? Если всех чисел, то это очень просто сделать:

public static void testArray() < int myArray[] = ; int sum = 0; for (int i = 0; i < myArray.length; i++) < sum = sum + myArray[i]; >System.out.println(sum); >
Отслеживать
user417380
ответ дан 3 сен 2011 в 16:02
1,674 9 9 серебряных знаков 8 8 бронзовых знаков

Ну да, наверное всех. Не так выразился.

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

Информатика 9 класс. ВЫЧИСЛЕНИЕ СУММЫ ЭЛЕМЕНТОВ МАССИВА (УМК БОСОВА Л.Л., БОСОВА А.Ю.)

3 сен 2011 в 16:07
Я написал вам код, который суммирует все числа в массиве ,какой бы длины он ни был.
3 сен 2011 в 16:08
Блин так просто! Спасибо!

3 сен 2011 в 16:09

Нажмите только это спасибо))) Если ответ вам подошел, то заодно выбор ответа, чтобы вопрос закрылся)))

3 сен 2011 в 16:09
sum += myArray[i];
29 июл 2016 в 1:18

В Java 8 можно в 1 строку с помощью stream

int myArray[] = ; int total = IntStream.of(myArray).sum();

Читайте также:
Программы для скачивания видео с ютуба отзывы

аналогично можно использовать класс Arrays

Arrays.stream(myArray).sum()

Метод stream имеет перегрузки для примитивных типов и обобщенный вид, что подойдет для массивов других типов.

Отслеживать
ответ дан 13 мая 2016 в 4:49
383 4 4 серебряных знака 11 11 бронзовых знаков

Существует несколько способов найти сумму элементов в массиве:

    Используя Java 8 Stream API (сначала с помощью метода Arrays::stream преобразовываем массив в поток целых чисел, затем получаем сумму этого потока методом Stream::sum )

int array[] = ; int sum = Arrays.stream(array).sum();
int array[] = ; int sum = 0; for (int element : array) sum += element;
int array[] = ; int sum = 0; for (int i = 0; i < array.length; ++i) sum += array[i];

Онлайн примеры кода:

Отслеживать
ответ дан 18 ноя 2017 в 23:36
9,315 6 6 золотых знаков 23 23 серебряных знака 57 57 бронзовых знаков
>> задан 3 сен ’11 в 15:53 — спасибо вам за ответ!
20 ноя 2017 в 5:25

/** * Sum of all elements from 1 to 1000 */ final int sum = Stream.iterate(1, n -> n + 1).limit(1000).mapToInt(el -> el).sum();
Отслеживать
ответ дан 14 мар 2019 в 0:50
111 3 3 бронзовых знака
for (int i = 0; i
Отслеживать
user417380
ответ дан 2 апр 2017 в 20:02

Вот 3 способа, от самого примитивного, до нормального. Сильно не критикуйте, сам только учусь.

import java.util.Arrays; // сумма всех элементов массива, способ первый class BlaBlaBla1 < public static void main(String[] args) < int[] nums = ; int sum = 0; for (int i = 0; i < nums.length; i++) sum += nums[i]; System.out.println(«1ый способ = » + sum); >> // сумма всех элементов массива, способ второй class BlaBlaBla2 < public static void main(String[] args) < int[] nums = ; int sum = 0; sum = Arrays.stream(nums).sum(); System.out.println(«2ой способ = » + sum); > > // сумма всех элементов массива, способ третий: FOR-EACH class BlaBlaBla3 < public static void main(String[] args) < int[] nums = ; int sum = 0; for (int x : nums) sum += x; System.out.println(«3ий способ = » + sum); > >

Читайте также:
Запуск программы невозможен так как на компьютере отсутствует dll файл

Источник: ru.stackoverflow.com

C++ | Сложение элементов массива

3. Операции обработки одномерных массивов

Вычислим сумму элементов массива из предыдущей теории — усовершенствуем программу. Цикл, с помощью которого выводился массив, заменим на цикл, который будет прибавлять к переменной (s) каждый последующий элемент массива.

Скриншот 15-10-2021 014651.jpg Скриншот 15-10-2021 014703.jpg

Задачи на поиск в массиве
Поиск максимального значения.

Идея поиска максимального значения заключается в следующем: каждый элемент массива поочерёдно сравнивается со следующим. Если он больше, то некоторой переменной max будет присвоено значение этого элемента. Напишем программу.

Скриншот 15-10-2021 021637.jpg Скриншот 15-10-2021 021648.jpg

Найдём наибольшее число, удовлетворяющее некоторому условию.

Задача: найти максимальное чётное число. Для этого добавим в условие проверку на чётность при помощи операции mod.

Скриншот 15-10-2021 022623.jpg Скриншот 15-10-2021 022637.jpg

Обмен значениями между элементами
Допустим, нам нужно удалить некоторый элемент массива.

Скриншот 15-10-2021 023238.jpg

Удалим элемент с индексом (6). Для этого добавляем ещё одну переменную, которая будет обозначать индекс удаляемого элемента. Далее массив будем выводить по частям. До удаляемого элемента — без изменений, пропустим удаляемый элемент и выведем остаток массива.

Источник: www.yaklass.ru

Вычисление суммы элементов списка при помощи рекурсии

Программа принимает на вход список и вычисляет сумму его элементов, используя рекурсию.

Решение задачи

  1. Определяем рекурсивную функцию, которая в качестве аргументов принимает список и его длину.
  2. Принимаем длину цикла и записываем ее в отдельную переменную.
  3. Создаем новую переменную и инициируем ее пустым списком.
  4. Для добавления элементов в список используем цикл.
  5. Передаем сформированный список и его длину в рекурсивную функцию в качестве аргументов.
  6. В качестве базы рекурсии принимается условие равенства длины списка 0 . Если длина списка равна 0 , работа функции завершается и она возвращает в качестве результата 0 .
  7. В противном случае возвращается сумма последнего элемента списка вместе с рекурсивным вызовом функции, где длина массива уменьшена на 1 .
  8. Значение рекурсивной функции записывается в отдельную переменную, значение которой потом выводится на экран.
  9. Конец.
Читайте также:
Программа выводит на экран фразы

Исходный код

Ниже дан исходный код, который вычисляет сумму элементов списка при помощи рекурсии. Результаты работы программы также даны ниже.

def sum_arr(arr, size): if (size == 0): return 0 else: return arr[size — 1] + sum_arr(arr, size — 1) n = int(input(«Введите длину списка:»)) a = [] for i in range(0, n): element = int(input(«Введите элемент списка:»)) a.append(element) print(«Весь список:») print(a) print(«Сумма элементов списка равна:») b = sum_arr(a, n) print(b)

Объяснение работы программы

  1. Пользователь вводит число элементов списка, которое сохраняется в отдельной переменной n .
  2. Далее пользователь n раз вводит элементы массива, длину которого мы будем вычислять.
  3. Введенные данные добавляются в заранее созданный список a при помощи функции append() . Для наглядности окончательный список выводится на экран.
  4. Затем введенный список и его длина передаются в качестве аргументов в рекурсивную функцию sum_arr() , код которой мы написали ранее.
  5. Как только длина списка уменьшается до 0 , работа функции прекращается и она перестает вызывать сама себя.
  6. Пока длина списка не равна нулю, функция возвращает сумму последнего элемента списка и вызов самой себя с длиной списка, уменьшенной на 1 .
  7. Результат работы функции записывается в переменную b , которая затем выводится на экран.

Результаты работы программы

Пример 1: Введите длину списка:3 Введите элемент списка:3 Введите элемент списка:56 Введите элемент списка:7 Весь список: [3, 56, 7] Сумма элементов списка равна: 66 Пример 2: Введите длину списка:5 Введите элемент списка:23 Введите элемент списка:45 Введите элемент списка:62 Введите элемент списка:10 Введите элемент списка:56 Весь список: [23, 45, 62, 10, 56] Сумма элементов списка равна: 196

Источник: pythonist.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru