/** * Useless stuff. * I was bored and I wanted to know the number of sheets of paper that were * were going to be printed to buy the correct folder. * You can actually change it to fit your needs. With num page you define * the number of slides you are going to put in a single side. I usually use * 8 per side and that's my way. * In the file.txt write all the number of slides for each pdfs and it will * print to a txt file the number of sheets you will be needed. * Enjoy lazy uselessness * * @author Riccardo Sieve */ #include #include #define NUM_PAGE 8 typedef enum {FALSE, TRUE} boolean; boolean is_divisible(int , int ); boolean is_even(int); int main() { int num=0, sum=0; FILE *fin, *fout; if((fin = fopen("file.txt", "r")) == NULL) { fprintf(stderr, "Error in opening the file"); exit(1); } if((fout = fopen("out.txt", "w")) == NULL) { fprintf(stderr, "Error with output file"); exit(2); } while(fscanf(fin, "%d", &num) != EOF) { if(is_divisible(num, NUM_PAGE)) num /= NUM_PAGE; else num /= NUM_PAGE + 1; if(is_even(num)) sum += (num / 2); else sum += (num / 2) + 1; } fprintf(fout, "%d", sum); return 0; } boolean is_divisible(int a, int b) { return (a % b == 0); } boolean is_even(int a) { return is_divisible(a, 2); }