Difference between revisions of "XMMS"
Jump to navigation
Jump to search
(→mm.c: source code highlighting) |
|||
(2 intermediate revisions by the same user not shown) | |||
Line 21: | Line 21: | ||
int main(int argc, char **argv) | int main(int argc, char **argv) | ||
{ | { | ||
− | + | int oz, mm; | |
− | + | if (argc != 2) | |
− | + | { | |
+ | usage(argv[0]); | ||
+ | } | ||
− | + | oz = atoi(argv[1]); | |
− | + | /* empirical evidence shows 500 M&Ms per pound */ | |
− | + | mm = 500 * (oz / 16); | |
− | + | /* catch the remaining oz */ | |
− | + | mm += (31 * (oz % 16)); | |
− | + | /* technically it is 31.25 M&Ms per ounce */ | |
− | + | /* so add 1 M&M for every 4 ounces */ | |
− | + | mm += ((oz % 16) / 4); | |
− | + | printf("There are approximately %d M&Ms in %d ounces.\n", mm, oz); | |
− | + | return 0; | |
} | } | ||
void usage(char *prog) | void usage(char *prog) | ||
{ | { | ||
− | + | fprintf(stderr, "Usage: %s oz\n", prog); | |
− | + | fprintf(stderr, " Calculate the number of M&Ms in oz ounces.\n"); | |
− | + | exit(1); | |
} | } | ||
</source> | </source> |
Latest revision as of 22:35, 28 September 2011
M&M's are small candy coated milk chocolate delights that come in a rainbow of colors and several variations. The XINU Lab maintains a supply of these colorful treats so that members of the lab can make it through the hard days and long nights of XINU development.
Number of M&Ms in the jug
After filling the M&M jug about halfway full, I wondered about how many M&Ms it held. A little investigation and I developed this program to provide the number of M&Ms given <math>n</math> ounces.
mm.c
Perhaps someone should port this to work with the XINU code base.
#include <stdio.h>
#include <stdlib.h>
void usage(char *prog);
int main(int argc, char **argv)
{
int oz, mm;
if (argc != 2)
{
usage(argv[0]);
}
oz = atoi(argv[1]);
/* empirical evidence shows 500 M&Ms per pound */
mm = 500 * (oz / 16);
/* catch the remaining oz */
mm += (31 * (oz % 16));
/* technically it is 31.25 M&Ms per ounce */
/* so add 1 M&M for every 4 ounces */
mm += ((oz % 16) / 4);
printf("There are approximately %d M&Ms in %d ounces.\n", mm, oz);
return 0;
}
void usage(char *prog)
{
fprintf(stderr, "Usage: %s oz\n", prog);
fprintf(stderr, " Calculate the number of M&Ms in oz ounces.\n");
exit(1);
}