powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Informix [игнор отключен] [закрыт для гостей] / Генератор случайных чисел.
7 сообщений из 7, страница 1 из 1
Генератор случайных чисел.
    #34583443
skill
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Каким образом можно получить случайное число?
Есть ли в Informix встроенная функция?
...
Рейтинг: 0 / 0
Генератор случайных чисел.
    #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
Генератор случайных чисел.
    #34586507
skill
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо, помогло.
...
Рейтинг: 0 / 0
Генератор случайных чисел.
    #34588599
Leonid Vorontsov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> Copyright (c) Leonid Vorontsov
Спасибо, конечно... Но это не я придумал, сам подсмотрел где-то...
...
Рейтинг: 0 / 0
Генератор случайных чисел.
    #34588637
vasilis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid Vorontsov> Copyright (c) Leonid Vorontsov
Спасибо, конечно... Но это не я придумал, сам подсмотрел где-то...
Да уж, в Гугле свыше 500 ссылок... :)
Тем не менее, процедуру для Информикс, наверное, первым написал ? :)
...
Рейтинг: 0 / 0
Генератор случайных чисел.
    #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
Период между сообщениями больше года.
Генератор случайных чисел.
    #36321694
Kozhina Lidia
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Благодарю!
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Informix [игнор отключен] [закрыт для гостей] / Генератор случайных чисел.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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