FIU Manipulate Bits in A Number Entered by User Using the Binary Representation of The Number Project
Description
Write a C program to run on ocelot which will manipulate bits in a number entered by the user using the binary representation of the number. The user should input the original integer value between 1 and 30000 inclusive using a scanf. Use an unsigned integer type. Output is to the screen. You must use only bitwise operators for this program. You can shift bits and or use the logical bitwise operators.
For this assignment give the user directions asking them to enter the beginning integer. Then ask the user which bit to manipulate. That can be a number between 0 and 31 each referring to the values 20 to 231. Then ask the user if they want to set or clear the bit. Use an s or a c to represent set or clear. Output the new decimal number. Then ask the user if they want to do it again. Use y or n to get the answer. Allow the user to keep doing the operations on the previous result until they enter n. Be sure to validate all user input so the program cannot be crashed.
You do not need to use getopt for this program since there are no command line argument
Code should be nicely indented and commented.
Create a simple Makefile to compile your program into an executable called bitop.
- If the user enters a 1 as the initial value and a 0 for the bit to clear the result would be 0.
- If the user enters a 2 for the bit to set next the result would be 4.
- If the user enters a 1 for the bit to set next the result would be 6.
- If the user enters a 1 for the bit to clear next the result would be 4.
- If the user enters a 1 for the bit to clear next the result would be 4.
Output should be easy to read. Do not include any extra output.
Test the program using the previous commands.
Take a screenshot of the screen showing the output.
Submit your source file, the screenshot and your Makefile in one zip file called FirstnameLastnameL3.zip to the assignment Submission Link in Canvas.
If the program does not compile and do something useful when it runs it will not earn any credit.
Have a similar assignment? "Place an order for your assignment and have exceptional work written by our team of experts, guaranteeing you A results."