Разработки сверху вниз дизайна и написать программу, чтобы произвести гистограмму продукции для гурманов попкорна для кооперативной фермы группы на ферм по внутрихозяйственной основе.Проблемы с производством Ферма уступкем программирования
Ввод в программу представляет собой серию наборов данных, по одной в каждой строке, с каждый набор, представляющий собой производство для одной фермы. Каждый набор данных состоит из имени фермы. Затем следуют запятая и одно или несколько пробелов, десятичное число, представляющее акров, высаженное, одно или несколько пробелов и целое число, представляющее число пинтов банок попкорна, произведенных для этой фермы. Выход представляет собой гистограмму, которая идентифицирует каждую ферму и отображает ее продукцию в пинтах кукурузы на акр. Вывод представляет собой одну строку для каждой фермы с именем фермы, начинающейся в первом столбце строки, и гистограммой, начинающейся с в столбце 30. Каждая метка в гистограмме представляет собой 25 пинтовых банок попкорн за акр , Цель производства на год - 500 банок за акр. Вертикальная полоса должна появиться на графике для ферм с производством, которое не соответствует , и специальная отметка используется для ферм с производством больше или равно 500 банок на акр.
Например, если входной файл
Orville’s Acres, 114.8 43801
Hoffman’s Hills, 77.2 36229
Jiffy Quick Farm, 89.4 24812
Jolly Good Plantation, 183.2 104570
Organically Grown Inc., 45.5 14683
выход будет:
Popcorn Co-op
Production in Hundreds
of Pint Jars per Acre
Farm Name 1 2 3 4 5 6
---|---|---|---|---|---|
Orville's Acres *************** |
Hoffman's Hills ****************** |
Jiffy Quick Farm *********** |
Jolly Good Plantation *******************#**
Organically Grown Inc. ************ |
Это код, который я уже он работает и печатает правильный формат, но он имеет ошибка исключения. Я пытаюсь разбить строку на имя фермы, а затем на два акра и, наконец, на int jars. Входной файл
Orville’s Acres, 114.8 43801
Hoffman’s Hills, 77.2 36229
Jiffy Quick Farm, 89.4 24812
Jolly Good Plantation, 183.2 104570
Organically Grown Inc., 45.5 14683
Причина всех пробелов заключается в том, что я хочу, чтобы он просто читал строки с данными.
Вот мой исходный код
import java.util.Scanner;
import java.io.*;
public class Popcorn
{
public static void main(String args[])throws Exception
{
printHeading();
System.out.print("Input file name you want to read from: ");
Scanner in = new Scanner(System.in);
String fileName = in.next(); //declares fileName a string that uses in as input
Scanner input = new Scanner(new FileReader(fileName)); //Declares input as the fileName and reads the file in
int jars;
double acres;
String amount;
String farmName;
System.out.println();
System.out.println("\t\t\tPopcorn Co-op");
System.out.println();
System.out.println("\t\t\t\tProduction in Hundreds");
System.out.println("\t\t\t\tof Pint Jars per Acre");
System.out.println("Farm Name\t\t\t 1 2 3 4 5 6");
System.out.println("\t\t\t\t---|---|---|---|---|---|");
while (input.hasNextLine())
{
String inputLine = input.nextLine();
if (inputLine.isEmpty())
{
}
else
{
farmName = inputLine.substring(0,inputLine.indexOf(','));
String inputLine2 = inputLine.substring(inputLine.indexOf(','),inputLine.length());
Scanner line = new Scanner(inputLine2);
acres = line.nextDouble();
jars = line.nextInt();
System.out.println(farmName + jars + acres);
}
}
}
private static void printHeading(){
System.out.println("Name"); //this assigns what printHeading will print
System.out.println("CSC 201-55468 Section 01PR");
System.out.println("Fall 2012");
System.out.println("Popcorn Project");
System.out.println();
}
}
Всегда отправляйте стек для исключения –
, как бы я это сделал? – user3288334
Исключение, которое появляется в консоли, должно содержать имена методов и номера строк. Весь блок текста в красном цвете - это трассировка стека. Опубликовать, что здесь –