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

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

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

 
 Ответить  Открыть новую тему 
> Поиск слова в данном тексте..., нужня помощ =\
сообщение
Сообщение #1


Гость






Задание: Дан текст и слово, найти сколько раз данное слово встречается в тексте.

то что у меня получилось но непашет=\
Код
program CountX;

Const

n=100;

ch='б«®ў®';

Var

i : Integer;

count:Integer;

S : Array [1 .. n] of char;

Begin

writeln ('‚Введите текст');

for i:=1 to n do read(S[i]);

count:=0;

for i:=1 to n do if S[i]=ch then count:=count +1;

writeln ('слово "' , ch, '" встречаеться в тексте ' , count, ' раз');

end.


Сообщение отредактировано: Elisei -
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Прогрессор
****

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

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


Цитата
if S[i]=ch
Ты пытаешься сравнить один символ строки с целым словом. Это выполнялось бы, только если ch соcтояло бы из одного символа, иначе неверно в любом случае.
Можешь сделать так: if S[i]=ch[1], и если это выполнится, то проверить следующие за i-м символы строки на совпадение с соответствующими символами ch. Попробуй доработать, если не получится - спрашивай, поможем. Хорошо, что уже что-то делал самостоятельно, в отличие от многих заходящих сюда smile.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


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

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

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


способ 1 длинный :

Elisei, Как разбить строку на массив слов, все способы береш от туда любой способ, разбиваешь строку на массив слов, ну а дальше все элементарно !

способ 2 короткий :

uses crt;
var
s,sbs : string;

function GetCount(st, subst : string) : byte;
var
count : byte;
begin
count := 0;
while(pos(subst, st) <> 0) do begin
inc(count);
delete(st, pos(subst,st), length(subst));
end;

GetCount := count;
end;

begin

clrscr;

s := 'test testo toster';
sbs := 'st';

writeln('В строке ',s,' слово ',sbs, ' встречается ', GetCount(s,sbs),' раз');
readln
end.


но второй способ всетаки не на вхождение слова в строку а на вхождение группы символов.


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


Гость






Malegra 100 Sildenafil Citrate
 К началу страницы 
+ Ответить 

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

 





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