Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 08.04.2015, 03:27
BlackMonsta BlackMonsta вне форума
Новичок
 
Регистрация: 22.12.2013
Сообщения: 67
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию Переделать задачу на множества

Здравстуйте, как можно эту задачу сделать по множеству?(Паскаль)
Код:
const
bykvi='ЙЦУКЕНГШЩЗХЪЭЖДЛОРПАВЫФЯЧСМИТЬБЮйцукенгшщзхъэждлорпавыфячсмитьбю';
var
text, slovo, bykva,simslovo: string;
slovamas,simslova: array[1..100] of string;
seslovo: boolean;
i,masint, kolslov,j:integer;
begin
simslovo:='';
j:=0;
kolslov:= 0;
masint:= 0;
slovo:= '';
writeln('Введите предложение');
readln(text);
text:= text + ' ';
while pos('  ',text)>0 do 
begin
 delete(text,pos('  ',text),1);
end;
if pos(text[1], bykvi)<>0 then
begin
 seslovo:= true;
end
else
begin
 seslovo:= false;
end;
for i:=1 to length(text) do
begin
 if seslovo = true then
 begin
  if pos(text[i], bykvi)<>0 then
  begin
   seslovo:= true;
   slovo:= slovo + text[i];
  end
  else
  begin
   seslovo:= false;
   masint:= masint + 1;
   slovamas[masint]:= slovo;
   kolslov:= kolslov + 1;
   slovo:= '';
  end;
 end;
 if seslovo = false then
 begin
  if pos(text[i], bykvi)<>0 then
  begin
   seslovo:= true;
   slovo:= slovo + text[i];
  end
  else
  begin
   seslovo:= false;
  end;
 end;
end;
for i:=1 to kolslov do
begin
 if length(slovamas[i][1]) = length(slovamas[i]) then
 begin
  j:=j+1;
  simslova[j]:= slovamas[i];
 end;
 if length(simslovo) < length(slovamas[i]) then
 begin
  simslovo:= slovamas[i];
 end;
end;
writeln('Самое длинное симметричное слово: ',simslovo);
end.
Я просто вообще не понял что это такое "множества". Можете пожалуйста переделать и сказать что они вообще делать и как ими пользоваться.
Ответить с цитированием
  #2  
Старый 08.04.2015, 08:33
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

https://ru.wikipedia.org/wiki/%D0%9C...%D0%B2%D 0%BE
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
  #3  
Старый 08.04.2015, 12:53
BlackMonsta BlackMonsta вне форума
Новичок
 
Регистрация: 22.12.2013
Сообщения: 67
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

В том то и дело что я не понимаю и не понял вообще как переделать ее как множества. Я вообще не понял что это такое множество
Ответить с цитированием
  #4  
Старый 08.04.2015, 21:16
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

Вот множество целых чисел: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10…n
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
  #5  
Старый 09.04.2015, 09:30
icWasya icWasya вне форума
Местный
 
Регистрация: 09.11.2010
Сообщения: 499
Репутация: 10
По умолчанию

в Дельфи множества - это set of, например
Код:
set of AnsiChar
Ответить с цитированием
  #6  
Старый 09.04.2015, 11:35
Аватар для NumLock
NumLock NumLock вне форума
Let Me Show You
 
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
По умолчанию

пример работы со множеством:
Код:
var
  s: set of AnsiChar;
  c: AnsiChar;
  i: Integer;
begin
  s:=['A'..'Z', 'a'..'z', 'А'..'Я', 'а'..'я'];
  for i:=0 to $ff do
  begin
    c:=AnsiChar(i);
    if CharInSet(c, s) then Memo1.Lines.Add(string(c));
  end;
end;
пляски с Ansi это из-за юникодной версии Delphi 2010
__________________
Пишу программы за еду.
__________________
Ответить с цитированием
  #7  
Старый 09.04.2015, 12:25
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

Короче читай введение в дискретную математику.
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию

Последний раз редактировалось M.A.D.M.A.N., 09.04.2015 в 13:14.
Ответить с цитированием
  #8  
Старый 13.04.2015, 21:13
BlackMonsta BlackMonsta вне форума
Новичок
 
Регистрация: 22.12.2013
Сообщения: 67
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

Пожалуйста, переделайте, я не пойму до сих пор что это такое. Завтра сдавать, пожалуйста сделайте
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 12:49.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025