|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
02.04.2010, 16:15 | #1 |
Пользователь
Регистрация: 02.04.2010
Сообщений: 12
|
Пересечение двух строк
Здравствуйте! Мне нужно реализовать пересечение двух строк, тоесть найти общие слова в строках и записать их в третью строку.
вот мой код: Код:
если у кого есть идеи уменьшить или упростить эту функцию пожалуста напишите. Последний раз редактировалось Sazary; 03.04.2010 в 00:33. |
03.04.2010, 18:55 | #2 |
Форумчанин
Регистрация: 28.01.2010
Сообщений: 224
|
Я сильно не въезжал в выше написанный вопрос - попробуй воспользоваться методами строки AnsiString
1 метод Pos = int A = S1.Pos (S2);//найдет первое вхождение в строке S1 строки S2 при неудачи вернет 0 или если найдет вхождение то вернет индекс первого символа 2 метод Delete = AnsiString s1 = S2.Delete (1, 10);//удалит в S2 с первого символа 10 символов подряд. а также вернет полдученное значение в s1 3 метод + (эта операция перегружена для строк типа AnsiString) S3 = S1+S2;//в конец строки S1 добавит S2 в принцепе эти методы не все но их достаточно чтобы решить твою проблему
всему свое время как зиме и весне
и каждому солнцу свой неба кусок |
03.04.2010, 21:26 | #3 |
Пользователь
Регистрация: 02.04.2010
Сообщений: 12
|
Что то у меня не работает твои методы, может подскажеш как вводить их правильно. У кого есть еще идеи, как реализовать функцию поиска общих слов в двух строках, пишите!
|
11.04.2010, 20:51 | #4 |
Пользователь
Регистрация: 11.01.2010
Сообщений: 24
|
Товарищи форумчане!
Я сделал это задание. И это было мое первое задание, связанное с строками, символами и пр. По-этому я думаю, что оно сильно НЕоптимальное. Привожу код, а ниже задам несколько конкретных вопросов: Код:
1. Если пытаться вводить РУССКИЕ буква, то на выходе получаются "кракозябры" - почему так? Это при том, что сервисные сообщения выводятся как положено по-русски. Возможно, это зависит от зеленой строчки. Где вообще можно про это почитать? 2. Какой тип днных выдает функция strlen? 3. Как можно оптимизировать данную программу? Я одним местом чую, чтоо все это можно сделать гораздо проще, но пока не знаю как. Возможно, есть такие функции из семейства str- , которые сильно упростили бы эту прогу. 4. Есть ли на этом форуме модератор? Я к тому что за 5 дней, сколько существует тема - появилось более 130 (!!!) новых тем. Много повторяющихся, часто встречаются вопли "хэлп" без кода |
11.04.2010, 22:04 | #5 | |||
Студент 1 курса
Форумчанин Подтвердите свой е-майл
Регистрация: 27.06.2008
Сообщений: 959
|
Цитата:
Цитата:
Цитата:
Код:
C++(STL, QT, WinInet) / DHTML(CSS) / JavaScript / PHP Developer
|
|||
18.04.2010, 18:27 | #6 |
Пользователь
Регистрация: 11.01.2010
Сообщений: 24
|
Вот и нифига! Эта прога не давала мне покоя и я ее оптимизировал малясь. в частности, насильное прибавление пробелов в начало и конец исходных строк было уж очень побыдлокодерски. Наконец-то понял, как надо сделать. В коде внесенные изменения выделены цветом. Позорных 10 строчек с добавлением пробелов в начало и конец - теперь нет. Вместо них - усложненное условие поиска конца слова.
Код:
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
как же все таки сравнить содержимое двух строк? | LOST94 | Общие вопросы C/C++ | 7 | 23.03.2010 14:52 |
пересечение двух множеств | Олежек | Фриланс | 7 | 10.03.2010 18:46 |
сравнение двух строк | aza_kaz | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 3 | 01.01.2010 23:40 |
Поиск двух одинаковых строк идущих последовательно | stasbz | Microsoft Office Excel | 4 | 21.06.2009 18:40 |
Формула (Сумма произведений двух строк) | Propan | Microsoft Office Excel | 2 | 24.04.2009 14:25 |