IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> Текстовый файл
сообщение
Сообщение #1





Группа: Пользователи
Сообщений: 6
Пол: Мужской

Репутация: -  0  +


Как вывести на экран те строки текстого файла, которые сдержат данное слово?

procedure Vivod(var f:tf);
var
x,s:st;
begin
reset(f);
writeln('Vvedite slovo:');
readln(s);
while not EOF(f) do
[Вот тут у меня ступор smile.gif]
read(f,x);
write(x);

closefile(f);
end;


М
теги...
мисс_граффити



Сообщение отредактировано: мисс_граффити -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гуру
*****

Группа: Пользователи
Сообщений: 1 117
Пол: Мужской
Реальное имя: Богдан

Репутация: -  11  +



procedure Vivod(var f:tf);// что за тип? text?
var x,s:st;// string?
begin
reset(f);//файловою переменную надо сначала связать с файлом через assign (если ты это еще не сделал)
writeln('Vvedite slovo:');
readln(s);
while not EOF(f) do begin
readln(f,x);
if pos(s,x)<>0 then
writeln(x);
end;
closefile(f);//на Делфи пишешь?
end;



Сообщение отредактировано: Bokul -


--------------------
Лао-Цзы :
Знать много и не выставлять себя знающим есть нравственная высота. Знать мало и выставлять себя знающим есть болезнь. Только понимая эту болезнь, мы можем избавиться от нее.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Perl. Just code it!
******

Группа: Пользователи
Сообщений: 4 100
Пол: Мужской
Реальное имя: Андрей

Репутация: -  44  +


Bokul, слово "ром", строка "паром"
...


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Бывалый
***

Группа: Пользователи
Сообщений: 231
Пол: Женский

Репутация: -  6  +


Цитата(klem4 @ 24.02.2007 21:07) *

Bokul, слово "ром", строка "паром"
...

А что?Разве POS не сработает? blink.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Гуру
*****

Группа: Пользователи
Сообщений: 1 117
Пол: Мужской
Реальное имя: Богдан

Репутация: -  11  +


Точно, давно не программировал..

LeoDaVinci, тогда придется разбивать строку на слова и проверить каждое с них на совпадение, хотя это все можно делать параллельно. Такие темы поднимались десятки раз, если не сотни. Поищи по форуму, будут вопросы - задавай, Разбиение на слова. Все способы. - для старта.

Добавлено через 1 мин.
Цитата
А что?Разве POS не сработает?

Как раз и сработает, а не надо..

Добавлено через 1 мин.
Цитата
Как вывести на экран те строки текстого файла, которые сдержат данное слово?

Хотя, может это и надо? Нигде речь о словах не идёт..


--------------------
Лао-Цзы :
Знать много и не выставлять себя знающим есть нравственная высота. Знать мало и выставлять себя знающим есть болезнь. Только понимая эту болезнь, мы можем избавиться от нее.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6





Группа: Пользователи
Сообщений: 6
Пол: Мужской

Репутация: -  0  +


Типы все объявлены, ошибок программа не выдаёт. Файловая переменная связана с файлом.

Вопрос вызывал "кусок", определяющий входит ли данное слово в строку smile.gif

Вставил в программу недостающую часть. Без вывода чего-либо, консоль закрывается :\
readln; в конце есть.

Добавлено через 2 мин.
Спс за помощь.
Буду разбираться.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Гуру
*****

Группа: Пользователи
Сообщений: 1 117
Пол: Мужской
Реальное имя: Богдан

Репутация: -  11  +


Цитата
Вставил в программу недостающую часть. Без вывода чего-либо, консоль закрывается :\

Полный код, тестовый файл, вводимое слово..


--------------------
Лао-Цзы :
Знать много и не выставлять себя знающим есть нравственная высота. Знать мало и выставлять себя знающим есть болезнь. Только понимая эту болезнь, мы можем избавиться от нее.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8





Группа: Пользователи
Сообщений: 6
Пол: Мужской

Репутация: -  0  +


program Project2;

{$APPTYPE CONSOLE}

uses
SysUtils,

type
tf=textfile;
st=string[30];

procedure Sozd(var f:tf);
var
h:char;
x:st;
begin
rewrite(f);
repeat
writeln('Vvedite sroku:');
readln(x);
writeln(f,x);
writeln('Prodolzhit? Y/N');
readln(h);
until h in ['n','N'];
closefile(f);
end;

procedure Vivod(var f:tf);
var
x,s:st;
begin
reset(f);
writeln('Vvedite slovo:');
while not EOF(f) do
begin
readln(f,x);
if pos(s,x)<>0 then
writeln(x);
end;
close(f);
end;

var
textf:tf;
slovo:st;
sn,sn1:shortstring;
begin
sn:='d:\temp\ka.txt';
assign(textf,sn);
Sozd(textf);
Vivod(textf);
readln(sn1);
end.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #9


Гуру
*****

Группа: Пользователи
Сообщений: 1 117
Пол: Мужской
Реальное имя: Богдан

Репутация: -  11  +



procedure Vivod(var f:tf);
var
x,s:st;
begin
reset(f);
writeln('Vvedite slovo:');
readln(s);// <--- забыл это
while not EOF(f) do
begin
readln(f,x);
if pos(s,x)<>0 then
writeln(x);
end;
close(f);
end;




var
textf:tf;
slovo:st;
sn,sn1:shortstring;
begin
sn:='d:\temp\ka.txt';
assign(textf,sn);
Sozd(textf);
Vivod(textf);
readln;// без "(sn1)" - зачем использовать лишнею переменную..
end.



--------------------
Лао-Цзы :
Знать много и не выставлять себя знающим есть нравственная высота. Знать мало и выставлять себя знающим есть болезнь. Только понимая эту болезнь, мы можем избавиться от нее.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #10





Группа: Пользователи
Сообщений: 6
Пол: Мужской

Репутация: -  0  +


Всё что нужно заработало.
Всем спасибо blum.gif smile.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 29.03.2024 0:51
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name