IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Множества
сообщение
Сообщение #1


Гость






Четыре садовника выращивают на своих участках цветы из имеющегося списка. Определить, какие виды цветов выращивают хотя бы два садовника, выращивает только один садовник, какие цветы есть у каждого садовника.
Помогите пожалуйста: как определить какие цветы выращивает только один садовник?
Вот программа:
 
program mn1;
uses crt;

type sorta = (ange,vict,gaga,ybil,avem,kata);{сорта роз}
sortaSet = set of sorta;

const sortastr: array [ange..kata] of string[9] =
(' Анжел ',' Виктор ','Гагарин ',' Юбил ',' Ave ',' Катар ');

var s: array [1..4] of sortaset; {сорта выращиваемые цветоводами}
w,q,m1,m2,m3: sortaset; {результирующие множества}
i,j:byte;
procedure InSet ( var s:sortaset);

var sort: Sorta; {сорт розы}

begin
s:=[]; {вначале множество пусто}
for sort:= ange to kata do

if random(2)>0 then s:=s+[sort]
end;


procedure outset (s:sortaset);

var sort: sorta;

begin
for sort:=ange to kata do
if (sort in s) then
write(SortaStr[sort],'');
writeln;
end;



begin
clrscr;
randomize;
writeln;
InSet(S[1]);
InSet(S[2]);
InSet(S[3]);
InSet(s[4]);
write(' Есть у первого :');
OutSet(S[1]);
writeln;
write('Есть у второго');
OutSet(S[2]);
writeln;
write('Есть у третьего');
OutSet(S[3]);
writeln;
write('Есть у четвертого');
OutSet(S[4]);
writeln;
m1:=s[1]*s[2]*s[3]*s[4]; {Есть у каждого цветовода}
{Есть хотя бы у двух}
for i:=1 to 4 do

for j:=i+1 to 4 do begin

m2:=s[i]*s[j];
if m2=m2*q then m2:=[];
q:=q+m2;
end;

{Есть только у одного}


write('Есть у каждого');
outset(m1);
writeln;
write('Есть хотя бы у двух');
outset(q);
writeln;
write('Есть только у одного');
outset(w);
readln;


end.


.
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 27.04.2024 7:33
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name