From 9f21ca51fbdf7267e70f0352d92fbe2408b03938 Mon Sep 17 00:00:00 2001 From: icaema Date: Fri, 1 Dec 2023 18:17:14 -0500 Subject: [PATCH] create template for c stdin line problems --- day-01/Makefile | 6 ++++-- day-01/bin/part02 | Bin 0 -> 15936 bytes template-c-stdin-lines/Makefile | 25 ++++++++++++++++++++++++ template-c-stdin-lines/data/p01data.txt | 0 template-c-stdin-lines/data/p01test.txt | 0 template-c-stdin-lines/data/p02data.txt | 0 template-c-stdin-lines/data/p02test.txt | 0 template-c-stdin-lines/src/part01.c | 25 ++++++++++++++++++++++++ template-c-stdin-lines/src/part02.c | 25 ++++++++++++++++++++++++ 9 files changed, 79 insertions(+), 2 deletions(-) create mode 100755 day-01/bin/part02 create mode 100644 template-c-stdin-lines/Makefile create mode 100644 template-c-stdin-lines/data/p01data.txt create mode 100644 template-c-stdin-lines/data/p01test.txt create mode 100644 template-c-stdin-lines/data/p02data.txt create mode 100644 template-c-stdin-lines/data/p02test.txt create mode 100644 template-c-stdin-lines/src/part01.c create mode 100644 template-c-stdin-lines/src/part02.c diff --git a/day-01/Makefile b/day-01/Makefile index 6ca3b33..d03b7fc 100644 --- a/day-01/Makefile +++ b/day-01/Makefile @@ -1,6 +1,8 @@ CC=gcc CFLAGS=-Wall +build: bin/part01 bin/part02 + run1: bin/part01 cat data/p01data.txt | bin/part01 @@ -13,10 +15,10 @@ test1: bin/part01 test2: bin/part02 cat data/p02test.txt | bin/part02 -bin/part01: +bin/part01: clean $(CC) src/part01.c -o bin/part01 -bin/part02: +bin/part02: clean $(CC) src/part02.c -o bin/part02 .PHONY: clean diff --git a/day-01/bin/part02 b/day-01/bin/part02 new file mode 100755 index 0000000000000000000000000000000000000000..d3683b7ae8335786e75c2ee7abedd04610cffbca GIT binary patch literal 15936 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 cx<%n64@8Zc3TNTD{hz@|3dF8}}l literal 0 HcmV?d00001 diff --git a/template-c-stdin-lines/Makefile b/template-c-stdin-lines/Makefile new file mode 100644 index 0000000..6ca3b33 --- /dev/null +++ b/template-c-stdin-lines/Makefile @@ -0,0 +1,25 @@ +CC=gcc +CFLAGS=-Wall + +run1: bin/part01 + cat data/p01data.txt | bin/part01 + +run2: bin/part02 + cat data/p02data.txt | bin/part02 + +test1: bin/part01 + cat data/p01test.txt | bin/part01 + +test2: bin/part02 + cat data/p02test.txt | bin/part02 + +bin/part01: + $(CC) src/part01.c -o bin/part01 + +bin/part02: + $(CC) src/part02.c -o bin/part02 + +.PHONY: clean + +clean: + rm -f bin/* diff --git a/template-c-stdin-lines/data/p01data.txt b/template-c-stdin-lines/data/p01data.txt new file mode 100644 index 0000000..e69de29 diff --git a/template-c-stdin-lines/data/p01test.txt b/template-c-stdin-lines/data/p01test.txt new file mode 100644 index 0000000..e69de29 diff --git a/template-c-stdin-lines/data/p02data.txt b/template-c-stdin-lines/data/p02data.txt new file mode 100644 index 0000000..e69de29 diff --git a/template-c-stdin-lines/data/p02test.txt b/template-c-stdin-lines/data/p02test.txt new file mode 100644 index 0000000..e69de29 diff --git a/template-c-stdin-lines/src/part01.c b/template-c-stdin-lines/src/part01.c new file mode 100644 index 0000000..588b32c --- /dev/null +++ b/template-c-stdin-lines/src/part01.c @@ -0,0 +1,25 @@ +#include +#include +#include + +#ifdef DEBUG +#define debug_printf(...) do{ fprintf( stderr, __VA_ARGS__ ); } while( 0 ) +#else +#define debug_printf(...) do{ } while ( 0 ) +#endif + +#define LINE_MAX 90 + +int main(int argc, char *argv[]){ + int linesProcessed = 0; + char line[LINE_MAX]; + + while (fgets(line, LINE_MAX, stdin) != NULL) { + linesProcessed++; + } + + printf("\n Processed %d Lines\n", linesProcessed); + printf("===================================\n"); + printf("Answer: \nXXXX\n"); +} + diff --git a/template-c-stdin-lines/src/part02.c b/template-c-stdin-lines/src/part02.c new file mode 100644 index 0000000..588b32c --- /dev/null +++ b/template-c-stdin-lines/src/part02.c @@ -0,0 +1,25 @@ +#include +#include +#include + +#ifdef DEBUG +#define debug_printf(...) do{ fprintf( stderr, __VA_ARGS__ ); } while( 0 ) +#else +#define debug_printf(...) do{ } while ( 0 ) +#endif + +#define LINE_MAX 90 + +int main(int argc, char *argv[]){ + int linesProcessed = 0; + char line[LINE_MAX]; + + while (fgets(line, LINE_MAX, stdin) != NULL) { + linesProcessed++; + } + + printf("\n Processed %d Lines\n", linesProcessed); + printf("===================================\n"); + printf("Answer: \nXXXX\n"); +} +