С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
0 / 0 / 1
Регистрация: 30.03.2014
Сообщений: 68

В строках найти одинаковые по размеру слова и переставить их из одной строки в другую

02.04.2014, 02:56. Показов 1179. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Пользователем задаётся две строки (предложения, состоящие из слов и пробелов). Необходимо в строках найти одинаковые по размеру слова и переставить их из одной строки в другую.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
02.04.2014, 02:56
Ответы с готовыми решениями:

Найти одинаковые слова в двух строках
Привет, как сделать так, чтобы можна было ввести с клавиатуры две строки, а в третью строку вписать одинаковые слова из первых двух строк ...

Копирование слова из одной строки в другую
Нужно написать часть программы, которая копирует слово из одной строки в другую, затем выполняется функция и затем копируется другое...

Как найти слова, которые повторяются в обеих строках, если разделяю слова в строках , используя Tokenizer
Нужно вывести слова, которые повторяются в обеих строках. Сказали, что нужно разделить строки на отдельные слова с помощью Tokenizer, а вот...

8
5499 / 4894 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
02.04.2014, 03:41
Если несколько слов одинакового размера? Например, в одной строке два слова по пять символов, в другой - одно слово из пяти символов, что с чем менять?
0
 Аватар для IrineK
2023 / 1641 / 425
Регистрация: 23.02.2011
Сообщений: 6,002
Записей в блоге: 25
02.04.2014, 05:02
alsav22 , мне видится так:

Одна строка будет ведущей (внешний цикл), а вторая - ведомой (внутренний цикл).

Тогда "команду на обмен" задает ведущая строка с очередным словом. При этом проходим ведомую строку с начала и первое подходящее слово меняем. Break. Новый шаг внешнего цикла.

Конец работы по завершению прохода по ведущей строке.
0
5499 / 4894 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
02.04.2014, 05:23
Цитата Сообщение от IrineK Посмотреть сообщение
мне видится так
Можно и так, вариантов много.
0
0 / 0 / 1
Регистрация: 30.03.2014
Сообщений: 68
02.04.2014, 17:22  [ТС]
Я представляю алгоритм. Дело в том, что со строками я никогда не работал, и как реализовать алгоритм я не знаю. В сеть много инфы о строках,но всё не по делу..
0
5499 / 4894 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
02.04.2014, 17:33
Цитата Сообщение от rivares1853 Посмотреть сообщение
Я представляю алгоритм.
А я нет. Поделитесь?
0
0 / 0 / 1
Регистрация: 30.03.2014
Сообщений: 68
02.04.2014, 18:08  [ТС]
1) Вводим строки s1 и s2, s3 и s4. Узнаём их полную длину: lens1=s1.length();и lens2=s2.length();

2) Создаём внешний for и внутренний for.

3) Во внешнем цикле, сначала мы должны считать первое слово s3[i]=s1[i] , узнать его длину len1=s3.length();

4) Теперь, во внутреннем цикле, мы должны считать второе слово s4[i]=s2[i] , узнать его длину len2=s4.length(); , if ( len1 == len2 ) { здесь мы как-то должны произвести замену (по-идее присвоением,но каким боком?!) } else { продолжаем дальше идти по второй строчке к следующему слову}

5) Когда внутренний цикл закончится, управление переходит внешнему циклу и.т.д.

6) Если похожих по длине слов не находятся, то "Ошибка". // во внутреннем цикле делается проверка : if( s1[lens1] == s2[lens2] ) { cout<<"Ошибка";}

7) Выводим s1 и s2 на экран.
0
5499 / 4894 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
02.04.2014, 18:35
Предположим, первые слова, в двух строчках, оказались одинаковыми по длине, заменили. Третье слово, в первой строке, равно по длине первому (в этой же строке). Что делать с первым словом во второй строке, которое уже заменено первым из первой строки? Опять менять?

Добавлено через 12 минут
Алгоритм мне до конца не ясен, но одно из технических решений (для вашего понимания алгоритма): создаёте два вектора string, через строковые потоки читаете в эти векторы слова из строк, дальше просто (циклы просмотра векторов, сравнения элементов векторов, замены элементов векторов).
0
 Аватар для IrineK
2023 / 1641 / 425
Регистрация: 23.02.2011
Сообщений: 6,002
Записей в блоге: 25
02.04.2014, 19:12
Цитата Сообщение от alsav22 Посмотреть сообщение
Опять менять?
В сформулированной задаче запрета на повторный обмен нет. Значит, спокойно меняем еще раз.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
02.04.2014, 19:12
Помогаю со студенческими работами здесь

Даны строки. Найти количество вхождений из одной строки в другую
Даны строки.Найти количество вхождений из одной строки в другую

Удалить одинаковые слова в строках
Здравствуйте, нужно ввести строку не более 200 символов, удалить из нее повторяющиеся слова (не повторные вхождения), вывести нужно 3...

Нахождение в 2ух строках одинаковые слова.
Задание:Написать программу выполняющую указанные действия над строкой (строками).1 Сло- вом считать один и более символов латинского...

Найти число вхождений одной строки в другую
Код под спойлером по собственным соображениям. #include &lt;stdio.h&gt; #include &lt;string.h&gt; int main() { int l1,l2,c; char...

Найти количество вхождений одной строки в другую
даны строки 1 и 2. надо найти количество вхождений из строки 1 в строку 2


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru