работа с текстом-поиск и учёт,замена элементов |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
работа с текстом-поиск и учёт,замена элементов |
Roman |
Сообщение
#1
|
Новичок Группа: Пользователи Сообщений: 10 Репутация: 0 |
здрасте,
по просьбам трудящихся решил разбить топик, вот: програма читает из текст фаила слово(до 256 букв) и: а)находит кол. повторов заданного 3 значного буквосочетания. (abc) б)сообщает чего больше- гласных или согласных букв. в)производит замену 2 одинаковых рядом стоящих гласных, написанных с маленкой буквы, на большие(аа=>АА) Выводит слово в указынное пользователем место и цветом(CRT) на экран.(буквы латинские) всё что можно нужно запихать в процедуры и функции. заранее благодарен |
Roman |
Сообщение
#2
|
Новичок Группа: Пользователи Сообщений: 10 Репутация: 0 |
вот, самую простую часть я вроде сделал(вернее просто взятие из фаила):
Код var fil:text; s:string; procedure vvod(var fil:text;var s:string); begin assign(fil, 'tekst.txt'); reset(fil); while not EOF(fil) do begin readln(fil,s); writeln(s); end; close(fil); end; begin vvod(fil,s); end. нашёл в одной книжке такую штуку, для поиска abcd, может это можно использовать? токо у меня надо чтобы символы вводил пользователь Код i:=1; state:=0; {i-первая непрочитанная буква,state -состояние} while (i<>n+1) and (state<>4) do begin if state=0 then begin if x[i]=a then begin state:=1 end else begin state:=0; end; end else if state=1 then begin if x[i]=b then begin state:=2; end else if x[i]=a then begin state:=1;end else begin state:=0; end; end else if state=2 then begin if x[i]=c then begin state:=3; end else if x[i]=a then begin state:=1; end else begin state:=0; end; end else if state=3 then begin if x[i]=d then begin state:=4; end else if x[i]=a then begin state:=1; end else begin state:=0; end; end; end; answer:=(state=4); ??? |
AlaRic |
Сообщение
#3
|
... Группа: Пользователи Сообщений: 1 347 Пол: Мужской Репутация: 3 |
Очень прошу все, оформлять в
Код код всё, что больше 5 строк! |
Roman |
Сообщение
#4
|
Новичок Группа: Пользователи Сообщений: 10 Репутация: 0 |
исправил...
|
trminator |
Сообщение
#5
|
Четыре квадратика Группа: Пользователи Сообщений: 579 Пол: Мужской Репутация: 4 |
Функция ищет число повторов заданной подстроки (substr) в строку (s). Длина substr любая.
Код function count_substr(var in_s, substr : string): integer; var s : string; answ : integer; begin answ:=0; s:=in_s; while pos(substr, s) > 0 do begin inc(answ); delete(s, pos(substr, s), length(substr)) end; count_substr := answ end; -------------------- Закон добровольного труда Зимерги:
Люди всегда согласны сделать работу, когда необходимость в этом уже отпала |
Текстовая версия | 4.10.2024 12:37 |