Суммы чисел для отдельных строк в текстовом файле - PullRequest
0 голосов
/ 30 апреля 2020

Для программы мне нужно вывести сумму каждой строки после чтения .txt файла. Мой код читает файл после его ввода (есть два разных файла), он также находит сумму всех чисел и среднее их всех. Но как мне найти сумму каждой строки и вывести ее рядом с соответствующей строкой?

Here is what one looks like:

10 20 30 40 50
15 25 35 45 55
25 35 45 55 65
35 45 55 65 75
public static double totalSales(String fn) throws IOException
   {
      int total = 0;
      double sales;
      File file = new File(fn);
      Scanner inputFile = new Scanner(file);

      while (inputFile.hasNext())
      {
         sales = inputFile.nextDouble();
         total += sales;
      }
      inputFile.close();
      return total;
   }

У меня есть этот код для общего количества всех чисел. Согласно моим инструкциям, я должен использовать другой метод, который будет вызываться основным "displayWeeklySales", который будет использовать 5 аргументов и display и integer после display. Я ... просто очень запутался и хотел бы получить помощь, чтобы начать писать его в мой код.

1 Ответ

0 голосов
/ 30 апреля 2020

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

public static double totalSales(String fn) throws IOException {
    int total = 0;
    double sales;
    File file = new File(fn);
    Scanner inputFile = new Scanner(file);
    String line;
    while (inputFile.hasNextLine()) {
        sales = 0.0;
        line = inputFile.nextLine();
        String[] data = line.split("\\s+");
        for (String s : data) {
            sales = Double.parseDouble(s);
            total += sales;
        }
        System.out.println("Sale of the week: " + sales);
    }
    inputFile.close();
    return total;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...