Как найти сумму всех чисел, введенных до или после поиска списка отсортированных массивов? - PullRequest
0 голосов
/ 16 июня 2019

Я написал программу в ArrayList для поиска отсортированного массива.Но я также должен найти сумму введенных чисел.

Мне не удалось получить результаты, как в списке массивов

import java.util.ArrayList;
import java.util.Scanner;

public class project1 {

public static void main(String[] args) {

int add = 0;
    Scanner input = new Scanner(System.in);
    System.out.print("Enter 5 numbers: ");
    ArrayList<Integer> list = new ArrayList<>();
    for (int i = 0; i < 5; i++) list.add(input.nextInt());

    System.out.println("add" +add);
    System.out.println("Sorting numbers...");
    sort(list);
    System.out.println("Displaying numbers...");
    System.out.println(list);

}

public static void sort(ArrayList<Integer> list) {
    for (int i = 0; i < list.size() - 1; i++) {
        int currentMin = list.get(i);
        int currentIndex = i;

        for (int j = i + 1; j < list.size(); j++) {
            if (currentMin > list.get(j)) {
                currentMin = list.get(j);
                currentIndex = j;
            }
        }

       if (currentIndex != i) {
            list.set(currentIndex, list.get(i));
            list.set(i, currentMin);
        }
    }
}
}

Я ищу, чтобы получитьсумма введенных чисел вместе с сортировкой.Буду очень признателен за любую помощь.

Ответы [ 3 ]

0 голосов
/ 16 июня 2019
 ArrayList<Integer> list = new ArrayList<>();
int sum = 0
for (int i = 0; i < 5; i++) {
int in = input.nextInt();
sum = sum + in;
list.add(in);
 }
0 голосов
/ 16 июня 2019

Вы можете просто написать sum += currentMin в нижней части цикла for (int i; .... Таким образом, вы подсчитываете каждое число ровно один раз, после того, как оно поставлено на конечное место.

0 голосов
/ 16 июня 2019

измените это

    for (int i = 0; i < 5; i++) list.add(input.nextInt());

на это

    int sum  = 0;

    for (int i = 0; i < 5; i++){
      int num = input.nextInt();
      list.add(num);
      sum += num;
   } 

значение суммы сохраняется внутри суммы, и вы можете делать с ней все, что захотите.Я использую цикл For, чтобы добавить значения, введенные пользователем, в сумму имени переменной, которая находится вне цикла for, и когда цикл for будет завершен, у вас будет сумма

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...