Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Informix [игнор отключен] [закрыт для гостей] / Генератор случайных чисел. / 7 сообщений из 7, страница 1 из 1
08.06.2007, 11:49
    #34583443
skill
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Генератор случайных чисел.
Каким образом можно получить случайное число?
Есть ли в Informix встроенная функция?
...
Рейтинг: 0 / 0
08.06.2007, 14:14
    #34584049
sysmaster
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Генератор случайных чисел.
Код: plaintext
1.
2.
3.
4.
5.
6.
CREATE PROCEDURE sp_random( ) RETURNING INTEGER; 
    DEFINE GLOBAL seed DEC(  10  ) DEFAULT  1 ; 
    DEFINE d DEC(  20 ,  0  ); 
    LET d = seed *  1103515245  +  12345 ; 
    LET seed = d -  4294967296  * TRUNC( d /  4294967296  ); 
    RETURN MOD( TRUNC( seed /  65536  ),  32768  ); 
END PROCEDURE; 

Copyright (c) Leonid Vorontsov :)
...
Рейтинг: 0 / 0
09.06.2007, 16:23
    #34586507
skill
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Генератор случайных чисел.
Спасибо, помогло.
...
Рейтинг: 0 / 0
11.06.2007, 17:35
    #34588599
Leonid Vorontsov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Генератор случайных чисел.
> Copyright (c) Leonid Vorontsov
Спасибо, конечно... Но это не я придумал, сам подсмотрел где-то...
...
Рейтинг: 0 / 0
11.06.2007, 18:00
    #34588637
vasilis
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Генератор случайных чисел.
Leonid Vorontsov> Copyright (c) Leonid Vorontsov
Спасибо, конечно... Но это не я придумал, сам подсмотрел где-то...
Да уж, в Гугле свыше 500 ссылок... :)
Тем не менее, процедуру для Информикс, наверное, первым написал ? :)
...
Рейтинг: 0 / 0
15.04.2008, 15:11
    #35256444
Журавлев Денис
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Генератор случайных чисел.
Чтобы не потерять запишу тут.

Чуть переписал, приделал пускатель от времени:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
CREATE PROCEDURE sp_random( ) RETURNING INTEGER; 
    DEFINE GLOBAL seed DEC(  10  ) DEFAULT - 1 ;
    DEFINE d DEC(  20 ,  0  ); 
    if seed = - 1  then
      let seed = trunc(to_char(current, '%Y')+to_char(current, '%m')+
                to_char(current, '%d')+to_char(current, '%H')+
                to_char(current, '%M')+to_char(current, '%S')); 
    end if;
    LET d = seed *  1103515245  +  12345 ; 
    LET seed = d -  4294967296  * TRUNC( d /  4294967296  ); 
    RETURN MOD( TRUNC( seed /  65536  ),  32768  ); 
END PROCEDURE; 
-----------------------------------------------------------------------------------------------------------------------------------------
А вазелин еще надо заслужить.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
20.11.2009, 10:50
    #36321694
Kozhina Lidia
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Генератор случайных чисел.
Благодарю!
...
Рейтинг: 0 / 0
Форумы / Informix [игнор отключен] [закрыт для гостей] / Генератор случайных чисел. / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]