Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 17, средняя оценка - 4.59
nill
9 / 9 / 0
Регистрация: 16.08.2009
Сообщений: 417
#1

Можно ли задать вероятность выпадения числа в функции Rand(); - C++

09.05.2011, 22:02. Просмотров 2289. Ответов 7
Метки нет (Все метки)

Вопрос в названии темы
если можно как то задать вероятность то хотелось бы увидеть пример в коде!

то есть допустим rand выдает чиса от 0 до 1 включительно
как сделать чтобы вероятность выпадения 0 была 30%, а 1 70%
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.05.2011, 22:02     Можно ли задать вероятность выпадения числа в функции Rand();
Посмотрите здесь:

Отрицательный числа в rand() C++
Использование функции rand() C++
Упаковка и распаковка групп чисел и вероятность выпадения граней костей C++
C++ Как задать диапазон с помощью функции rand?
Альтернатива функции rand()? C++
Можно ли задать такие параметры, чтоб в функции произошла ошибка? C++
Найти вероятность выпадения крестиков, ноликов и пустой клетки C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ValeryLaptev
Эксперт С++
1029 / 808 / 48
Регистрация: 30.04.2011
Сообщений: 1,651
09.05.2011, 22:05     Можно ли задать вероятность выпадения числа в функции Rand(); #2
Дык вероятность равна 1/RAND_MAX. Распределение-то равномерное.
valeriikozlov
Эксперт C++
4663 / 2489 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
09.05.2011, 22:08     Можно ли задать вероятность выпадения числа в функции Rand(); #3
nill, Вариант:
- генерируем случайные числа в диапазоне от 0 до 9 включительно.
- если выпадает 0, 1, 2 - переделываем их в 0
- если выпадает 3, 4, 5, 6, 7, 8, 9 - то переделываем их в 1
ruslan_abel
33 / 33 / 4
Регистрация: 06.05.2011
Сообщений: 91
09.05.2011, 22:12     Можно ли задать вероятность выпадения числа в функции Rand(); #4
Можно попробовать сделать массив a из ста элементов. где 30 нулей и 70 единичек. А с помощью rand получать случайное число i от 0 до 99. И тогда a[i] будет 1 с вероятностью 70%.
nill
9 / 9 / 0
Регистрация: 16.08.2009
Сообщений: 417
09.05.2011, 22:15  [ТС]     Можно ли задать вероятность выпадения числа в функции Rand(); #5
valeriikozlov, ruslan_abel,
сложный способ, в реальной задаче у меня около тысячи выпадающих чисел


ValeryLaptev,
ну да это логично но как это мне поможет решить проблему ?
KuKu
1554 / 1032 / 75
Регистрация: 17.04.2009
Сообщений: 2,971
09.05.2011, 22:24     Можно ли задать вероятность выпадения числа в функции Rand(); #6
можно как-то так:
int((rand%100)/70)
ValeryLaptev
Эксперт С++
1029 / 808 / 48
Регистрация: 30.04.2011
Сообщений: 1,651
09.05.2011, 22:27     Можно ли задать вероятность выпадения числа в функции Rand(); #7
А так и поможет, как тебе уже показали:
C++
1
2
3
int function()
{ int m = rand()%10;
if(i<3) return 0; else return 1; }
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.05.2011, 22:27     Можно ли задать вероятность выпадения числа в функции Rand();
Еще ссылки по теме:

C++ Rand() генерирует одни и те же числа
Использование функции rand() C++
Как задать диапазон rand C++
C++ Вероятность в rand()
C++ Rand() исключение числа

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
ruslan_abel
33 / 33 / 4
Регистрация: 06.05.2011
Сообщений: 91
09.05.2011, 22:27     Можно ли задать вероятность выпадения числа в функции Rand(); #8
Можно еще сгенерировать случайное число от 0 до 99. Если оно попадает в диапазон [0; 29] то вернуть 0. А если [30; 99] то вернуть 1.
Yandex
Объявления
09.05.2011, 22:27     Можно ли задать вероятность выпадения числа в функции Rand();
Ответ Создать тему
Опции темы

Текущее время: 05:56. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru