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

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

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


Донат для форума - использовать для поднятия настроения себе и модераторам

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

Ответ
 
Опции темы
Старый 10.04.2019, 12:29   #1
Enotik_1998
Форумчанин
 
Регистрация: 09.03.2018
Сообщений: 54
Репутация: 10
По умолчанию Работа со строками в pascal abc.net

Здравствуйте. Нужна помощь с задачей: Создать новый текст, содержащий все слова исходного текста, которые оканчиваются
на ту же букву, что и слово максимальной длины.
Как сделать, чтобы программа работала без copy?
Вот исходный код:
Код:
Program p1;
const
C = [' ', ',', '.'];
var
s,max_word: string;
i,k, prev: integer;
step: boolean;
begin
Write('Введите строку s=');
Read(s);
s:=s + ' ';
prev:=0;
for step:=false to true do
for i:=1 to length(s) do
begin
if s[i] in C then
begin
if i-prev>1 then
begin
if not step then 
begin
if i - prev - 1 > length(max_word) then
max_word := copy(s, prev + 1, i - prev - 1);
end
else 
if s[i - 1] = max_word[length(max_word)] then
write(copy(s, prev + 1, i - prev - 1), ' ');
end;
prev := i;
end;
end;
writeln;
end.
Enotik_1998 вне форума   Ответить с цитированием
Старый 10.04.2019, 12:32   #2
Аватар
Модератор
Заслуженный модератор
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Адрес: Северодонецк.ua
Сообщений: 18,795
Репутация: 6622
По умолчанию

Цитата:
Как сделать, чтобы программа работала без copy?
Например сделать свою функцию аналог copy.
__________________
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума   Ответить с цитированием
Старый 10.04.2019, 12:40   #3
Enotik_1998
Форумчанин
 
Регистрация: 09.03.2018
Сообщений: 54
Репутация: 10
По умолчанию

блин, я не сильно шарю в паскале. Как можно ещё сделать без создания своей собственной функции?
Enotik_1998 вне форума   Ответить с цитированием
Старый 10.04.2019, 12:46   #4
Enotik_1998
Форумчанин
 
Регистрация: 09.03.2018
Сообщений: 54
Репутация: 10
По умолчанию

Да, и я не совсем так выразился. Как сделать эту программу без процедур или функций?
Enotik_1998 вне форума   Ответить с цитированием
Старый 10.04.2019, 13:32   #5
Serge_Bliznykov
МегаМодератор
СуперМодератор
 
Регистрация: 09.01.2008
Сообщений: 25,609
Репутация: 5617
По умолчанию

Цитата:
Сообщение от Enotik_1998 Посмотреть сообщение
Как сделать, чтобы программа работала без copy?
ну, это же Pascal ABC.NET
тут доступен LINQ

вот, например, тут решение похожей (но другой!) задачи:
Цитата:
Код:
// в предложении найти все слова с одной буквой "а" и вывести их
// (c) Plague  http://programmersforum.ru/showpost.php?p=1686131&postcount=4
begin
  var s : string := 
    'Алексей Фёдорович Карамазов - главное действующее лицо романа Фёдора Михайловича Достоевского "Братья Карамазовы"';
  s.ToWords(Arr(' ','-','"')).Where(x->x.Count(i->i='а')=1).Print(NewLine)

// решение с запросом строки у пользователя
//  ReadString.ToWords(Arr(' ','-','"')).Where(x->x.Count(i->i='а')=1).Print(NewLine)

end.
Serge_Bliznykov вне форума   Ответить с цитированием
Ответ

Опции темы

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Pascal, работа со строками Magenta Помощь студентам 20 26.03.2015 23:53
Работа со строками Pascal ksenija15reg Помощь студентам 3 28.11.2013 23:25
Работа со строками (Pascal) Volk_xD Помощь студентам 8 17.12.2010 21:06
Работа со строками (Pascal) SmileGirl Помощь студентам 4 22.10.2010 01:17
Работа со строками (pascal) ДиM@ Помощь студентам 3 18.04.2010 09:39


15:35.


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

Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru