|
|
back to boardДо какого момента осуществляется ввод? Posted by Roman 30 Dec 2015 22:12 Всем привет! Я написал реализацию программы на Java. Проверка выдает Runtime error. Программа принимает n, после чего слушает ввод и после каждого введенного слова выводит ответ. Выглядит это так: 9 0010100011 //мой ввод 001000011 //вывод программы 00010010 //мой ввод 000100101 //вывод программы Ctrl - C Скажите, правильно ли реализовал ввод/вывод данных? Спасибо! Edited by author 30.12.2015 22:15 Re: До какого момента осуществляется ввод? Да, так можно делать, не ожидать завершения ввода, прежде чем делать вывод. Но без кода не понять, где рантайм. Re: До какого момента осуществляется ввод? Posted by Roman 31 Dec 2015 00:06 Re: До какого момента осуществляется ввод? Я точно не уверена, т. к. у меня нет большого опыта в джаве, но возможно, проблема вот здесь while(true) { a = input(); if (a.length() > 0) { System.out.println(toSource(a)); } } Как я вижу, программа никогда не выходит из цикла, и в некоторый момент пытается что-то читать после того, как входные данные заканчиваются. Я исправила while(true) на while(in.hasNextLine) (входные данные не закончены, имеется следующая строка) и class на public class (иначе выдаёт compilation error). Теперь получается WA #1. Честно говоря, непонятно почему, вроде на тестовых данных в других ветках обсуждения нормально проходит. Может кто-то более опытный сможет подсказать. Re: До какого момента осуществляется ввод? Posted by Roman 31 Dec 2015 14:56 Ну уже хотя бы не Runtime. Спасибо. Re: До какого момента осуществляется ввод? Ввод верный (его несложно подправить и под не Pascal): const nmax=1111; var a:array[1..nmax] of char; n,i,j,len:longint; ch:char; ..... begin readln(n); while not eof do begin len:=0; read(ch); if(ch='0')or(ch='1') then begin //началось считывание очередного слова len:=1; a[len]:=ch; read(ch); while(ch=' ')or(ch='1')or(ch='0') do begin if(ch='1')or(ch='0') then begin inc(len); a[len]:=ch; end; read(ch); end; Solve(len); readln; //перевод строки end; end; end. |
|
|