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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 11.09.2014, 08:02   #1
Yuliyasharashkina
 
Регистрация: 11.09.2014
Сообщений: 7
По умолчанию Дискретная математика. Задача на множества [на С]

Задать множество А случайным образом из k элементов, каждый из элементов взять из диапазона [0, m] (повторяющиеся элементы удалить). Задать случайным образом элемент из диапазона [0, m+n], проверить, входит ли этот элемент во множество А. Найти кардинальное число множества А, найти кардинальное число булеана множества А.
k=10
m=24
n=3

код в си
Yuliyasharashkina вне форума Ответить с цитированием
Старый 11.09.2014, 08:05   #2
Smitt&Wesson
Старожил
 
Аватар для Smitt&Wesson
 
Регистрация: 31.05.2010
Сообщений: 13,543
По умолчанию

На Lisp-е пойдёт?
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder
Smitt&Wesson вне форума Ответить с цитированием
Старый 11.09.2014, 08:36   #3
rrrFer
Санитар
Старожил
 
Аватар для rrrFer
 
Регистрация: 04.10.2008
Сообщений: 2,577
По умолчанию

Что именно не получается? Сами решить пробовали?
Элементы - целые числа? (иначе там не может быть повторяющихся).
rrrFer вне форума Ответить с цитированием
Старый 11.09.2014, 09:38   #4
Yuliyasharashkina
 
Регистрация: 11.09.2014
Сообщений: 7
По умолчанию

у на урок преподаватель воообще не помогает.код не получается.просто уже незнаю что делать

конечно.не получается нужен код в си этой задаче.

Последний раз редактировалось Stilet; 11.09.2014 в 10:12.
Yuliyasharashkina вне форума Ответить с цитированием
Старый 11.09.2014, 09:43   #5
rrrFer
Санитар
Старожил
 
Аватар для rrrFer
 
Регистрация: 04.10.2008
Сообщений: 2,577
По умолчанию

Тебе стопудово потребуется функция для проверки того, что сгенерированное число принадлежит массиву. Не получается ее написать?
Код:
bool member(int *arr, int sizeOnArr, int value) {
// напиши тут что-то
// функция вернет true, если value входит в arr, иначе false
}
Тебе стопудово нужно проверить ошибки ввода:
Цитата:
Задать множество А случайным образом из k элементов, каждый из элементов взять из диапазона [0, m] (повторяющиеся элементы удалить).
Очевидно, k и m больше нуля, а также k <= m

Если ты все это сделаешь (это очень просто, открой книжку уже), то генерация множества может выглядеть так

Код:
int *arr, m, k;
for (int i = 0; i < m;) {
  int value = rand() % m;
  if (member(arr, i, value))
    continue;
  arr[i++] = value;
}
Ну а следующая часть:
Цитата:
Задать случайным образом элемент из диапазона [0, m+n], проверить, входит ли этот элемент во множество А.
примерно так:
Код:
int n; // где-тоо юзер вводит n
int val = rand() % (m + n);
if (member(arr, m, val)) {
  printf("входит");
else
  printf("не входит");
Ну и дальше тоже довай сам(а) что-нибудь делай.

Последний раз редактировалось rrrFer; 11.09.2014 в 09:51.
rrrFer вне форума Ответить с цитированием
Старый 11.09.2014, 09:48   #6
Yuliyasharashkina
 
Регистрация: 11.09.2014
Сообщений: 7
По умолчанию

генерацию тоже писала не выходит.
Yuliyasharashkina вне форума Ответить с цитированием
Старый 11.09.2014, 09:52   #7
rrrFer
Санитар
Старожил
 
Аватар для rrrFer
 
Регистрация: 04.10.2008
Сообщений: 2,577
По умолчанию

Цитата:
генерацию тоже писала не выходит.
Генерацию я написал же. Ты свой код (который писала) выкладывай.

Последний раз редактировалось rrrFer; 11.09.2014 в 10:30.
rrrFer вне форума Ответить с цитированием
Старый 11.09.2014, 10:02   #8
Yuliyasharashkina
 
Регистрация: 11.09.2014
Сообщений: 7
По умолчанию

спасибо.вот сейчас попробую если не получится напишу
Yuliyasharashkina вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Дискретная математика olga) Помощь студентам 0 09.03.2012 10:06
Дискретная математика arrowsf1 Помощь студентам 0 26.01.2012 17:18
Дискретная математика sover Помощь студентам 6 27.05.2011 10:14
Дискретная математика ttjke Фриланс 3 11.10.2010 20:41
Дискретная математика А.С.О Помощь студентам 1 24.06.2009 18:56