#java
Вопрос:
Я завершил этот проект java для класса, но, похоже, не могу исправить ошибку, которую я получаю для веб — программного обеспечения, которое его оценивает, — оно называется webcat. Я попробовал тестовый ввод, предложенный программным обеспечением для эталонного тестирования моего решения, и мой вывод выглядит точно так же, но я все равно потерял очки за эту ошибку-
«Ошибка в методе main события класса: Номер строки 2 вашего вывода неверен (номера строк начинаются с 1). Ваш основной метод не выводит правильный вывод, когда ввод «Это короткий тест» (ввод менее 26 символов) [] Строка соответствует, за исключением подчеркивания: Недопустимый код события».
Как я могу исправить эту ошибку, когда ожидаемый результат выглядит нормально? Заранее спасибо!
Код:
public class Event {
/**
* accepts coded event info, prints the info back to std output, and
actual cost and prize number.
*
* @param args Command line arguments - not used.
*/
public static void main(String[] args) {
// variables needed
String shrink, event, date, time, section, row, seat;
double price, discount, cost;
int prizeNum;
// accept input
Scanner userInput = new Scanner(System.in);
// format the numbers
DecimalFormat formatNum = new DecimalFormat("$#,##0.00");
// enter input and trim the space
System.out.print("Enter your event code: ");
shrink = userInput.nextLine().trim();
if (shrink.length() < 26) {
System.out.println();
System.out.println("Invalid Event Code");
System.out.println("Event code must have at least 26 characters.");
return;
}
// locates spot in index of code and assigns
event = shrink.substring(25, shrink.length());
date = shrink.substring(0, 8);
time = shrink.substring(8, 12);
section = shrink.substring(19, 21);
row = shrink.substring(21, 23);
seat = shrink.substring(23, 25);
price = Double.parseDouble(shrink.substring(12, 15)
"." shrink.substring(15, 17));
discount = Double.parseDouble(shrink.substring(17, 19));
// calculates final cost
cost = price - (price * (discount / 100));
// random final number
prizeNum = (int) (Math.random() * 1000 1);
// prints the data to std output
System.out.println();
System.out.print("Event: " event " " " " " ");
System.out.print("Date: " date.substring(0, 2) "/"
date.substring(2, 4) "/" date.substring(4, 8) " "
" " " ");
System.out.println("Time: " time.substring(0, 2) ":"
time.substring(2, 4) " " " " " ");
System.out.print("Section: " section " " " " " ");
System.out.print("Row: " row " " " " " ");
System.out.println("Seat: " seat);
System.out.print("Price: " formatNum.format(price) " " " " " ");
// formats discount before print
formatNum.applyPattern("#.#'%'");
System.out.print("Discount: " formatNum.format(discount) " "
" " " ");
// formats cost before print
formatNum.applyPattern("$#,##0.00");
System.out.println("Cost: " formatNum.format(cost));
System.out.print("Prize Number: " prizeNum);
Выход:
Enter your event code: This is a short test
Invalid Event Code
Event code must have at least 26 characters.
Комментарии:
1. Вы должны напечатать подчеркивание после «Кода» в поле «Недопустимый код события».
2. В конце сообщения об ошибке в описании есть точка/точка.