Помогите с кодированием Java?JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Помогите с кодированием Java?

Сообщение Anonymous »

Мне дали задание пройти курс Java-программирования, и я дошел до того, что действительно не могу решить следующий шаг. Мне интересно, может ли кто-нибудь помочь мне с этим кодом, пожалуйста. Задание выглядит следующим образом:

Существует файл, содержащий общее количество осадков за каждый месяц года, по одному двойному значению в каждой строке. Напишите программу, которая:
  • Просит пользователя ввести имя файла.
  • Считывает данные из этого файла, сохраняя каждое значение в массиве.
  • Итерирует массив и распечатывает общее количество осадков за год.
  • Итерирует через массив и распечатывает среднемесячное количество осадков.
  • Проходит по массиву и выводит месяц с минимальным количеством осадков и его количество. (Печать названия месяца принесет дополнительные баллы).
  • Проходит по массиву и распечатывает месяц с наибольшим количеством осадков и его количество. (Опять-таки преобразование номера месяца в строку принесет дополнительные баллы).
На данный момент я выполнил первые два шага и почти есть код для третьего шага.

Используемый мной файл данных выглядит примерно так:

1,80
2,70

3,75

4,40

5,20

6,15

7,30
8,45

9,60

10,90

11,85

12,100


То, что я сделал, здесь написано:

1.80

2,70 и т. д., что означает, что «1» — январь, «2» — февраль и т. д.

Таким образом, число после точки — это количество осадков. Поэтому мне нужно подсчитать сумму всех чисел в правой части каждой точки.

Тогда мой код таков:

Код: Выделить всё

import java.util.*;
import java.io.*;

class Assignment5{
public static void main(String[] args)throws Exception{
String data;

ArrayList store = new ArrayList();
Scanner scanner = new Scanner(System.in);

System.out.println(" ");
System.out.println("Please enter the name of a file with .txt at the end.");
System.out.println(" ");
data = scanner.nextLine();

File inputFile = new File(data);
Scanner reader = new Scanner(inputFile);

while(reader.hasNext()){
store.add(reader.nextDouble());
}

calculateSum(store);
store.clear();

}

private static void calculateSum(ArrayList ArrayList){
double sum = 0;
double avg = 0;
double total = 0;
double totalrainfall = 0;

Iterator iterator = ArrayList.iterator();

while(iterator.hasNext()){
sum += iterator.next();
}

total = ArrayList.size();
avg = (sum / total);

System.out.println(" ");
System.out.println("The total rainfall is " + totalrainfall);

}
Я застрял на расчете общего количества осадков. Данные представляют собой двойное значение, поэтому мне нужно вычислить все целые числа после точки в файле данных. Я не могу понять, как поместить это в свой код. Заранее спасибо за помощь!

Подробнее здесь: https://stackoverflow.com/questions/169 ... ava-coding
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»