Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ Задача на строки

Автор: shizik 9.06.2007 4:44

Условие:Найти в тексте слова, содержащие не более одной буквы, не входящей ни в последующее, ни в предыдущее слово, записать их заглавными буквами и указать после каждого такого слова в скобках найденную букву.
сижу мучаюсь - идей 0 - а завтра ее сдать надо
позарез
да в принципе можно и без вывода букв в скобках - помогите кто-нибудь

Автор: Lapp 9.06.2007 5:38

Можно сделать три множества, набирать в них буквы из трех последовательных слов (желательна процедура по выделению слова). Потом проверять указанное условие (операцией AND) - если удовлетворяется - выводить слово в UpCase и букву (если она есть, конечно)

Добавлено через 3 мин.
По мере прохождения по строке эти множества перекладывать.

Автор: shizik 9.06.2007 5:45

Боюсь , что у меня не получится это реализовать
Можно плз темку переместить в программы на заказ

Автор: Lapp 9.06.2007 5:46

просто создай там еще одну, можно идентичную

Автор: klem4 9.06.2007 12:09

Lapp, может я чего-то с просони не понимаю, но как ты с помощью операции AND без перебора множеств, проверишь что в множествах A, C, B (в каждом из них) есть более одного одинакового символа

Прим
A: 1, 2, 3, 12
B: 2, 3, 4, 5
C: 6, 2, 3, 4

Или ты хочешь получать результирующее множество - пересечение трех и смотреть перебором сколько там элементов ?

Автор: Lapp 9.06.2007 12:16

Цитата(klem4 @ 9.06.2007 9:09) *

Или ты хочешь получать результирующее множество - пересечение трех и смотреть перебором сколько там элементов ?

Да, Klem4, конечно, нужны некоторые промежуточные действия, я их не упоминал в кратком сообщении. По сути, я ищу пересечение дополнений множеств букв предыдущего и последующего слов с множеством букв среднего слова.
Все уже можно посмотреть в разделе На Заказ.. smile.gif

Автор: klem4 9.06.2007 12:19

Понятно, есть у мну еще одна идейка, приду домой попробую сделать.

Автор: volvo 9.06.2007 15:55

Lapp, на строке, содержащей символы кириллицы часть твоего кода не отработает (а именно - UpStr).

Автор: klem4 9.06.2007 16:27

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


А что делать в случае, если такой буквы нет ?

прим.

abc abc abc

Что указывать в скобках после слова?

Автор: Lapp 10.06.2007 1:22

Цитата(volvo @ 9.06.2007 12:55) *

Lapp, на строке, содержащей символы кириллицы часть твоего кода не отработает (а именно - UpStr).

Да, спасибо за поправку. Я делал это сознательно (так как алфавит не указан в задании), но надо было упомянуть, а я забыл..
Цитата(klem4 @ 9.06.2007 13:27) *

А что делать в случае, если такой буквы нет ?

Я выдаю пробел. В задании это не указано, так что я проявил фантазию smile.gif. Мне кажется, это логично.