о Грозном Рестораны и кафе книга жалоб Чеченский форум Интересное Кино О Чечне и чеченцах Проза и поэзия Мастера Чечни Фото Ислам

Популярные статьи

Уголок мусульманина

О мужчине, побившем жену

Передают со слов Умара, да будет доволен им Аллах, что Пророк, да благословит его Аллах и да приветствует, сказал:
Не следует спрашивать мужчину о том, за что он побил свою жену. (Этот хадис приводят Абу Дауд и другие мухаддисы.)
 
    Чеченский форум GovzPeople.ru » Мнения, опросы, разговоры » IT - Информационные технологии  

    Randomize, случайные числа  
Magistre
Сообщение # 1


Активный форумчанин
  • 51

Репутация: 23
Группа: Доверенные
Пол: мужской
Сообщений: 606

мне нужно как то получить 9 разных случайных чисел из 36 как это сделать ?


Stigal
Сообщение # 2


GOVZ-постер
  • 85

Репутация: 324
Группа: Доверенные
Пол: мужской
Сообщений: 3031
ICQ: 422444744

Можно обзвонить 9 знакомых и попросить назвать случайное число в интервале 1-36, случайней некуда )



--------------------
Грехи людей пересчитать ты так усердно рвёшься?
С своих начни, и до чужих едва ли доберешься.
Magistre
Сообщение # 3


Активный форумчанин
  • 51

Репутация: 23
Группа: Доверенные
Пол: мужской
Сообщений: 606

во первых это должно быть на каком нибудь языке программирования во вторых в твоем варианте двое могут сказать одинаковые числа а мне нужно чтобы все девять были разные


Stigal
Сообщение # 4


GOVZ-постер
  • 85

Репутация: 324
Группа: Доверенные
Пол: мужской
Сообщений: 3031
ICQ: 422444744

Цитата: Magistre
двое могут сказать одинаковые числа

Можно сказать -Не, не катит, давай другое )
Или использовать функцию псевдослучайных чисел - Rnd и Randomize, они наверное в любом языке есть.
Например -
p = 36 * Rnd
p = Fix (36 * Rnd), Fix отрезает дробную часть у числа.
Лотерея что ли? Любая система срабатывает только в кино )



--------------------
Грехи людей пересчитать ты так усердно рвёшься?
С своих начни, и до чужих едва ли доберешься.
Magistre
Сообщение # 5


Активный форумчанин
  • 51

Репутация: 23
Группа: Доверенные
Пол: мужской
Сообщений: 606

не у меня есть 36 элементов и при нажатии на кнопку девять случайных элементов активны а другие выключаются


betirsolt
Сообщение # 6


Активный форумчанин
  • 51

Репутация: 39
Группа: Доверенные
Пол: мужской
Сообщений: 561

var
int : Integer;
i : Integer;

begin
// Если Вы выполните эту программу дважды, гарантируется, что только
// первые 5 значений randomize
// снова установит в различную часть
// псевдо случайной последовательности чисел.

// Получение случайного целого числа в диапазоне 1..100
ShowMessage('Первые 5 фиксированных чисел');
for i := 1 to 5 do
begin
int := 1 + Random(100); // Эти 100 значений дают диапазон 0..99
ShowMessage('int = '+IntToStr(int));
end;

// Теперь, чтобы снова установить выполняем randomize
Randomize;
ShowMessage('');

// Получение случайного целого числа в диапазоне 1..100
ShowMessage('Следующие 5 случайных чисел');
for i := 1 to 5 do
begin
int := 1 + Random(100); // Эти 100 значений дают диапазон 0..99
ShowMessage('int = '+IntToStr(int));
end;
end;
Первые 5 фиксированных чисел
int = 1
int = 4
int = 87
int = 21
int = 28

Следующие 5 случайных чисел
int = 35
int = 74
int = 45
int = 50
int = 31



--------------------
ВЗЛОМОМ НЕ ЗАНИМАЮСЬ!!!
Программа Азан для Грозного и Чеченской Республики - скачать!!!!
кацимодо
Сообщение # 7


Govz-Профессионал
  • 85

Репутация: 116
Группа: Доверенные
Пол: мужской
Сообщений: 2564

Награда
Лотерея что ли?

тож подумал об этом.


0x90
Сообщение # 8


Есть прописка
  • 51

Репутация: 40
Группа: Посетители
Пол: мужской
Сообщений: 347

Приемлимое решение можно получить только установив в качестве seed value уникальное значение, к примеру текущее время в секундах.



