Files

32 lines
773 B
C

//
// Created by dukantic on 29/09/2026.
//
#ifndef SIMULATIONRABBIT_RABBIT_HOLE_H
#define SIMULATIONRABBIT_RABBIT_HOLE_H
#include <stdint.h>
#define N_MATURE (16)
#define N_KITTEN (8)
#define CLAMP(x,y) (x >= y? y :x)
#define CLAMP_BTW(a, lo, hi) ((a) < (lo) ? (lo) : ((a) > (hi) ? (hi) : (a)))
typedef struct rabbit_hole_s {
__uint128_t male_mature[N_MATURE];
__uint128_t female_mature[N_MATURE];
__uint128_t female_litter;
__uint128_t kitten_male[N_KITTEN];
__uint128_t kitten_female[N_KITTEN];
} rabbit_hole_t;
void init_rabbits(rabbit_hole_t *rabbits);
char process_month(rabbit_hole_t *rabbits,__uint128_t *month);
void csv_header();
char print_rabbits(rabbit_hole_t *rabbits, __uint128_t *month);
#endif //SIMULATIONRABBIT_RABBIT_HOLE_H