Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

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

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

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.12.2007, 23:51   #1
Mastak
 
Регистрация: 30.11.2007
Сообщений: 7
По умолчанию Задача на множества

В институте имеются секции по следующимвидам спорта:
лыжи, коньки,хоккей, футбол, регби. самбо. Известны виды спорта, которыми занимаются учащиеся каждой группы. Количество групп -4. Требуется построить и распечатать множество видов спорта:
1) которыми занимаются хотя бы в одной группе.
2) которыми не занимаются во всех группах
Mastak вне форума Ответить с цитированием
Старый 11.12.2007, 13:39   #2
puporev
Старожил
 
Регистрация: 13.10.2007
Сообщений: 2,740
По умолчанию

Задача не на ум, на писанину. Наверное тебе писать лень. Замени все буквы, которыми я обозначил виды спорта, на нормальные слова.
Код:
program mnog;
uses crt;
type
sport = set of (l,k,h,f,r,s);
var g1,g2,g3,g4:sport;
s1,s2:array[1..5] of string;
m,n,i:integer;
begin
clrscr;
g1:=[l,k];
g2:=[h,k];
g3:=[f];
g4:=[f,h];
m:=1;n:=1;
if (l in g1) or (l in g2) or (l in g3) or (l in g4) then
begin
s1[m]:='l';m:=m+1;
end
else
begin
s2[n]:='l';n:=n+1;
end;
if (k in g1) or (k in g2) or (k in g3) or (k in g4) then
begin
s1[m]:='k';m:=m+1;
end
else
begin
s2[n]:='k';n:=n+1;
end;
if (h in g1) or (h in g2) or (h in g3) or (h in g4) then
begin
s1[m]:='h';m:=m+1;
end
else
begin
s2[n]:='h';n:=n+1;
end;
if (f in g1) or (f in g2) or (f in g3) or (f in g4) then
begin
s1[m]:='f';m:=m+1;
end
else
begin
s2[n]:='f';n:=n+1;
end;
if (r in g1) or (r in g2) or (r in g3) or (r in g4) then
begin
s1[m]:='r';m:=m+1;
end
else
begin
s2[n]:='r';n:=n+1;
end;
if (s in g1) or (s in g2) or (s in g3) or (s in g4) then
begin
s1[m]:='s';m:=m+1;
end
else
begin
s2[n]:='s';n:=n+1;
end;
writeln('Zanimajutsa:');
for i:=1 to m do
writeln(s1[i]);
readln;
writeln('Ne zanimajutsa:');
for i:=1 to n do
writeln(s2[i]);
readln;

end.
puporev вне форума Ответить с цитированием
Старый 11.12.2007, 18:04   #3
Mastak
 
Регистрация: 30.11.2007
Сообщений: 7
По умолчанию

огромное спасибо
Mastak вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задачи на множества Foky Помощь студентам 13 04.03.2009 18:26
Множества Zid@ne Помощь студентам 16 20.01.2008 10:19
Множества в Си Иллидан Общие вопросы C/C++ 14 17.01.2008 15:58
множества xxxPascalxxx Помощь студентам 1 27.12.2007 21:54
Множества stydent M Паскаль, Turbo Pascal, PascalABC.NET 3 13.12.2007 22:00