|
|
ru.algorithms- RU.ALGORITHMS ---------------------------------------------------------------- From : Kilew 2:5020/400 17 Jun 2002 03:48:31 To : Alexander Kazak Subject : Re: как рандомить подскажите плиз -------------------------------------------------------------------------------- Alexander Kazak <alexandr@rnd.runnet.ru> пишет в сообщении:aeins2$clr$1@host.talk.ru... > У меня есть натуральное число N и натуральное число K<N. Как написать > процедуру на Паскале, которая возвращает K случайных натуральных чисел, > причём сумма их равна N? > Еслия правильно понял, то если K=N-1, тогда все числа будут единицы кроме одной, =2??? Тогда алгоритм будет выглядеть примерно так: Берем массив из К элементов , начальное значение =1 , потом N-K раз выполняем такие действия: Выбрать случайным образом элемент массива , увеличить его значение на еденицу.... Результат - массив из К чисел, сумма которых равна N... Причем довольно-таки рандомно... > -- > Отправлено через сервер Форумы@mail.ru - http://talk.mail.ru --- ifmail v.2.15dev5 * Origin: NTUU "KPI" (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.algorithms/12933728ba691.html, оценка из 5, голосов 10
|