**Computer programmers' joke**
There is a

joke amongst

computer programmers that Deep Thought may have had some

order of operations issues. The following code in the

C programming language defines the

macros SIX as "1 + 5" and NINE as "8 + 1", and then performs the computation "SIX * NINE". It returns the answer "42", because "SIX * NINE" is expanded by the computer to "1 + 5 * 8 + 1", and the multiplication takes precedence over the additions. (This occurs because the

macro expansion is textual, not logical.)

#include <stdio.h>

#define SIX 1 + 5

#define NINE 8 + 1

int main(void)

{

printf( "What you get if you multiply six by nine: %d\n", SIX * NINE );

return 0;

}

Assuming that this is indeed correct, that means that the meaning of life, the universe and everything would be 42.

Another way to evaluate the answer is:

/*

* The Hitch Hiker's Guide to the Galaxy

* The Answer to Life, the Universe, and Everything

* by Otávio Corrêa Cordeiro

* echo -e "otavioarrobageek42pontoorg" | sed 's/arroba/@/g;s/ponto/./g'

*/

#include <stdio.h>

#include <stdlib.h>

#include <math.h>

#define SIX 1+5

#define NINE 8+1

int whatDoYouGetWhenYouMultiplySixByNine(void){

return SIX*NINE;

}

float deep_thought(int _iter){

float _answer = 0.0;

if(_iter >= 1){

_answer = sqrt((whatDoYouGetWhenYouMultiplySixByNine()-1)

* whatDoYouGetWhenYouMultiplySixByNine()

+ deep_thought(--_iter));

}

return _answer;

}

int main(int argc, char **argv){

if (argc != 2){

printf("Try %s <number of hyper-intelligent pan-dimensional creatures>\n", argv[0]);

} else {

printf("Deep Thought said: %f\n", deep_thought(atoi(argv[1])));

}

return 0;

}

## Bookmarks