2013-08-01 5 views
-2

Вот мой код Мне нужна помощь в том, как правильно токенизировать каждый токен и помещать их в массив в каждом цикле моего цикла, а также как получить сумму массива и как получить самый отдаленный стоимость?Создание массива путем циклизации

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

public class Data{ 
public static void main (String[] args) throws IOException{ 
    String Filename = "Data.txt" ; 
    String line; 

     FileReader Filereader = new FileReader(Filename); 
     BufferedReader input = new BufferedReader(Filereader); 
     line = input.readLine(); 

     System.out.println("--- oOo ---"); 
     System.out.println("AVERAGE ACID LEVEL"); 
     System.out.println("--------------------------------------------"); 

     double[] nums = new double[13]; 
     int sum = 0; 

     while (line != null) // continue until end of file 
     { 

     StringTokenizer token = new StringTokenizer(line); 



      for (int i = 0; i < nums.length; i++) 
      { 

       String temp = input.readLine(); 
       nums[i] = Double.parseDouble(temp); 

       System.out.println(nums[i]); 
      } 

     } 
     input.close(); 

} 
    } 

Ох! Heres данные о data.txt

5.6 
6.2 
6.0 
5.5 
5.7 
6.1 
7.4 
5.5 
5.5 
6.3 
6.4 
4.0 
6.9 

любая помощь будет оценена ... СПАСИБО

+1

Если вы задаете эти вопросы, вы не должны написали этот код. Мы здесь не для того, чтобы делать домашнее задание для вас. Не просто вставляйте код и говорите «добавьте это». –

+1

Я до сих пор не знаю, почему тег Homework был удален из stackoverflow. – Algorithmist

ответ

3

Ну так как ваши значения данных находятся на новой линии каждый раз, вам не нужно StringTokenizer как вам может просто прочитать значение из строки

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

  1. считанное значение
  2. Добавить в массив (используйте ArrayList так может иметь динамическую длину)
  3. Добавить просуммировать
  4. Сравнить если Farest
+1

+1 - Это (ИМО) правильный ответ для такого рода вопросов. Важно, чтобы ОП учился делать свое собственное программирование! –

0

Попробуйте это,

while ((line = input.readLine()) != null) 

вместо

line = input.readLine(); // it having the first value 

потому что вы должны прочитать файл по строкам.

while (line != null) // so only your loop is unbreakable 

Dont копировать и вставлять. Попытаться понять.

while ((line = input.readLine()) != null) // This will read the file line by line till last value. 
     { 
      values[i] = Double.valueOf(line); 
      i++;       // This is for finding the total number of values from the file. 
     } 

     Double sampleInput = 0.0; 
     for(Double valueArray : values) 
     { 
      sampleInput = sampleInput + valueArray; // Atlast we sum all the array values. 
     } 

     Double output = (double) sampleInput/values.length; 
Смежные вопросы