|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
26.12.2008, 19:59 | #1 |
Пользователь
Регистрация: 25.12.2008
Сообщений: 10
|
Тоже задача на строки. Тока проще.
Удалить из текста все слова, заканчивающиеся на заданное буквосочетание.
Все исходные данные вводить с клавиатуры. Под словом понимать произвольную последовательность печатных символов, отличных от пробела. Все слова окружены одним пробелом. При решении задачи максимально использовать стандартные средства работы со строками, без массивов Спасибо! Последний раз редактировалось maxiswell; 26.12.2008 в 20:05. |
26.12.2008, 21:16 | #2 |
Форумчанин
Регистрация: 03.11.2006
Сообщений: 321
|
Извини, со скоростью 53к я эту страницу грузил тока минут 5. Пока кратко, потому. Может поймёшь. Если Паскаль, то
1. используй в uses модуль crt. 2. цикл repeat sim:=readkey;//s-char stroka:=stroka+s;//stroka-string until (ord(sim)=32) or (ord(sim)=27);//пробел или esc 3. дальше пользуйся файлом или указателем 4. при пробеле проверяешь строку(stroka) на концовку(1. количество символов в слове > буквосочетания; 2. проверяешь буквосочетание при первом условии:Буквосочетание=copy(stroka, length(stroka) -length(Буквосочетание),length(Букво сочетание)) и если соответствует то не записываешь, а если не соответствует то записываешь. При esc закрываешь файл на запись(если работал с файлом), открываешь файл на чтение или считываешь данные по указателю. В идеале считается более правильным при больших текстах работать с файлами, а при маленьких с указателями. Поскольку заранее как всегда ничё не известно, то более правильным считается работа с файлами. |
26.12.2008, 21:44 | #3 |
Пользователь
Регистрация: 25.12.2008
Сообщений: 10
|
Почти ничего тут не понимаю... А не трудно весь код написать? Но и на этом спасибо!
|
26.12.2008, 22:59 | #4 |
Форумчанин
Регистрация: 03.11.2006
Сообщений: 321
|
модуль crt необходим для ф-ции readkey.
Эта функция считывает символ сразу после нажатия и освобождает буфер (память) клавиатуры. У пользователя при этом будет создаваться впечатление ввода простого текста. Попробуйте например код(выход при нажатии на цифру 0): program ex; uses crt; var c:char; begin clrscr; repeat c:=readkey; if c<>'' then write(c); until c='0'; end. |
27.12.2008, 17:31 | #5 |
Пользователь
Регистрация: 25.12.2008
Сообщений: 10
|
БааааааааальшОООООООООООЕ спасибо!
|
27.12.2008, 21:17 | #6 |
Пользователь
Регистрация: 25.12.2008
Сообщений: 10
|
А можно каждую строчку расписать комментами? Если это трудно, то не надо...
|
28.12.2008, 00:17 | #7 |
Форумчанин
Регистрация: 03.11.2006
Сообщений: 321
|
program ex;// имя программы
uses crt;// используем модуль crt var c:char;// с- переменная из одного символа begin// начало программы clrscr;//очищаем экран(входит в модуль crt) repeat//начинаем цикл c:=readkey;//читаем символ из буфера клавиатуры if c<>'' then // если буфер не пустой (''-пустая строка) тогда write(c);печатаем символ считанный из буфера until c='0';//все эти действия повторяем пока не введена цифра 0 end. //конец программы |
28.12.2008, 13:42 | #8 |
Пользователь
Регистрация: 25.12.2008
Сообщений: 10
|
Ес не трудно можно без модуля crt используя тока стандартные функции?
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Помогите с задачкой плизз!!! Умоляю!!! | Anton1997 | Паскаль, Turbo Pascal, PascalABC.NET | 2 | 05.12.2008 10:25 |
Помогите с прогой (С++) | Meddy | Помощь студентам | 3 | 13.07.2008 21:38 |
помогите с прогой | DeDoK | Общие вопросы Delphi | 7 | 09.05.2008 23:51 |
Я не верю!!!=(((Помогите,УМОЛЯЮ!!! | Elm0 | Свободное общение | 6 | 03.10.2007 19:29 |
Помогите с прогой | DarthNemo | Помощь студентам | 2 | 06.05.2007 18:11 |