import java.util.Scanner;

public class BaseballStats
{
    public static void main(String[] args){
        intro();    
        handleOnePlayer();
    }
    
    // get input for one player
    public static void handleOnePlayer(){
        Scanner key = new Scanner(System.in);
        int sing = getNumber(key, "singles");
        int doub = getNumber(key, "doubles");
        int triples = getNumber(key, "triples");
        int hrs = getNumber(key, "home runs");
        int walks = getNumber(key, "walks");
        int abs = getNumber(key, "at bats");
        System.out.println();
        calculateResult(sing, doub, triples, hrs, walks, abs);
    }
    
    // show intro to program
    public static void intro(){
        System.out.println("A program that calculates simple baseball statistics.");
        System.out.println("Input is numbers of singles, doubles, triples, home runs,");
        System.out.println("at bats, and walks.");
        System.out.println("Program calculates and displays hits, batting average,");
        System.out.println("sluggin percentage, and on base percentage.");
        System.out.println();
    }
    
    public static void calculateResult(int sing, int doub, int triples,
                                       int hrs, int walks, int abs){
        int hits = sing + doub + triples + hrs;
        double ave = (1.0 * hits) / abs;
        double slug = (sing + doub * 2.0 + triples * 3.0 + hrs * 4.0) / abs;
        double onBase = (1.0 * hits + walks) / (abs + walks);
        displayResults( hits, ave, slug, onBase);
    }
    
    public static void displayResults(int hits, double ave, double slug, double onBase){
        sop("hits: " + hits);
        sop("ave: " + round3(ave));
        sop("slugging %: " + round3(slug));
        sop("On base %: " + round3(onBase));
    }
    
    public static double round3(double val){
        return (double)(Math.round(1000 * val)) / 1000;
    }
    
    public static void sop(String s){
        System.out.println(s);
    } 
    
    public static int getNumber(Scanner key, String what){
        System.out.print("Please enter the number of " + what + ": ");
        int input = key.nextInt();
        return input;
    }
}
