diff --git a/test.c b/test.c index 0725fec..0118cc8 100644 --- a/test.c +++ b/test.c @@ -1,11 +1,35 @@ #include +#include #define UNUSED(x) ((void)(x)) +int sum(int n) +{ + return ((n + 1) * n) / 2; +} + +void usage(const char* app_name, const char* err_string) +{ + if(err_string != NULL) { + fprintf(stderr, "%s\n", err_string); + } + fprintf(stderr, "Usage: %s \n", app_name); + exit(1); +} + int main(int argc, char* argv[]) { - UNUSED(argc); - UNUSED(argv); - printf("Hallo Welt!\n"); + if(argc != 2) { + usage(argv[0], NULL); + return 1; + } + + int n = atoi(argv[1]); + if(n <= 0) { + usage(argv[1], "n must be a natural number."); + } + + printf("Summe der nat. Zahlen von 1 - %i: %i\n", n, sum(n)); + return 0; }