Example
/* RAND.C: This program seeds the random-number generator
* with the time, then displays 10 random integers.
*/
#include <stdlib.h>
#include <stdio.h>
#include <time.h>
void main( void )
{
int i;
/* Seed the random-number generator with current time so that
* the numbers will be different every time we run.
*/
srand( (unsigned)time( NULL ) );
/* Display 10 numbers. */
for( i = 0; i < 10;i++ )
printf( " %6d\n", rand() );
}
Output
6929
8026
21987
30734
20587
6699
22034
25051
7988
10104
random
В паскале есть функция random - генерация случайного числа. Есть ли подобное в Си, или самому алгоритм сочинять?? Если есть, то подскажите, пожалуйста, в какой библиотеке ее искать.
Цитата:
Originally posted by kupyxa
В паскале есть функция random - генерация случайного числа. Есть ли подобное в Си, или самому алгоритм сочинять?? Если есть, то подскажите, пожалуйста, в какой библиотеке ее искать.
В паскале есть функция random - генерация случайного числа. Есть ли подобное в Си, или самому алгоритм сочинять?? Если есть, то подскажите, пожалуйста, в какой библиотеке ее искать.
В <stdlib.h> есть int rand( void );
Код:
Код:
unsigned long R=0;
#define Random(Max) ((R=(R*9301L+49267L)%233280L)%(long)Max)
#define Random(Max) ((R=(R*9301L+49267L)%233280L)%(long)Max)
Вот тебе рандом.=) Usage: Random(<верхняя граница>)
Спасибо. Еще в паскале есть функция randomize, чтобы каждый раз при запуске программы, генерировались новые числа. Как насчет этого? А то каждый раз получаю одни и те же :(((
Цитата:
Originally posted by kupyxa
Спасибо. Еще в паскале есть функция randomize, чтобы каждый раз при запуске программы, генерировались новые числа. Как насчет этого? А то каждый раз получаю одни и те же :(((
Спасибо. Еще в паскале есть функция randomize, чтобы каждый раз при запуске программы, генерировались новые числа. Как насчет этого? А то каждый раз получаю одни и те же :(((
Смысл randomize() - в установке начального значения R.
Код:
#include<time.h>
R=time(NULL)%<что угодно>;
R=time(NULL)%<что угодно>;
Цитата:
Originally posted by lord Kelvin
Смысл randomize() - в установке начального значения R.
Смысл randomize() - в установке начального значения R.
Код:
#include<time.h>
R=time(NULL)%<что угодно>;
R=time(NULL)%<что угодно>;
В (Visual)C++ ф-ей randomize служит srand(...). У HEvgA был пример использования:
...
srand((unsigned)time(NULL));
...