Exception in thread "main" java.util.NoSuchElementException: No line found
Малко странен въпрос но какъв е този exeption:
Exception in thread "main" java.util.NoSuchElementException: No line found at java.util.Scanner.nextLine(Scanner.java:1540) at ExamScore.main(ExamScore.java:14) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:497) at _$SandboxExecutor.main(_$SandboxExecutor.java:30)
и как мога да го поправя в този код : http://pastebin.com/evcFi8h2
Задачата е от "Java Basics 22 June 2014" - ExamScore --> https://judge.softuni.bg/Contests/Practice/Index/15#2
В judge ми дава 20/100..
Ако някой може да помогне ще е супер :)
И според мен проблемът е при входа, още малко модификация и взимаш 100 точки: http://pastebin.com/K0wmfiUN
Значи допълнително трябва да проверя дали следващият ред е празен, и ако е да не го добавям и да brake-вам цикъла. Това, което не разбирам е как може да има празен ред от тази таблица като реално празният ред ще е след последния ред на таблицата и по тази логика би трябвало цикъла сам да спре ако е "while(sc.hasNextLine()) ?
hasNextLine() работи при файлове, при вход от конзолата няма как да се знае дали има следващ ред. Според условието на задачата трябва да прецениш до кога да взимаш вход.
Аз като съм я решавал задачата чета първия ред, след което игнорирам следващите два (дотук е хедъра на таблицата). След това имам while цикъл, който спира, когато получа за nextLine стринг, еквивалентен на първия.