aboutsummaryrefslogtreecommitdiffstats
path: root/isOddBetter.c
diff options
context:
space:
mode:
Diffstat (limited to 'isOddBetter.c')
-rw-r--r--isOddBetter.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/isOddBetter.c b/isOddBetter.c
new file mode 100644
index 0000000..7788b4a
--- /dev/null
+++ b/isOddBetter.c
@@ -0,0 +1,20 @@
+#include<stdio.h>
+
+_Bool isOdd( int );
+
+int main ( int argc, char *argv[] ) {
+ if ( argc == 2 ) {
+ printf("%s\n", isOdd( atoi( argv[1] ) ) ? "true" : "false" );
+ return 0;
+ } else {
+ printf("Usage: '%s <number>'\n", argv[0]);
+ return 1;
+ }
+}
+
+_Bool isOdd( int n ) {
+ // Bitwise and with LSB to check if number is odd or even.
+ // LSB == 0 => even
+ // LSB == 1 => odd
+ return n & 1;
+}