Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.10.2013, 02:31   #1
FleXik
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 770
Вопрос Из заданных чисел рандомно выбрать одно число

Всем привет, вобщем есть заданные числа из которых нужно рандомно выбирать одно число, пример: 10, 137, 274, 349, 67, 198 , так вот, как сделать что бы из этих заданных чисел рандомно выбиралась одно число? Или я туплю или что, но никак в голову не приходит как это реализовать... Заранее спасибо за помощь.

-----------------------------------

P.S я так понял константу юзать надо?

Последний раз редактировалось FleXik; 15.10.2013 в 02:34.
FleXik вне форума Ответить с цитированием
Старый 15.10.2013, 02:34   #2
northener
ПШП
Участник клуба
 
Регистрация: 15.07.2013
Сообщений: 1,869
По умолчанию

Числа в массив. Случайно выбирать индекс в массиве.
northener вне форума Ответить с цитированием
Старый 15.10.2013, 02:34   #3
FleXik
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 770
По умолчанию

Цитата:
Сообщение от northener Посмотреть сообщение
Числа в массив. Случайно выбирать индекс в массиве.
пример пожалуйста?
FleXik вне форума Ответить с цитированием
Старый 15.10.2013, 02:50   #4
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,289
По умолчанию

Код:
const
  a: array[0..5] of integer = (10, 137, 274, 349, 67, 198);
...
a[random(6)]
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA на форуме Ответить с цитированием
Старый 15.10.2013, 02:58   #5
FleXik
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 770
По умолчанию

Цитата:
Сообщение от BDA Посмотреть сообщение
Код:
const
  a: array[0..5] of integer = (10, 137, 274, 349, 67, 198);
...
a[random(6)]
спасибо большое 6 в скобках это количество чисел указанных в массиве?
FleXik вне форума Ответить с цитированием
Старый 15.10.2013, 03:02   #6
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,289
По умолчанию

Да, в массиве 6 чисел с нумерацией от 0 до 5.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA на форуме Ответить с цитированием
Старый 15.10.2013, 03:02   #7
FleXik
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 770
По умолчанию

для тех кто будет гуглить:

Код:
const
a:array[0..5] of integer=(10, 137, 274, 349, 67, 198);
begin
Randomize;
ShowMessage(IntToStr(a[Random(6)]));
end;
BDA, еще раз спасибо.

Последний раз редактировалось FleXik; 15.10.2013 в 03:28.
FleXik вне форума Ответить с цитированием
Старый 15.10.2013, 03:04   #8
FleXik
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 770
По умолчанию

Цитата:
Сообщение от BDA Посмотреть сообщение
Да, в массиве 6 чисел с нумерацией от 0 до 5.
почему именно от 0 до 5 если чисел 6 обьяснить можете? я просто ниразу с константами не связывался вот и как говорится все бывает впервые...
FleXik вне форума Ответить с цитированием
Старый 15.10.2013, 03:19   #9
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,289
По умолчанию

От 0 до 5 для удобства.
Можете написать и от 1 до 6:
Код:
const
  a :array[1..6] of integer = (10, 137, 274, 349, 67, 198);
begin
  Randomize;
  ShowMessage(IntToStr(a[random(6) + 1]));
end;
Честно говоря, за последние годы уже очень привык к нумерации c нуля (в основном пишу на Си-подобных языках). Да и динамические массивы в Дельфи нумеруются c нуля.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA на форуме Ответить с цитированием
Старый 15.10.2013, 03:27   #10
FleXik
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 770
По умолчанию

Цитата:
Сообщение от BDA Посмотреть сообщение
ShowMessage(IntToStr(a[random(6) + 1]));
новый вопрос, зачем + 1 делать после random? это из-за того что в массиве от 1 до 6 вместо 0 до 5?
FleXik вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Для заданных чисел m и n вычислить число сочетаний katyawapka Паскаль, Turbo Pascal, PascalABC.NET 1 16.06.2013 19:54
C++ как сделать что бы генератор случайных чисел генерировал, но выводил только одно число RBIT Помощь студентам 3 15.10.2012 22:13
За один ход можна вычеркнуть одно число и на его место записать строго меньше неотрицательное число. Witaliy Помощь студентам 5 25.02.2009 17:44
вычисление суммы чисел, кратных 3 из последовательности, состоящей из 10 чисел, заранее заданных Белка Помощь студентам 3 27.10.2007 11:53
Мне нужно выбрать данные из первого запроса, если он вернул хоть одно число=числу из nata Общие вопросы Delphi 8 05.06.2007 23:57