Ответы на вопрос:
Принятые в программе дополнительные к условию соглашения: 1. разделителями между словами считаются любые символы, включенные к константу delim 2. все символы, не входящие в delim, образуют алфавит (т.е. "буквы"), из которого может быть составлено каждое слово 3. количество разделителей, окружающих каждое слово, ограничено только здравым смыслом. все разделители будут переданы в строку результата без изменения. 4. если слово содержит только один символ, оно не изменяется, несмотря на то, что единица - нечетное число. в противном случае такое слово было бы исключено. к тому же, слово длиной в один символ не имеет "средней буквы" const delim = " .,; : " dim s as string, s1 as string, word as string, wd as string dim i as integer, n as integer, k as integer input "введите строку: ", s 'обеспечить наличие пробела за последним словом if instr(delim, right$(s, 1)) = 0 then s = s + " " 'начальные присваивания n = len(s): s1 = "": i = 1 do while i < = n 'просматриваем входную строку символ за символом 'ищем первый непробельный символ wd = "" 'qq do while (instr(delim, mid$(s, i, 1)) < > 0) and (i < = n) wd = wd + mid$(s, i, 1) i = i + 1 loop 'выделяем очередное слово, за которым следует пробельный символ word = "" do while (instr(delim, mid$(s, i, 1)) = 0) and (i < = n) word = word + mid$(s, i, 1) i = i + 1 loop 'найдено ли слово? k = len(word) if k > 0 then 'если слово найдено ' вырезается средний символ при нечетной длине if (k > 1) and (k mod 2 < > 0) then k = (k - 1) \ 2 word = left$(word, k) + right$(word, k) end if ' 'добавляем найденное слово через wd к выходной строке s1 = s1 + wd + word end if loop print "результат: " + s1 end примеры работы программы: 1. обычный текст: слова через один пробел введите строку: а роза упала на лапу азора результат: а роза упла на лапу азра 2. использовано больше одного пробела и разделители : и ! введите строку: пример №2: ура! мы ломим: гнутся шведы! результат: пример №2: уа! мы лоим: гнутся швды! 3. использовано несколько непробельных разделителей подряд введите строку: пример --№3--: какое небо результат: пример --№3--: каое небо
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
sadpepeee11.03.2020 02:09
-
kadieva197608.07.2022 13:57
-
albinanizaeva20.03.2023 09:34
-
svdanilova19.01.2020 01:30
-
anosovadara27.06.2023 15:26
-
Vladisimus12.09.2022 07:29
-
sparksfiyfdgghffgg12.11.2021 23:23
-
varvarasitikova20.11.2021 20:20
-
ma4newarita07.03.2020 09:57
-
sidyakinanasty17.09.2022 19:33
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.