--------------------
Нет рабства безнадежнее, чем рабство тех рабов, себя кто полагает свободным от оков.
virtual
Сообщение # 9


Местный житель
  • 34

Репутация: 19
Группа: Посетители
Пол: мужской
Сообщений: 165

с#
В качестве точки входа используются миллисекунды настоящего времени, что не сложно понять в общем)))


static void Main(string[] args)
{
Random rnd = new Random(DateTime.Now.Millisecond);

for (int i=0;i < 9;i++)
{
Console.Write(i.ToString() + ":" + rnd.Next(36) + "\r\n");
}

Console.Read();
}



--------------------
Поможем экосистеме - прекратим существование!
virtual
Сообщение # 10


Местный житель
  • 34

Репутация: 19
Группа: Посетители
Пол: мужской
Сообщений: 165

Я думаю для большего качества можно было собрать входное число по такой формуле:
год+месяц+день+час+минуты+секунды+миллисекунды

если на входе одинаковое число - и выводимая случайная последовательность будет одинаковой, описанная выше формула позволит иметь 100% гарантию что последовательность не повторится))))) я так думаю))



--------------------
Поможем экосистеме - прекратим существование!
0x90
Сообщение # 11


Есть прописка
  • 51

Репутация: 40
Группа: Посетители
Пол: мужской
Сообщений: 347

Нужно есчо проверить есть ли среди полученных девяти чисел совпадения и пересчитать при надобности.



--------------------
Нет рабства безнадежнее, чем рабство тех рабов, себя кто полагает свободным от оков.
Magistre
Сообщение # 12


Активный форумчанин
  • 51

Репутация: 23
Группа: Доверенные
Пол: мужской
Сообщений: 606

кто нибудь по проще метод предложит чем бетирсолт


Stigal
Сообщение # 13


GOVZ-постер
  • 85

Репутация: 324
Группа: Доверенные
Пол: мужской
Сообщений: 3031
ICQ: 422444744

Степень случайности какая нужна? Чем не устраивает Rnd?



--------------------
Грехи людей пересчитать ты так усердно рвёшься?
С своих начни, и до чужих едва ли доберешься.
Magistre
Сообщение # 14


Активный форумчанин
  • 51

Репутация: 23
Группа: Доверенные
Пол: мужской
Сообщений: 606

рендом устраивает просто код слишком большой


0x90
Сообщение # 15


Есть прописка
  • 51

Репутация: 40
Группа: Посетители
Пол: мужской
Сообщений: 347

там же бОльшая часть кода к рэндомизации не относится, а юзать надо не это, а код виртуала.



--------------------
Нет рабства безнадежнее, чем рабство тех рабов, себя кто полагает свободным от оков.
Stigal
Сообщение # 16


GOVZ-постер
  • 85

Репутация: 324
Группа: Доверенные
Пол: мужской
Сообщений: 3031
ICQ: 422444744

Тогда проще некуда. Рандомом на вывод случайную цифру в цикле 9 раз, всего несколько строк. Какой язык?



--------------------
Грехи людей пересчитать ты так усердно рвёшься?
С своих начни, и до чужих едва ли доберешься.
Magistre
Сообщение # 17


Активный форумчанин
  • 51

Репутация: 23
Группа: Доверенные
Пол: мужской
Сообщений: 606

паскаль или бейсик


Stigal
Сообщение # 18


GOVZ-постер
  • 85

Репутация: 324
Группа: Доверенные
Пол: мужской
Сообщений: 3031
ICQ: 422444744

For i=1 to 9
p = Fix (36 * Rnd)
;тут вывод на печать или еще куда
Next i
Короче некуда. Устраивает? Можно использовать другой оператор цикла.



--------------------
Грехи людей пересчитать ты так усердно рвёшься?
С своих начни, и до чужих едва ли доберешься.
Magistre
Сообщение # 19


Активный форумчанин
  • 51

Репутация: 23
Группа: Доверенные
Пол: мужской
Сообщений: 606

спасибо огроменное


Smith
Сообщение # 20


Govz-Профессионал
  • 85

Репутация: 166
Группа: Доверенные
Пол: мужской
Сообщений: 2349

Награда
От нечего делать прикинул на старичке шестерке, никакой гарантии от повторов.

Но, как говорится, один RND другому рознь.



--------------------
Если меч может пригодиться раз в жизни, то есть смысл носить его всегда.

ГовзОнЛ@йн