Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Delphi > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Здесь нужно купить рекламу за 25 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru

Ответ
 
Опции темы
Старый 15.10.2019, 20:56   #1
ррррр1234
Новичок
Джуниор
 
Регистрация: 15.10.2019
Сообщений: 2
По умолчанию Вывести второе слово, начинающиеся на К

Дана рандомная строка, в которой слова могут быть разделены несколькими пробелами, в этой строке нужно найти второе слово, начинающиеся на К, а затем его вывести с использованием ф-ий pos и copy.(напишите, пожалуйста, как можно проще)
ррррр1234 вне форума   Ответить с цитированием
Старый 16.10.2019, 10:42   #2
Serge_Bliznykov
МегаМодератор
СуперМодератор
 
Регистрация: 09.01.2008
Сообщений: 26,241
По умолчанию

https://ideone.com/B4ZyfW

Код:
program ideone;
var s : string;
   p:integer;
begin
   s := 'know  as book enot on bork  kort in the kind';
   
   s := ' ' + s + ' '; {добавить пробелы в начало для поиска слов, начинающихся с K
   	                и в конец, чтобы найти конец слова   }
   p := Pos(' k',s);
   if p<>0 then begin
      s := Copy(s,p+1,Length(s)-p);
      p := Pos( ' k', s);
      if p<>0 then begin
         s := Copy(s,p+1,Length(s)-p);
         p := Pos(' ',s); {найти пробел после слова, чтобы выделить само слово}
         WriteLn(Copy(s,1,p-1))
      end;
   end;
   if p=0 then WriteLn('Нет такого слова')
end.
Serge_Bliznykov вне форума   Ответить с цитированием
Старый 17.10.2019, 01:51   #3
Вадим Мошев

Заслуженный модератор
 
Аватар для Вадим Мошев
 
Регистрация: 12.11.2010
Сообщений: 8,569
По умолчанию

Не по теме.
Сергей, а вам потом не становится неприятно оттого, что вы выполнили какую-то работу, помогли, а вам даже спасибо не сказали?
Вадим Мошев вне форума   Ответить с цитированием
Старый 17.10.2019, 10:17   #4
Serge_Bliznykov
МегаМодератор
СуперМодератор
 
Регистрация: 09.01.2008
Сообщений: 26,241
По умолчанию

Цитата:
Сообщение от Вадим Мошев Посмотреть сообщение
Сергей, а вам потом не становится неприятно оттого, что вы выполнили какую-то работу, помогли, а вам даже спасибо не сказали?
конечно, неприятно.
но, во-первых, я делаю только то, что мне несложно и недолго (чисто мозги размять)
во-вторых, знаю, что некоторые ходят на форум не каждый день. Поэтому спасибо может через неделю прилететь.
в-третьих, это же форуму полезно. Эта тема теперь не только будет находится через поиск, но и тут будет рабочее решение. Кому-то обязательно пригодится.

p.s. да и я, в принципе, альтруист...
Serge_Bliznykov вне форума   Ответить с цитированием
Старый 17.10.2019, 10:51   #5
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,069
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
в-третьих, это же форуму полезно. Эта тема теперь не только будет находится через поиск, но и тут будет рабочее решение. Кому-то обязательно пригодится.
А куча одинаковых тем с одинаковыми задачами на форуме почкованиями получаются?
Запомните раз и навсегда: помочь != "решите за меня"!
p51x на форуме   Ответить с цитированием
Старый 17.10.2019, 11:14   #6
Serge_Bliznykov
МегаМодератор
СуперМодератор
 
Регистрация: 09.01.2008
Сообщений: 26,241
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
А куча одинаковых тем с одинаковыми задачами на форуме почкованиями получаются?
Вы хотите сказать, что эта задача уже решена на форуме?
Каюсь, мне было проще (и интереснее) написать за 5 минут код, чем искать его на форуме и проверять имеющиеся там решения.

Больше тем - одинаковых и разных!
Serge_Bliznykov вне форума   Ответить с цитированием
Старый 17.10.2019, 19:49   #7
ррррр1234
Новичок
Джуниор
 
Регистрация: 15.10.2019
Сообщений: 2
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
https://ideone.com/B4ZyfW

Код:
program ideone;
var s : string;
   p:integer;
begin
   s := 'know  as book enot on bork  kort in the kind';
   
   s := ' ' + s + ' '; {добавить пробелы в начало для поиска слов, начинающихся с K
   	                и в конец, чтобы найти конец слова   }
   p := Pos(' k',s);
   if p<>0 then begin
      s := Copy(s,p+1,Length(s)-p);
      p := Pos( ' k', s);
      if p<>0 then begin
         s := Copy(s,p+1,Length(s)-p);
         p := Pos(' ',s); {найти пробел после слова, чтобы выделить само слово}
         WriteLn(Copy(s,1,p-1))
      end;
   end;
   if p=0 then WriteLn('Нет такого слова')
end.
Большое спасибо!
ррррр1234 вне форума   Ответить с цитированием
Старый 17.10.2019, 23:10   #8
Serge_Bliznykov
МегаМодератор
СуперМодератор
 
Регистрация: 09.01.2008
Сообщений: 26,241
По умолчанию

Цитата:
Сообщение от ррррр1234 Посмотреть сообщение
Большое спасибо!
Пожалуйста!
Serge_Bliznykov вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вывести слово минимальной длины. Если таких слов несколько,вывести первое введенное слово mkolmi Помощь студентам 0 11.03.2019 23:39
как скрыть второе слово средством css artkhvz HTML и CSS 7 11.08.2015 15:59
работа со строками - удалить второе слово AlexP777 Паскаль, Turbo Pascal, PascalABC.NET 2 23.05.2013 18:15
C++ Вывести на экран второе слово ILYA1991 Общие вопросы C/C++ 2 27.01.2013 17:24
Скопированить уникальные имена из столбца начинающиеся на одно слово NikolayG Microsoft Office Excel 2 21.02.2012 12:23


08:38.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.