0xd34df00d
16.01.2012 13:17 Azoth_primary
Делать, пока не кончатся файлы или пока количество считанных строк не превысит lim. Если дошли до конца файла, а число строк не превысило lim, то закрыть файл и открывать следующие файлы по джидам из списка до тех пор, пока какой-нибудь файл не откроется успешно, и продолжить считывать в нем.
Вот тут бы goto пригодилось :( Либо няшная рекурсия и монады-трихомонады.
Recommended by:
@pooq: моча съела говно
ну так заюзай гото
Я без него написал уже, что-то вроде http://paste.pocoo.org/show/535615/ , правда, пока даже собирать не пробовал.
while (lines_read <= lim)
{
while (fname = GetNextFile())
{
if (f = file_open(f))
break;
}
while (!eof(f) && lines_read <= lim)
{
read_line();
lines_read++;
}
}
зачем тут goto — непонятно
Там еще в зависимости от того, было ли считано что, или тупо файлы кончились, нужно всякое делать. Энивей, примерно такие пиздецомы и получаются.
Ну еще и read_line () не факт, что хорошо обработается.
Если замаячил вдали goto — значит не туда забрели
хуйня. Любой инструмент надо использовать с умом. Если мозгов нету, то нечего на готу пенять
В описанной задаче гото не нужен ни разу.
В /2 ссылка на пасту с решением. ИМХО с гоуту могло бы быть полущ.
я потом уже увидел