initial commit
This commit is contained in:
37
src/fibo/fibo.c
Normal file
37
src/fibo/fibo.c
Normal file
@ -0,0 +1,37 @@
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include "fibo.h"
|
||||
|
||||
|
||||
static int *fibo;
|
||||
static u_int64_t fibo_size;
|
||||
|
||||
|
||||
void fibo_init(int size)
|
||||
{
|
||||
fibo = calloc(size, sizeof(u_int64_t));
|
||||
if (fibo == NULL) {
|
||||
fprintf(stderr, "ERROR: cannot allocate memory\n");
|
||||
exit(1);
|
||||
}
|
||||
fibo_size = size;
|
||||
}
|
||||
|
||||
|
||||
void fibo_compute(void)
|
||||
{
|
||||
fibo[0] = 1;
|
||||
fibo[1] = 1;
|
||||
for (int i = 2; i < fibo_size; i++)
|
||||
fibo[i] = fibo[i-2] + fibo[i-1];
|
||||
}
|
||||
|
||||
|
||||
void fibo_print()
|
||||
{
|
||||
printf("fibo:");
|
||||
for (int i=0; i<fibo_size; i++)
|
||||
printf(" %lu", fibo[i]);
|
||||
printf("\n");
|
||||
}
|
||||
|
5
src/fibo/fibo.h
Normal file
5
src/fibo/fibo.h
Normal file
@ -0,0 +1,5 @@
|
||||
|
||||
void fibo_init(int size);
|
||||
void fibo_compute(void);
|
||||
void fibo_print(void);
|
||||
|
21
src/main.c
Normal file
21
src/main.c
Normal file
@ -0,0 +1,21 @@
|
||||
#include "version_tools.h"
|
||||
#include "fibo.h"
|
||||
|
||||
|
||||
#ifdef FIBO_MAX
|
||||
#define MAIN_FIBO_MAX FIBO_MAX
|
||||
#else
|
||||
#define MAIN_FIBO_MAX 10
|
||||
#endif
|
||||
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
print_version();
|
||||
|
||||
fibo_init(MAIN_FIBO_MAX);
|
||||
fibo_compute();
|
||||
fibo_print();
|
||||
|
||||
return 0;
|
||||
}
|
3
src/version/version.c.in
Normal file
3
src/version/version.c.in
Normal file
@ -0,0 +1,3 @@
|
||||
|
||||
const char* git_sha1 = "@@GIT_SHA1@@";
|
||||
|
4
src/version/version.h
Normal file
4
src/version/version.h
Normal file
@ -0,0 +1,4 @@
|
||||
|
||||
|
||||
extern const char *git_sha1;
|
||||
|
8
src/version/version_tools.c
Normal file
8
src/version/version_tools.c
Normal file
@ -0,0 +1,8 @@
|
||||
#include <stdio.h>
|
||||
#include "version.h"
|
||||
|
||||
|
||||
void print_version(void)
|
||||
{
|
||||
printf("version: %s\n", git_sha1);
|
||||
}
|
3
src/version/version_tools.h
Normal file
3
src/version/version_tools.h
Normal file
@ -0,0 +1,3 @@
|
||||
|
||||
void print_version(void);
|
||||
|
Reference in New Issue
Block a user