Показать сообщение отдельно
  #9 (permalink)  
Старый 14.12.2020, 18:40
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,136

Сообщение от LimonDK
Вот такое хотелось сделать, только не особо понимаю, как каждый раз определять вероятности.
a : 10, b : 20, с : 30
находим сумму всех весов 10 + 20 + 30 = 60//порядок не имеет значения
первый if 10 * 1/60
второй if (10 + 20) * 1/60
else всё остальное

итого
if(n < 0.16) return 'a';
else if(n < .5) return 'b';
else return 'c'

для примера другой порядок с : 30 , a : 10, b : 20
30 * 1/60
(30 + 10) * 1/60

if(n < .5) return 'c';
else if(n < .66) return 'a';
else return 'b'
Ответить с цитированием