Большой Воронежский Форум
» Программирование>помогите с задачей по делфи!!!
student1234 11:11 23.11.2007
Дан текстовый файл, содержащий слова, разделенные одним или несколькими пробелами. Создать новый файл каждая строка которого содержит слово исходного файла, имеющее номер (n+1)div2, где n - количество слов в соответствующей строке исходного файла.


программа должна:
создавать новый файл
открывать уже существующий
сохранять его
сохранять под др именем
обрабатывать открытый файл
сохранять рез-т обработки
очищать рез-т обработки [Ответ]
lollipop 11:19 23.11.2007
читай мануалы, хелпы и форумы, инфы по теме море. Т.о. ты решишь причину вставшей проблемы а нее ее последствия. [Ответ]
Dimbass 02:12 24.11.2007
lollipop, фигасе ты сказал... Мой распухший от матана моск еле переварил..
student1234, в-общем слушай его, он дело говорит) [Ответ]
Владимир Сергеевич 07:26 24.11.2007
student1234, Читай DRKB [Ответ]
X0R 15:14 24.11.2007
kolega, за денюжку и я сделаю [Ответ]
student1234 16:01 09.12.2007
за сколько? [Ответ]
Lisеnоk 22:29 15.12.2007
основной алгоритм вот:

Сообщение от :
var
f1,f2:textfile; {ф1 - входной файл,ф2 -выходной}
i,n,h:integer;
s:string;
begin
assignfile(f1,'c:\1.txt');
assignfile(f2,'c:\2.txt');
reset(F1);rewrite(f2);
while not eof(f1) do {пока не конец файла делаем}
begin
readln(f1,s); {считываем сразу всю строку - а чего мелочиться-то?}
h:=length(s);
n:=1;
for i:=1 to (h-1) do {и погнали по всей строке}
if (s[i]=' ') and (s[i+1]<>' ') then inc(n); {считаем количество слов-сколько раз встречается после пробела "непробел"}
h:= (n+1)div 2; {определяем номер нужного слова}
i:=1;
n:=1;
while n<>h do begin {и опять елозием про строке до нужного нам слова}
if (s[i]=#32) and (s[i+1]<>#32) then inc(n);
inc(i);
end;
while s[i]<>#32 do {и пишем во второй файл буковки до первого пробела}
begin
write(f2,s[i]);
inc(i);
end;
writeln(f2,''); {закрываем строку во втором файле}
end;

closefile(f1);
closefile(f2); {закрываем файлы-уходя гасите свет!}
end;

хм..пробелы все пожрали.. [Ответ]
Snusmumrik 23:34 15.12.2007

Сообщение от Lisеnоk:
assignfile(f1,'c:\1.txt');
assignfile(f2,'c:\2.txt');

Сообщение от Lisеnоk:
; {закрываем строку во втором файле}
end;

Сообщение от Lisеnоk:
; {закрываем файлы-уходя гасите свет!}
end;

ну нельзя так... а ; перед end просто несолидно.. хотя и можно. [Ответ]
Snusmumrik 23:36 15.12.2007

Сообщение от Lisеnоk:
writeln(f2,''); {закрываем строку во втором файле}

кстати, вот это для чего? впервые вижу.. [Ответ]
Lisеnоk 23:51 15.12.2007
ну придирайтесь давайте.. человек 3 недели ждет, а у меня на это 10 мин ушло. не больше.
writeln(f2,''); {закрываем строку во втором файле}
ну не закрываем..а переходим на новую. равнозначно. Читай внимательнее условие - что из себя представляет выходной файл. [Ответ]
Snusmumrik 00:41 16.12.2007
Lisеnоk, где учишься? или уже закончила? [Ответ]
Вверх