Дано целое число N и текстовый файл. Создать строковый файл, содержащий все слова длины N из исходного файла (знаки препинания, p`qonknfemm{e в начале и в конце слов, не учитывать). Если исходный файл не содержит слов длины N, оставить результирующий файл пустым.
Lapp
17.01.2010 10:34
tanjusha, в чем конкретно трудности? Показывай, что у тебя получилось. Поможем.
tanjusha
17.01.2010 13:05
Я вообще не могу понять как это делать(((
Lapp
17.01.2010 13:17
Цитата(tanjusha @ 17.01.2010 13:05)
Я вообще не могу понять как это делать(((
Читаешь файл построчно, разбиваешь строки на слова (например, как тут: Разбиение на слова. Все способы. - способ Klem4 самый простой), и если длина слова равна N, то записываешь его в выходной файл. Ты начни писать, дальше поможем.
tanjusha
17.01.2010 14:38
я не умею программы писать...помогите
Unconnected
17.01.2010 16:08
Нуу, раз не умеешь, то держи:
const limits=[#0..#32,'.',',',':',';','!','?','"'];
var
f,f2:text;
s:string;
len,i,n,back:byte;
begin
writeln('Vvedite dlinu nujnih slov');
readln(len);
assign(f,'input.txt');
reset(f);
assign(f2,'output.txt');
rewrite(f2);
whilenot(eof(f)) dobegin
readln(f,s);
i:=1;
n:=0;
while(i<=length(s)) dobeginwhile(i<=length(s)) and (s[i] in limits) do inc(i);
if i<=length(s) thenbegin
back:=i;
while(i<=length(s)) andnot(s[i] in limits) do inc(i);
inc(n);
if (length(copy(s, back, i-back))=len) then writeln(f2,copy(s, back, i-back));
end;
end;
end;
close(f);
close(f2);
end.
tanjusha
17.01.2010 16:19
Спасибочки большое)))
Lapp
18.01.2010 9:19
Цитата(Unconnected @ 17.01.2010 16:08)
Нуу, раз не умеешь, то держи:
Unconnected, а я не умею миллион баксов заработать..
Добавлено через 22 сек. нет, два миллиона!
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.