/* naurng.h : definitions for using Don Knuth's random number generator.
This version uses the attribute TLS_ATTR from nauty . h .
To use it :
1 . Call ran_init ( seed ) with any long seed . ( Optional ,
but you will always get the same sequence otherwise . )
2 . Use NEXTRAN to get the next number ( 0 . . 2 ^ 30 - 1 ) .
Alternatively , use KRAN ( k ) to get a random number 0 . . k - 1 .
For large k , KRAN ( k ) is not quite uniform . In that case
use GETKRAN ( k , var ) to set the variable var to a better
random number 0 . . k - 1 .
*/
#ifndef NAURNG_H
#include "naututil.h"
#ifdef __cplusplus
extern "C" {
#endif
extern void ran_init(long seed);
extern long ran_init_time(long extra);
extern long ran_nextran(void );
#ifdef __cplusplus
}
#endif
#define MAXRAN (0 x3fffffffL) /* Values are 0..MAXRAN */
#define NEXTRAN (ran_nextran())
#define KRAN(k) (NEXTRAN%(k))
#define RANREAL ((NEXTRAN+0 .5 )/(MAXRAN+1 .0 )) /* Uniform (0,1) */
#define MAXSAFE(k) (((MAXRAN+1 )/(k))*(k))
#define GETKRAN(k,var) {long __getkran; \
do {__getkran = NEXTRAN;} while (__getkran >= MAXSAFE(k)); \
var = __getkran % (k);}
#define INITRANBYTIME ran_init_time(0 )
#define NAURNG_H
#endif
Messung V0.5 in Prozent C=93 H=70 G=82
¤ Dauer der Verarbeitung: 0.12 Sekunden
(vorverarbeitet am 2026-06-28)
¤
*© Formatika GbR, Deutschland