|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
07.05.2011, 12:22 | #1 |
Форумчанин
Регистрация: 07.05.2011
Сообщений: 169
|
random
Пожалуйста подскажите, как лучше использовать "random", если он очень часто использует первые элементы.
Суть программы в том, что нужно вызывать различные элементы из массива, который уже известен. но при тестировании, 5 элементов, 15 попыток вызвать их рендомно - очень часто вызываются 1 или 2, кусок программы: ______________ for i:=1 to 15 do begin g:=random(4)+1; write(c); read(a[g]); ______________ мне кажется, что из-за FOR RANDOM часто берёт 1, подскажите как брать случайные числа для массива А или как сделать так, чтобы random повторялся не так часто??? |
07.05.2011, 12:26 | #2 |
Форумчанин
Регистрация: 29.09.2010
Сообщений: 636
|
randomize(); в начале юзали?
|
07.05.2011, 12:47 | #3 |
Форумчанин
Регистрация: 07.05.2011
Сообщений: 169
|
onewho
нет, не указала в книге читала, кратко, об этом, но так и не поняла для чего нужна это функция. Подскажите тогда - зачем она? для чего конкретно? буду очень признательна! |
07.05.2011, 12:58 | #4 |
Старожил
Регистрация: 12.11.2010
Сообщений: 8,568
|
Randomize - это инициализация генератора случайных чисел, грубо говоря, использование этой процедуры просто включает его.
onewho Для того, чтобы инициализировать генератор, параметры этой процедуре не нужны, то есть можно просто написать Код:
|
07.05.2011, 13:07 | #5 |
Форумчанин
Регистрация: 07.05.2011
Сообщений: 169
|
Вадим Мошев
думаете после этого 1 или 2 будет не так часто использоваться? хорошо, вечером проверю |
07.05.2011, 13:33 | #6 | |
Форумчанин
Регистрация: 29.09.2010
Сообщений: 636
|
Цитата:
автору: вообще странно, что у вас без этой "батарейки" разные числа выдавались.. просто в самом начале программы подрубайте randomize; и проверяйте.. |
|
07.05.2011, 13:48 | #7 | |
Старожил
Регистрация: 12.11.2010
Сообщений: 8,568
|
Цитата:
Советую: если у вас в массиве содержится n элементов, то и получайте значения от 1 до n. |
|
07.05.2011, 15:43 | #8 |
Форумчанин
Регистрация: 07.05.2011
Сообщений: 169
|
onewho
так это... магия! :D Вадим Мошев да, это для проверки были небольшие числа, конечно, думаю, сделать массив на 30-50 элементов. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Random | AlinKoy | Паскаль, Turbo Pascal, PascalABC.NET | 0 | 02.05.2011 14:35 |
random | Ya_Aston | Помощь студентам | 6 | 17.12.2010 21:31 |
c# Random | BMWSauber | Помощь студентам | 1 | 16.11.2010 23:52 |
random | writer_88 | Помощь студентам | 8 | 30.10.2010 21:40 |
Random | W_P | Паскаль, Turbo Pascal, PascalABC.NET | 2 | 08.10.2008 00:05 |