Decimal to binary
#include <stdio.h> int main (int argc, char *argv[]) { unsigned long number_to_test = 42; unsigned long mask; printf("\nFirst: "); for (mask = 1 << 31; mask != 0; mask >>= 1) printf("%d " , (number_to_test & mask)); printf("\nSecond: "); for (mask = 1 << 31; mask != 0; mask >>= 1) printf("%d", !(number_to_test & mask)); printf("\nThird: "); for (mask = 1 << 31; mask != 0; mask >>= 1) { putchar('0' + !!(number_to_test & mask)); // printf("%d", !!(number_to_test & mask)); } printf("\nFourth: "); for (mask = 1 << 31; mask != 0; mask >>= 1) { if (number_to_test & mask) putchar('1'); else putchar('0'); } printf("\nFifth: "); for (mask = 1 << 31; mask != 0; mask >>= 1) putchar( (number_to_test & mask) ? 'Y' : 'N' ); puts("\n\nTesting boolean logic not"); printf("\n%d", ! 4); printf("\n%d", ! 7); printf("\n%d", ! 0); puts("\n\nTesting boolean logic not not"); printf("\n%d", ! ! 4); printf("\n%d", ! ! 7); printf("\n%d", ! ! 0); return 0; }
Output
First: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 32 0 8 0 2 0 Second: 11111111111111111111111111010101 Third: 00000000000000000000000000101010 Fourth: 00000000000000000000000000101010 Fifth: NNNNNNNNNNNNNNNNNNNNNNNNNNYNYNYN Testing boolean logic not 0 0 1 Testing boolean logic not not 1 1 0
No comments:
Post a Comment