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

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

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

 
 Ответить  Открыть новую тему 
> работа с текстом-поиск и учёт,замена элементов
Roman
сообщение 18.12.2003 18:48
Сообщение #1


Новичок
*

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

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


здрасте,
по просьбам трудящихся решил разбить топик,
вот:
програма читает из текст фаила слово(до 256 букв)  
и:  
а)находит кол. повторов заданного 3 значного буквосочетания.  (abc)
б)сообщает чего больше- гласных или согласных букв.  
в)производит замену 2 одинаковых рядом стоящих гласных, написанных с маленкой буквы, на большие(аа=>АА)  
Выводит слово в указынное пользователем место и цветом(CRT) на экран.(буквы латинские)
всё что можно нужно запихать в процедуры и функции.


заранее благодарен
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Roman
сообщение 18.12.2003 19:20
Сообщение #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);


???
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
AlaRic
сообщение 18.12.2003 19:29
Сообщение #3


...
*****

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

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


Очень прошу все, оформлять в
Код
код
всё, что больше 5 строк!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Roman
сообщение 18.12.2003 22:43
Сообщение #4


Новичок
*

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

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


исправил...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
trminator
сообщение 19.12.2003 18:25
Сообщение #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;


--------------------
Закон добровольного труда Зимерги:
Люди всегда согласны сделать работу, когда необходимость в этом уже отпала
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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

 



- Текстовая версия 22.06.2025 19:09
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"