Пример #1
0
static int rpois_rng (lua_State *L) {
  nl_RNG *r = getrng(L);
  lua_Number mu = luaL_checknumber(L, 1);
  checkneg(L, mu);
  setdeviate(integer, ignpoi(r, mu), 2);
  return 1;
}
Пример #2
0
static int rnbinom_rng (lua_State *L) {
  nl_RNG *r = getrng(L);
  int n = luaL_checkinteger(L, 1);
  lua_Number p = luaL_checknumber(L, 2);
  checkneg(L, n);
  if (p <= 0 || p >= 1)
    luaL_error(L, "parameter is out of range: %f", p);
  setdeviate(integer, ignnbn(r, n, p), 3);
  return 1;
}
Пример #3
0
static int rchisq_rng (lua_State *L) {
  nl_RNG *r = getrng(L);
  lua_Number df = luaL_checknumber(L, 1);
  lua_Number xnonc = luaL_optnumber(L, 2, 0);
  checknp(L, df);
  checkneg(L, xnonc);
  setdeviate(number,
      (xnonc == 0) ? genchi(r, df) : gennch(r, df, xnonc), 3);
  return 1;
}
Пример #4
0
static int rf_rng (lua_State *L) {
  nl_RNG *r = getrng(L);
  lua_Number dfn = luaL_checknumber(L, 1);
  lua_Number dfd = luaL_checknumber(L, 2);
  lua_Number xnc = luaL_optnumber(L, 3, 0);
  checknp(L, dfn);
  checknp(L, dfd);
  checkneg(L, xnc);
  setdeviate(number,
      (xnc == 0) ? genf(r, dfn, dfd) : gennf(r, dfn, dfd, xnc), 4);
  return 1;
}
Пример #5
0
int	calculnumber(int i, int nbr, char *str)
{
    int	neg;

    neg = 0;
    while (str[i] >= 48 && str[i] <= 57)
    {
        neg = checkneg(str, neg);
        nbr = nbr * 10;
        nbr = nbr + (str[i] - 48);
        i++;
    }
    return (nbr * neg);
}