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 - 4)
сообщение
Сообщение #2


Гость






Насколько я помню - вот так:

w := s[1]+s[2]+s[3]+s[4]; { Все присутствующие }
for i := 1 to 3 do
for j := i+1 to 4 do
w := w - s[i]*s[j]; { минус все возможные комбинации из 2-х садовников }

 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Гость






Немного неправильно конечно, но все равно спасибо.
Будет вот так :

w := s[1]+s[2]+s[3]+s[4]; { Все присутствующие }
for i := 1 to 3 do
for j := i+1 to 4 do
w := w - q; { минус все возможные комбинации из 2-х садовников }

.

 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Гость






Прости, а ЧЕМ, собственно, результат-то моего выражения тебя не устроил? Итог-то один и тот же... Ну, само собой, ОТ МЕНЯ ты больше помощи не увидишь, ибо делать что-то, проверять, тестировать, а потом какой-то хам придет и скажет, что "КОНЕЧНО, неправильно" - это пусть другие теперь тебе помогают, однако - результат - АБСОЛЮТНО идентичный... dry.gif
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Уникум
*******

Группа: Пользователи
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

Репутация: -  159  +


Цитата(Гость @ 11.05.2007 22:39) *

неправильно конечно,

Гость, VAN, здесь принято при сообщении об ошибке указывать, в чем именно состоит ошибка. Голословные утверждения рискованы. Учти, на подобное заявление обязательно последуют проверки участников Форума, и если говорящий не прав - он как минимум лишится доброй репутации. Если он указал, в чем ошибка, но был при этом не прав - это не беда, ошибиться может всякий, на то и Форум..

Так вот, я предлагаю тебе, гость VAN, конкретно сказать, в чем состоит ошибка в ответе volvo. Надеюсь, ты откликнешься на мою просьбу прежде чем твои слова проверят другие. Думаю, ты не станешь прятаться за маской гостя, которому невозможно понизить репутацию, а честно вступишь в полемику с другими посетителями Форума.

Удачи тебе в этом и других делах..


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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

 





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