Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Для новичков > Как можно задать диапазоны в массиве?


Автор: Cordon 6.1.2008, 23:33
В чем собственно вопрос!Нужно задать диапазоны генерирования(интегрирования) массива.В VBA все выходит изумительно следуя формуле  A(i, j) = Int((f2 - f1 + 1) * Rnd) + f1  но программа пишеться в Дельфи и функцию Random там нужно указывать с параметром, но формула этого не позволятет!
Подскажите кто может, как можно задать диапазоны в массиве! заранее благодарен! 

Автор: Yanis 7.1.2008, 00:33
Используй RandomRange из модуля Math.
Или же вручную:
Код
  A[i][j] := Random(100 - 10) + 10;
  // заполнит элемент (i,j) массива A
  // 10 <= x < 100 числом

Автор: remax 7.1.2008, 15:55
В чем проблема! Для твоей формулы используй Random без параметров. И все ок!
В Паскале две формы функции Random
- Без параметра генерит вещественные числа в интервале [0, 1[
- c целочисленным параметром N  генерит целые числа в интервале [0, N-1]

Добавлено через 6 минут и 44 секунды
Обрати внимание, что 
Код

 Random(100 - 10) + 10;
 и 
Код

  Random*(100 - 10) + 10;
 

Это совершенно разные вещи, хотя и вернут случайно число в близком интервале
в первом случае   - результат целое число в интервале [10, 99]
во втором случае - результат вещественное число в интервале [10, 100[

Автор: Cordon 7.1.2008, 17:04
Благодарю:remax и Yanis  !!! Да с утра и сам догнал! и пробовал же так! только видать сонный был! Но все равно респект Вам!

Добавлено через 51 секунду
Думаю что топик можно закрывать!!Хотя... все на усмотрение модеров!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)