From b09eecbec7e7cca1c133ba5923f55713cf7a78cf Mon Sep 17 00:00:00 2001 From: Calvin Morrison Date: Fri, 17 Jan 2014 14:28:49 -0500 Subject: update makefile and make a src directory --- Makefile | 18 +++++++++-------- melting_range.c | 58 ----------------------------------------------------- src/melting_range.c | 58 +++++++++++++++++++++++++++++++++++++++++++++++++++++ src/strstream.c | 52 +++++++++++++++++++++++++++++++++++++++++++++++ src/strstreamone.c | 43 +++++++++++++++++++++++++++++++++++++++ strstream.c | 52 ----------------------------------------------- strstreamone.c | 43 --------------------------------------- 7 files changed, 163 insertions(+), 161 deletions(-) delete mode 100644 melting_range.c create mode 100644 src/melting_range.c create mode 100644 src/strstream.c create mode 100644 src/strstreamone.c delete mode 100644 strstream.c delete mode 100644 strstreamone.c diff --git a/Makefile b/Makefile index 0a9e43f..d5e673a 100644 --- a/Makefile +++ b/Makefile @@ -1,15 +1,17 @@ VERSION=\"v0.0.1\" CC = gcc CFLAGS = -O3 -s -mtune=native -Wall -DVERSION=$(VERSION) -Wextra +SRC = src +BIN = bin -all: strstream melting_range strstreamone +all: $(BIN)/strstream $(BIN)/melting_range $(BIN)/strstreamone -strstream: strstream.c - $(CC) strstream.c -o strstream $(CLIBS) $(CFLAGS) -strstreamone: strstreamone.c - $(CC) strstreamone.c -o strstreamone $(CLIBS) $(CFLAGS) -melting_range: melting_range.c - $(CC) melting_range.c -o melting_range $(CLIBS) $(CFLAGS) +$(BIN)/strstream: $(SRC)/strstream.c + $(CC) $(SRC)/strstream.c -o $(BIN)/strstream $(CLIBS) $(CFLAGS) +$(BIN)/strstreamone: $(SRC)/strstreamone.c + $(CC) $(SRC)/strstreamone.c -o $(BIN)/strstreamone $(CLIBS) $(CFLAGS) +$(BIN)/melting_range: $(SRC)/melting_range.c + $(CC) $(SRC)/melting_range.c -o $(BIN)/melting_range $(CLIBS) $(CFLAGS) clean: - rm -vf strstream melting_range + rm -vf $(BIN)/strstream $(BIN)/melting_range $(BIN)/strstreamone diff --git a/melting_range.c b/melting_range.c deleted file mode 100644 index 2c89195..0000000 --- a/melting_range.c +++ /dev/null @@ -1,58 +0,0 @@ -#include -#include -#include -#include - -float melting_temperature(char *mer) { - - float a = 0; - float c = 0; - float g = 0; - float t = 0; - int i = 0; - - for(i = 0; i < strlen(mer); i++) { - switch(mer[i]) { - case 'A': - a++; - break; - case 'C': - c++; - break; - case 'G': - g++; - break; - case 'T': - t++; - break; - default: - break; - } - } - - if(strlen(mer) < 13) - return ((a+t) * 2) + ((c+g) * 4); - else - return 64.9 + 41.0*(g+c-16.4)/(a+t+g+c); -} - -int main(int argc, char **argv){ - - if(argc < 3) { - printf("please supply the min and max as stdargs"); - exit(EXIT_FAILURE); - } - float min = atof(argv[1]); - float max = atof(argv[2]); - - char mer[24] = { 0 }; - int count = 0; - - while(fscanf(stdin, "%s\t%d\n", &mer, &count) == 2) { - float temp = melting_temperature(mer); - if( (temp > min) && (temp < max) ) - printf("%s\t%d\n", mer, count); - } - - exit(EXIT_SUCCESS); -} diff --git a/src/melting_range.c b/src/melting_range.c new file mode 100644 index 0000000..2c89195 --- /dev/null +++ b/src/melting_range.c @@ -0,0 +1,58 @@ +#include +#include +#include +#include + +float melting_temperature(char *mer) { + + float a = 0; + float c = 0; + float g = 0; + float t = 0; + int i = 0; + + for(i = 0; i < strlen(mer); i++) { + switch(mer[i]) { + case 'A': + a++; + break; + case 'C': + c++; + break; + case 'G': + g++; + break; + case 'T': + t++; + break; + default: + break; + } + } + + if(strlen(mer) < 13) + return ((a+t) * 2) + ((c+g) * 4); + else + return 64.9 + 41.0*(g+c-16.4)/(a+t+g+c); +} + +int main(int argc, char **argv){ + + if(argc < 3) { + printf("please supply the min and max as stdargs"); + exit(EXIT_FAILURE); + } + float min = atof(argv[1]); + float max = atof(argv[2]); + + char mer[24] = { 0 }; + int count = 0; + + while(fscanf(stdin, "%s\t%d\n", &mer, &count) == 2) { + float temp = melting_temperature(mer); + if( (temp > min) && (temp < max) ) + printf("%s\t%d\n", mer, count); + } + + exit(EXIT_SUCCESS); +} diff --git a/src/strstream.c b/src/strstream.c new file mode 100644 index 0000000..f4a296e --- /dev/null +++ b/src/strstream.c @@ -0,0 +1,52 @@ +// find string in +#include +#include +#include +#include + +int main(int argc, char **argv){ + + char buffer[BUFSIZ] = { 0 }; + char *buf, *start; + ssize_t len = 0; + + int save_size = 0; + int cpy = 0; + + unsigned long long pos = 0; + unsigned long long cpy_size = 0; + + int i = 0; + + // get max argument length + for(i = 1; i < argc; i++) { + int len = strlen(argv[i]); + if(len > save_size) + save_size = len; + } + + cpy = save_size - 1; + cpy_size = BUFSIZ - cpy; + + buf = buffer; + start = buf + cpy; + + // copy our first cpy length into the first part of our buffer + len = fread(buffer, 1, cpy, stdin); + if(len == 0) + exit(EXIT_FAILURE); + + // read into "start" (buf + cpy) from stdin + while((len = fread(start, 1, cpy_size, stdin)) != 0) { + for(i = 1; i < argc; i++) { + char *p = buffer; + while((p = strstr(p, argv[i])) != NULL) { + printf("%d %llu\n", i - 1, pos + (p - buffer)); + p++; + } + } + memcpy(buffer, buffer + len, cpy); + pos = pos + len; + } + return 0; +} diff --git a/src/strstreamone.c b/src/strstreamone.c new file mode 100644 index 0000000..68da309 --- /dev/null +++ b/src/strstreamone.c @@ -0,0 +1,43 @@ +// find string in +#include +#include +#include +#include + +int main(int argc, char **argv){ + + char buffer[BUFSIZ] = { 0 }; + char *buf, *start; + ssize_t len = 0; + + int cpy = 0; + + unsigned long long pos = 0; + unsigned long long cpy_size = 0; + + // get max argument length + int save_size = strlen(argv[1]); + + cpy = save_size - 1; + cpy_size = BUFSIZ - cpy; + + buf = buffer; + start = buf + cpy; + + // copy our first cpy length into the first part of our buffer + len = fread(buffer, 1, cpy, stdin); + if(len == 0) + exit(EXIT_FAILURE); + + // read into "start" (buf + cpy) from stdin + while((len = fread(start, 1, cpy_size, stdin)) != 0) { + char *p = buffer; + while((p = strstr(p, argv[1])) != NULL) { + printf("%llu\n", pos + (p - buffer)); + p++; + } + memcpy(buffer, buffer + len, cpy); + pos = pos + len; + } + return 0; +} diff --git a/strstream.c b/strstream.c deleted file mode 100644 index f4a296e..0000000 --- a/strstream.c +++ /dev/null @@ -1,52 +0,0 @@ -// find string in -#include -#include -#include -#include - -int main(int argc, char **argv){ - - char buffer[BUFSIZ] = { 0 }; - char *buf, *start; - ssize_t len = 0; - - int save_size = 0; - int cpy = 0; - - unsigned long long pos = 0; - unsigned long long cpy_size = 0; - - int i = 0; - - // get max argument length - for(i = 1; i < argc; i++) { - int len = strlen(argv[i]); - if(len > save_size) - save_size = len; - } - - cpy = save_size - 1; - cpy_size = BUFSIZ - cpy; - - buf = buffer; - start = buf + cpy; - - // copy our first cpy length into the first part of our buffer - len = fread(buffer, 1, cpy, stdin); - if(len == 0) - exit(EXIT_FAILURE); - - // read into "start" (buf + cpy) from stdin - while((len = fread(start, 1, cpy_size, stdin)) != 0) { - for(i = 1; i < argc; i++) { - char *p = buffer; - while((p = strstr(p, argv[i])) != NULL) { - printf("%d %llu\n", i - 1, pos + (p - buffer)); - p++; - } - } - memcpy(buffer, buffer + len, cpy); - pos = pos + len; - } - return 0; -} diff --git a/strstreamone.c b/strstreamone.c deleted file mode 100644 index 68da309..0000000 --- a/strstreamone.c +++ /dev/null @@ -1,43 +0,0 @@ -// find string in -#include -#include -#include -#include - -int main(int argc, char **argv){ - - char buffer[BUFSIZ] = { 0 }; - char *buf, *start; - ssize_t len = 0; - - int cpy = 0; - - unsigned long long pos = 0; - unsigned long long cpy_size = 0; - - // get max argument length - int save_size = strlen(argv[1]); - - cpy = save_size - 1; - cpy_size = BUFSIZ - cpy; - - buf = buffer; - start = buf + cpy; - - // copy our first cpy length into the first part of our buffer - len = fread(buffer, 1, cpy, stdin); - if(len == 0) - exit(EXIT_FAILURE); - - // read into "start" (buf + cpy) from stdin - while((len = fread(start, 1, cpy_size, stdin)) != 0) { - char *p = buffer; - while((p = strstr(p, argv[1])) != NULL) { - printf("%llu\n", pos + (p - buffer)); - p++; - } - memcpy(buffer, buffer + len, cpy); - pos = pos + len; - } - return 0; -} -- cgit v1.2.3