Как правильно задать диапазон генерации случайных чисел
Подскажите пожалуйста как из массива e[6]={0.7,1,1.2,1.6,2.1,2.2} с помощью функции rand() выбрать случайно только одно значение?
пробовала вот так: E1=rand()%e[6]; а оно пишет: Illegal use of floating point. что делать, подскажите!!!!!!! Очень срочно надо!!! |
perfomanse, не знаю, насколько корректным будет мое решение, но все же:выбрать случайно число от 0 к 5(индексы элементов массива), и по индексу получить сам элемент.
|
perfomanse, функция rand(100) дает случайные значения от 0 до 99.
Т.о. для получения значения от 1 до 6 надо писать rand()%6+1 E1=e[rand()%6+1] P.S. работоспособность не проверял. |
Есть функция int random(int n), которая возвращает псевдослучайное число большее или равное 0 и меньшее или равное n-1 (имеется не во всех реализациях)
E1=e[random(6)]; |
спасибо! сейчас попробую)
Declaration terminated incorrectly во всех двух случаях! |
Цитата:
Код:
#include <iostream.h> |
perfomanse, пример Drongo работает без проблем. Declaration terminated incorrectly-возможно вы неправильно что нибудь объявляете? Кусок кода был бы не лишним.
|
Время: 13:22. |
Время: 13:22.
© OSzone.net 2001-