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

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

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

 
 Ответить  Открыть новую тему 
> Задача на мн-ва
Caries
сообщение 20.03.2005 16:38
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 44
Пол: Мужской

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


type=(Вася,Володя,Ира,Лида,Марина,Миша)
гости=set of имя
группа=array[имя] of гости;
Описать логическую функцию Везде(ГР) определяющую, есть в группе Гр хотя бы один человек, побывавшийв гостях у всех остальных из Группы(ГР[х]) мн-во людей побывавших в гостях у человека с именем x; xне принадлежитГР[х];

Бред какой-то ,а не задача. (
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 20.03.2005 17:53
Сообщение #2


Гость






На самом деле бред, но если заменить кириллицу на латинские символы (чтобы можно было проверить результат) это будет выглядеть примерно так:
Код
type
 name = (vasya, volodya, ira, lida, marina, misha);
 guests = set of name;
 group = array[name] of guests;

const
 _group: group =
   ([volodya, misha],
    { Володя и Миша были в гостях у Васи (№1 в списке имен) }

    [vasya, lida, ira, misha], { и т.д. }
    [misha, vasya, marina],
    [misha, vasya, ira],
    [volodya{misha}],
    [vasya, ira]);

function vezde(gr: group): boolean;
 var
   i, j: name;
   res: boolean;
   was: set of name;
 begin
   res := false;
   { Перебор всех студентов группы (I - очередной студент) }
   for i := low(name) to high(name) do
     begin
       { was будет содержать всех, у кого в гостях был I }
       was := [];
       for j := low(name) to high(name) do
         { Если I был в гостях у J, то добавить его к списку }
         if (i in gr[j]) then was := was + [j];

       { если список тех, у кого в гостях побывал I
          (вместе с самим I) содержит всех учащихся
          группы, это значит, что I побывал в гостях у всех остальных.
          Только в этом случае Res будет равно True }
       res := res or ((was + [i]) = [low(name) .. high(name)])
     end;
   { возвращаем результат }
   vezde := res
 end;

begin
 writeln(vezde(_group))
end.
 К началу страницы 
+ Ответить 
Caries
сообщение 20.03.2005 18:15
Сообщение #3


Новичок
*

Группа: Пользователи
Сообщений: 44
Пол: Мужской

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


Если еще не затруднит, напишите что пограмма должна делать, а тоя че то не догнал ваще. группы какие Гр )))
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 20.03.2005 18:32
Сообщение #4


Гость






Ну я попытался сделать по условию...
_group[i] задает список людей, бывших в гостях у человека с именем i, то есть это и есть ГР.

Функция function vezde(gr: group): boolean; это то, что требуется - функция, возвращающая True если есть человек, побывавший у ВСЕХ остальных в гостях, и False если такого человека нет... Это та самая Везде(ГР)

Короче, все по условию...
 К началу страницы 
+ Ответить 
Caries
сообщение 20.03.2005 19:07
Сообщение #5


Новичок
*

Группа: Пользователи
Сообщений: 44
Пол: Мужской

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


Спасибо большое.
прошу прощения конечно . но я не понял что должен вводить пользователь?

Сообщение отредактировано: Caries - 28.03.2005 17:25
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Caries
сообщение 2.04.2005 19:06
Сообщение #6


Новичок
*

Группа: Пользователи
Сообщений: 44
Пол: Мужской

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


Если можно более подробно алгоритм работы программы, интересует конкретно по какому принципу тут задан константый массив, и надо ли вообще ввводить кто у кого в гостях был?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 2.04.2005 19:29
Сообщение #7


Гость






Цитата(Caries @ 2.04.05 18:06)
Если можно более подробно алгоритм работы программы

К программе добавлены комментарии...

Цитата(Caries @ 2.04.05 18:06)
надо ли вообще вводить кто у кого в гостях был?

blink.gif А что, по-Вашему, описывается в
Код
const
_group: group = ...;
 К началу страницы 
+ Ответить 
Caries
сообщение 2.04.2005 21:01
Сообщение #8


Новичок
*

Группа: Пользователи
Сообщений: 44
Пол: Мужской

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


:p10:
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Гость
сообщение 13.06.2007 17:03
Сообщение #9


Гость






Если не сложно объясните что тут почём или дайте почитать чёнить а то я не понимаю вообще о чём тут речь идёт.. мне надо такую же прогу только чтобы чел-к с клавиатуры забивал кто у кого в гостях был... глупая задача(
 К началу страницы 
+ Ответить 

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

 



- Текстовая версия 19.07.2025 18:17
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"