Quantcast
Channel: Programming Forums
Viewing all articles
Browse latest Browse all 51036

Statistics on a data file.

$
0
0
I am having trouble setting the parameters on my ArrayList. Any suggestions on where to start or what I am doing wrong? Thanks any input is considered...

heres the parameter...
>90 A
>80 B
>70 C
>65 D
65> F


import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;

public class Lab
{
    final String FILE_NAME = "grades.txt";
    public ArrayList _ListGrades= new ArrayList();
    public ArrayList _ListLetterGrades= new ArrayList();
    
    public void ConvertToLetterGrades()
    {
        for(int i=0;i<_ListGrades.size();i++)
        {
            switch((int)_ListGrades.get(i))
            {
                case 1: _ListLetterGrades.add("A"); break;
                case 2: _ListLetterGrades.add("B"); break;
                case 3: _ListLetterGrades.add("C"); break;
                case 4: _ListLetterGrades.add("D"); break;
                default:_ListLetterGrades.add("F");break;
            }
        }
    }
    public void DisplayGrades()
    {
         for(int i=0;i<_ListGrades.size();i++)
        {
            System.out.println(_ListGrades.get(i).toString());
        }
    }
    
    public void DisplayLetterGrades()
    {
         for(int i=0;i<_ListLetterGrades.size();i++)
        {
            System.out.println(_ListLetterGrades.get(i).toString());
        }
    }
    
    public int FindMin()
    {
        int min = (int)_ListGrades.get(0);
        for(int i=0;i<_ListGrades.size();i++)
        {
            if(min > (int)_ListGrades.get(i))
                min = (int)_ListGrades.get(i);
        }
        return min;
    }
    
    public int FindMax()
    {
        int max = (int)_ListGrades.get(0);
        for(int i=0;i<_ListGrades.size();i++)
        {
            if(max < (int)_ListGrades.get(i))
                max = (int)_ListGrades.get(i);
        }
        return max;
    }
    public double FindAvg()
    {
        int sum = 0;
        for(int i=0;i<_ListGrades.size();i++)
        {
            sum = sum + (int)_ListGrades.get(i);
        }
        return (double)sum /_ListGrades.size();
    }
    
    public void ReadFile() throws IOException
    {
       BufferedReader br = new BufferedReader(new FileReader(FILE_NAME));
       try
       {
           String line = br.readLine();
           while (line != null)
           {
               try
               {
                   _ListGrades.add(Integer.parseInt(line));               
               }
               catch(Exception exp)
               {
                   System.out.println(line + " is not a number.");
               }
               line = br.readLine();
           }
       }
       finally
       {
            br.close();
       }
    }
}

//////clientclass

public class ClientClass {
	
	    public static void main(String[] args) throws Exception
	    {
	        Lab _pg = new Lab();
	        _pg.ReadFile();
	        _pg.DisplayGrades();
	        System.out.println("Min grade : "+_pg.FindMin());
	        System.out.println("Max grade : "+_pg.FindMax());
	        System.out.println("Avg grade : "+_pg.FindAvg());
	        _pg.ConvertToLetterGrades();
	        _pg.DisplayLetterGrades();
	    }
	}






Viewing all articles
Browse latest Browse all 51036

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>