|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
02.11.2010, 19:44 | #1 |
Delphi, учу С
Форумчанин
Регистрация: 20.10.2010
Сообщений: 178
|
Проблемка с функцией pos() строки
Смысл задачки:
Найти количество слов в строке, первый и последний символ в которых совпадают. Программка пока пишется для правильного текста, то есть без лишних пробелов, знаков и тп. Тут я нахожу первый пробел, запоминаю всё от начала строки до пробела как слово, проверяю его, обрезаю исходную строку на его длину, и так пока вся строка не кончится. Код:
программа умирает на строке Код:
Ниче не пойму, в теории всё работает хорошо... ^_^" Последний раз редактировалось Риндера; 02.11.2010 в 19:52. |
02.11.2010, 19:58 | #2 |
Made In USSR!
Старожил
Регистрация: 01.09.2010
Сообщений: 3,657
|
Код:
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой" Последний раз редактировалось Mad_Cat; 02.11.2010 в 20:01. |
02.11.2010, 20:09 | #3 |
Delphi, учу С
Форумчанин
Регистрация: 20.10.2010
Сообщений: 178
|
Спасибо. Он оказывается просто ругался на русские буквы. С английскими ЭТОТ код работает, а с русскими такая же ошибка =)
А что вот это значит? Код:
П.С. оказывается не от букв зависит, а от того, есть ли пробелы в изначальной строке... Если ввожу одно слово - ошибка %) |
02.11.2010, 20:12 | #4 |
Made In USSR!
Старожил
Регистрация: 01.09.2010
Сообщений: 3,657
|
Удаляет начальные и конечные пробелы в строке
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой" |
02.11.2010, 20:15 | #5 |
Delphi, учу С
Форумчанин
Регистрация: 20.10.2010
Сообщений: 178
|
Ясно, спасибо большое =)
|
02.11.2010, 20:43 | #6 |
Delphi, учу С
Форумчанин
Регистрация: 20.10.2010
Сообщений: 178
|
А смотри теперь какая пррблемка возникла:
1. Если использовать цикл с постусловием, то нельзя вводить одно слово. 2. Если цикл с предусловием, то он не выполняется для последнего слова. Как из этого можно выйти?) Проверять, последнее ли слово, и если да, то добавлять пробел в конец? Upd. Извиняюсь за свою тугодумность, проблема оказалась совсем не проблемой) Последний раз редактировалось Риндера; 02.11.2010 в 20:47. |
02.11.2010, 20:48 | #7 | |||
Made In USSR!
Старожил
Регистрация: 01.09.2010
Сообщений: 3,657
|
Цитата:
Цитата:
Цитата:
Код:
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой" Последний раз редактировалось Mad_Cat; 02.11.2010 в 20:54. |
|||
02.11.2010, 20:58 | #8 |
Форумчанин
Регистрация: 18.08.2010
Сообщений: 140
|
Риндера, а нельзя вот так вот:
Идем по строке, натыкаемся на непробельный символ. Оба-на, значит это начало слова, отмечаем это каким-нибудь логическим идентификатором. идем дальше, до тех пор, пока не будет пробел (или конец строки). Если наткнулись на пробел - смотрим поледний непробельный символ. Если он совпал с первым - увеличиваем счётчик на 1, если нет - ну и бог с ним, идентификатору слова ставим false, и ищем следующее слово либо конец строки Интересный рассказ получился Но помоему всё просто
Люди бывают десяти типов: те, кто знают двоичную систему, и те, кто нет
|
02.11.2010, 21:05 | #9 |
Delphi, учу С
Форумчанин
Регистрация: 20.10.2010
Сообщений: 178
|
pray_driver, это тоже вариант, но разбивать на слова реально проще.
Mad_Cat, спасибо за уделенное время) Но я в начала цикла с постусловием просто добавила Код:
|
03.11.2010, 06:45 | #10 |
Форумчанин
Регистрация: 18.08.2010
Сообщений: 140
|
Код:
Люди бывают десяти типов: те, кто знают двоичную систему, и те, кто нет
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
функция Pos в Delphi | Fantom | Помощь студентам | 8 | 04.05.2012 18:56 |
Ошибка в POS | KREGI | Общие вопросы Delphi | 31 | 08.12.2009 00:28 |
Проблемка с функцией | tetra91 | Общие вопросы C/C++ | 4 | 10.11.2009 16:04 |
pos и copy | zotox | Помощь студентам | 1 | 23.10.2008 21:13 |