Задача на работу с файлом, удаление слов с четной позиции |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
Задача на работу с файлом, удаление слов с четной позиции |
benderlio |
Сообщение
#1
|
Гость |
Вот такого рода задача:
в заданном тексте удалить все слова которые начинаются с четной позиции. Для удаления использовать ф-цию. (вот тут я правда сам условия не понял, то ли свою написать то ли какую то стандартную использовать). Вообщем если кому не сложно то помогите, практически весь форум пересмотрел пошожие есть но все не то... |
APAL |
Сообщение
#2
|
Смотрю... Группа: Пользователи Сообщений: 1 055 Пол: Мужской Реальное имя: Пшеничный Алексей Анатольевич Репутация: 6 |
Вот тебе функция для удаления четных слов:
Код Function OddWord(S : String) : String; Var Sodd,ss : String; DelFlag : Boolean; Begin DelFlag:=False; ss:=s; Sodd:=''; While Length(ss)>0 do Begin If ss[1]=' ' then Begin Sodd:=Sodd+ss[1]; Delete(ss,1,1) End else Begin While (ss[1]<>' ') and (Length(ss)<>0) do Begin If not DelFlag then Sodd:=Sodd+ss[1]; Delete(ss,1,1); End; DelFlag:= not DelFlag; End; End; OddWord:=Sodd; End; В условии сказано про "заданный текст".... Если это файл то реализовать например можно так: Код Var f0,f : Text; St : String; Begin Assign(f0,ParamStr(1)); Assign(f,ParamStr(2)); Reset(f0);ReWrite(f); While not EOF(f0) do Begin Readln(f0,St); Writeln(f,OddWord(St)); End; Close(f);Close(f0); End. -------------------- |
Текстовая версия | 2.05.2024 13:58 |