The puzzle for this month’s Exercise was to create and fill a 20-by-20 character grid with 20 asterisks placed at random positions, no two asterisks in the same spot. I hope you found this Exercise interesting, but not too easy.
Continue reading
Author Archives: dgookin
Made-Up File Names
Many moons ago, I coded a file-renaming utility. It allows me to shuffle chapter names for documents used in my books, renaming a whole batch at once without overwriting existing filenames. It couldn’t happen if I didn’t know about the mktemp() function.
Continue reading
Fill My Grid
I’m fascinated by grids. Consider the chessboard, which is a grid. Or think about the most basic game grid, a 3-by-3 array for a game of tic-tac-toe. Programming a grid is a common thing, so your best hope is that this month’s Exercise is yet another super cinchy silly grid program.
Continue reading
Factors
Factor is a scary word, but not really a mathematical monstrosity. If you have an integer value, its factors are the other integers that can divide evenly into the original value. The computer can deftly discover these values, providing you give it the proper C code to munch upon.
Continue reading
A Weird Thing I’ve Never Seen Before
While browsing some sample code recently, I encountered the following C language expression:
x = &(*ptr);
Both variables x
and ptr
are pointers. So what the heck is going on?
Continue reading
Looping with time_t values
In C, the time_t variable type is associated with the Unix epoch, or the number of seconds ticked since midnight, January 1, 1970. It’s typically a long int value, though as a typedef declaration, its specific data type could change in the future. Still, as a long int, you can play with it like other integers in your code.
Continue reading
Time After Time
While writing some code recently, it became necessary to translate timestamp strings into time_t or epoch time values. This value is the number of seconds that have ticked since midnight, January 1, 1970. time_t values are stored long integers (generally), but I needed a utility to translate them into time strings. It turned out, such a tool wasn’t that difficult to create.
Continue reading
The Leap Year Function – Solution
I’ve tackled the leap year program on this blog before. My Month Program series addressed the issue specifically. That code offers the february() function, which returns 28 or 29, depending on whether the current year is the leap year.
Continue reading
Multiple Expressions in a for Condition
Every C programmer has screwed up a for loop’s statement. Having three arguments in one set of parentheses is just begging for trouble. That’s a lot of yard waste, but there’s a reason for all the detritus.
Continue reading
The Leap Year Function
My brain’s algorithm for determining whether the current year is a leap year is based on US Presidential elections. They always happen on a leap year. Or do they?
Continue reading