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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 12.12.2012, 01:17   #1
Defunate
Пользователь
 
Регистрация: 11.09.2010
Сообщений: 83
По умолчанию Шанс срабатывания

Допустим у меня есть вероятность срабатывания какого-то правила в программе = 30% как это лучше реализовать программно, это же ведь не значит что из 10 случаев 3 случая всегда будут успешны.
Defunate вне форума Ответить с цитированием
Старый 12.12.2012, 01:26   #2
Базиля
Участник клуба
 
Аватар для Базиля
 
Регистрация: 03.12.2009
Сообщений: 1,013
По умолчанию

Это правило с шансом в программе только одно?
Вообще суть все равно одна будет - можно поиграться с функцией random.
И какой ЯП?

Последний раз редактировалось Базиля; 12.12.2012 в 01:55.
Базиля вне форума Ответить с цитированием
Старый 12.12.2012, 02:17   #3
Defunate
Пользователь
 
Регистрация: 11.09.2010
Сообщений: 83
По умолчанию

java, рандом то да, но как по умному это сделать
Defunate вне форума Ответить с цитированием
Старый 12.12.2012, 06:55   #4
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

не знаю синтаксиса явы поэтому на паскале
Код:
chance:=random(10)+1;
if chance<=3 then {сработало}
else {не сработало}
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"
Mad_Cat вне форума Ответить с цитированием
Старый 12.12.2012, 08:38   #5
WorldMaster
Старожил
 
Аватар для WorldMaster
 
Регистрация: 25.08.2011
Сообщений: 2,841
По умолчанию

Цитата:
Сообщение от Mad_Cat Посмотреть сообщение
не знаю синтаксиса явы поэтому на паскале
Код:
chance:=random(10)+1;
if chance<=3 then {сработало}
else {не сработало}
Чтото у меня сомнения.
30% значит что на 100 срабатываний функции 30 раз будет получено "сработало" .. но учитывая особенность random не думаю что ваш код даст эти 30%.

Провел опыт. Собственно как я и говорил вероятность прыгает ... провел с десяток опытов и соотношение всегда по разному, но никогда не стабильно 30 на 70.

мне кажется что для достижения результата может подойти следующий алгоритм. Создается массив из 10 чисел в котором ровно 30% заполнено нужным числом. Затем массив перемешивается любым способом и далее выдаются числа по очереди пока массив не опустошится до конца.
Skype - wmaster_s E-Mail - WorldMasters@gmail.com
Работаем по 3 критериям - быстро, качественно, недорого. Заказчик выбирает любые два.

Последний раз редактировалось WorldMaster; 12.12.2012 в 09:10.
WorldMaster вне форума Ответить с цитированием
Старый 12.12.2012, 09:20   #6
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

вероятность срабатывания в 30 процентов не дает никакой гарантии что поучаствовав в 10 играх вы 3 раза выиграете ==>
Должно сработать 30 раз из 100 != вероятность 30%
А в общем решать ТС-у как делать
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"
Mad_Cat вне форума Ответить с цитированием
Старый 12.12.2012, 09:29   #7
WorldMaster
Старожил
 
Аватар для WorldMaster
 
Регистрация: 25.08.2011
Сообщений: 2,841
По умолчанию

Цитата:
Сообщение от Mad_Cat Посмотреть сообщение
вероятность срабатывания в 30 процентов не дает никакой гарантии что поучаствовав в 10 играх вы 3 раза выиграете ==>
Должно сработать 30 раз из 100 != вероятность 30%
Это как так?? на основании чего вы приняли такое решение??
Skype - wmaster_s E-Mail - WorldMasters@gmail.com
Работаем по 3 критериям - быстро, качественно, недорого. Заказчик выбирает любые два.
WorldMaster вне форума Ответить с цитированием
Старый 12.12.2012, 09:32   #8
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

поиграйте в любой лотерее/игре
где например из 2 картинок нужно угадать одну
вероятность что вы угадаете 50%
но не факт что тыкая 10 раз в одну и ту же картинку вы 5 раз угадаете ее
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"
Mad_Cat вне форума Ответить с цитированием
Старый 12.12.2012, 09:49   #9
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

а вы оба запутались
в исходном сообщении недостаточно конкретной информации.
По сути, я согласен с WorldMaster - если нужно, чтобы какое-то событие наступило ровно в 30% случаев, тогда способ с заполнением структуры нужным числом, случайным перемешиванием (внимание! см. на форуме, как правильно перемешивать!) - даст то, что нужно.

Когда это может понадобится.
Допустим, есть 10 карточек. и нужно, чтобы выиграли 3 из них.
Способ с random<=3 может дать 1 выигрышную карточку, две, три, четыре и даже 5..
Способ с заполнением массива нужным числом выигрышей и перемешиванием даст РОВНО ТРИ (ну или сколько надо) выигрышные карточки..

А так согласен, какой способ ему лучше подходит - выбирать TC!
Serge_Bliznykov вне форума Ответить с цитированием
Старый 12.12.2012, 09:55   #10
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

Цитата:
а вы оба запутались
неа не оба
у тс явно написано
Цитата:
есть вероятность срабатывания какого-то правила в программе = 30%...
это же ведь не значит что из 10 случаев 3 случая всегда будут успешны
поэтому вариант с массивом не подходит(
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"
Mad_Cat вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Два листа - два события, одновременность срабатывания двух макросов strannick Microsoft Office Excel 20 03.04.2012 16:49
Возможные Причины Срабатывания DISTINCT и обход ситуации Izhic SQL, базы данных 6 16.03.2011 10:15
есть шанс? Alibek24 Фриланс 10 10.12.2010 19:42
шанс сумирования числа lowercase Общие вопросы Delphi 7 23.08.2010 17:11