(LABVIEW) Вывести слова с повторяющимися буквами
-
- interested
- Сообщения: 2
- Зарегистрирован: 09 дек 2022, 23:16
- Версия LabVIEW: 10
- Контактная информация:
(LABVIEW) Вывести слова с повторяющимися буквами
Подскажите, как решить данную задачу, уже все облазила, не нашла примеров.
Дан некоторый текст и из него необходимо вывести слова с повторяющимися буквами.
Например исходный текст: Аля гуляла по Москве в кроссовках
Должно выйти в результате работы программы: гуляла кроссовках
У меня была идея, разложить приходящий текст на слова, затем эти слова перевести в массив кодов букв и дальше встала в тупик. Не понимаю как сравнивать значения в массиве и как по итогу вывести слова. Помогите объяснением, а если есть возможность, то реализацией.
-
- professor
- Сообщения: 3406
- Зарегистрирован: 31 июл 2011, 23:05
- Награды: 2
- Версия LabVIEW: 12-18
- Благодарил (а): 49 раз
- Поблагодарили: 176 раз
- Контактная информация:
Re: (LABVIEW) Вывести слова с повторяющимися буквами
Интересно, какие примеры вы ищете?
Ещё более интересно, какие повторы есть в слове "гуляла"Должно выйти в результате работы программы: гуляла кроссовках
Или имеются ввиду не подряд, а вообще в словах?
а дальше в цикле эти коды перебрать и сравнить с предыдущимиперевести в массив кодов букв и дальше встала в тупик.
Если же вам нужны повторы вообще, то нужно ещё копить "словарь"
-
- interested
- Сообщения: 2
- Зарегистрирован: 09 дек 2022, 23:16
- Версия LabVIEW: 10
- Контактная информация:
Re: (LABVIEW) Вывести слова с повторяющимися буквами
По заданию изначально не совсем понятно, нужны ли повторы подряд или просто букв в слове. Если второе гораздо сложнее, то сомневаюсь тогда, что это нужно.
У меня не получается сделать цикл for, который можно остановить. Заменила на While. Можно ли как-то менять индикатор, чтобы он именно выводил именно слово с повтором, а не просто загоралась лампочка.
UPD. Возникла другая проблема. Лампочка горит в любом случае. Вот то, что я реализовываю. Где могла закрасться ошибка?
У меня не получается сделать цикл for, который можно остановить. Заменила на While. Можно ли как-то менять индикатор, чтобы он именно выводил именно слово с повтором, а не просто загоралась лампочка.
UPD. Возникла другая проблема. Лампочка горит в любом случае. Вот то, что я реализовываю. Где могла закрасться ошибка?
Последний раз редактировалось Lalaila 10 дек 2022, 17:33, всего редактировалось 2 раза.
-
- professor
- Сообщения: 3406
- Зарегистрирован: 31 июл 2011, 23:05
- Награды: 2
- Версия LabVIEW: 12-18
- Благодарил (а): 49 раз
- Поблагодарили: 176 раз
- Контактная информация:
Re: (LABVIEW) Вывести слова с повторяющимися буквами
Ошибка именно в том, что у вас НЕ For loop.
Условие остановки включается так. Но если у вас 10, то этой опции может ещё не быть. Если так, то надо проверять номер итерации и не вылезать за границы массива (сравнивать i и размер массива)
Вам просто повезло, что циклы останавливаются, вообще говоря ваше решение должно приводить к зависанию: если повторов нет, то (i-1) = i никогда не наступит.
Но когда цикл вылезает за границы массива, используются нули вместо реальных значений (которых уже нет). Поэтому два шага после слова, и 0=0, цикл останавливается.
-
taras_33
- professional
- Сообщения: 392
- Зарегистрирован: 31 окт 2009, 18:25
- Награды: 1
- Версия LabVIEW: 2019
- Поблагодарили: 13 раз
- Контактная информация:
Re: (LABVIEW) Вывести слова с повторяющимися буквами
Что то одни девушки LabVIEW интересуются, меня терзают смутные сомнения
Из любопытства как факультет называется?
Теперь по делу.
Из любопытства как факультет называется?
Теперь по делу.
Если не совсем понятно что нужно, то реализуем оба варианта. Например так Пару слов о коде: Внешний цикл проверяет буковки (ASCII коды) на наличие пробела. Если оный обнаружен, значит это окончание слова и вступает в работу внутренний, к котором, как сказал Артём копим "словарь" и производим поиск двух или более одинаковых букв. Во внешнем цикле имеется флаг, который используется для игнорирования (удаления) лишних пробелов между словами, оставляя только один. Перед началом выполнения в конец тестируемой фразы добавляется пробел (х20). Он нужен для того, чтобы внешний цикл определил окончание последнего слова, иначе оно будет проигнорировано...
- Вложения
-
- Homework 3.vi
- LV2010
- (10.23 КБ) 40 скачиваний
Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots.
So far, the Universe is winning!
So far, the Universe is winning!
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
- 2 Ответы
- 166 Просмотры
-
Последнее сообщение Borjomy_1
-
- 3 Ответы
- 2068 Просмотры
-
Последнее сообщение PozhiloyGoblin
-
- 0 Ответы
- 344 Просмотры
-
Последнее сообщение maxim_MA
-
- 23 Ответы
- 2423 Просмотры
-
Последнее сообщение dadreamer
-
- 2 Ответы
- 391 Просмотры
-
Последнее сообщение ujin1