C++ Lab代写,CSSE2310代写,CSSE7231代写,留学C++作业代写
Introduction C++ Lab代写,留学C++作业代写
The goal of this assignment is to ensure you have gained familiarity and skills with both the C programming language and using a debugger (such as gdb(1)) to examine various characteristics of running programs. These will be essential skills in later assignments for this course. For this assignment you will be given an executable program (the “bomb”) which you have to “defuse” by entering the correct defusing phrases into the program for each of the 10 bomb phases.
Student conduct
This is an individual assignment. You should work on defusing your own bomb by yourself. You should feel free to discuss aspects of C programming and the use of debuggers with your fellow students, but you shouldn’t actively help (or seek help from) anyone with the defusing of particular phases. Do not share your approaches to solving the bomb phases - even after the assignment deadline (as extensions may be given to other students).
You should note that each student will receive a different bomb and the strings that defuse your bomb will be different to the strings that defuse another student’s bomb.
In short - don’t risk it! If you’re having trouble, seek help early from a member of the teaching staff. Don’t be tempted to cheat. You should read and understand the statements on student misconduct in the course profile and on the school website: https://www.itee.uq.edu.au/itee-student-misconduct-including-plagiarism
Obtaining the “Bomb”
Whilst logged in to moss.labs.eait.uq.edu.au, you should type the following command:
getbomb
This will create a subdirectory within your current directory named csse2310a2 and place the bomb files into that directory. The files will include an executable called bomb and a number of source files (.h and .c files). Your bomb (executable and source) will be different to the bombs for all other students. You will not receive all of the source files – just some of them. There is enough information contained within the bomb executable and the supplied source files in order for you to successfully defuse all phases (although some of them are more difficult than others). You should note that some of the bomb’s modules have been compiled with debugging support (-g flag to gcc) and some haven’t.
Running the “Bomb”
The bomb program will only run on moss.labs.eait.uq.edu.au and you are the only user who can run your bomb program. Any attempt to run the program on another host or to run another user’s bomb will cause the bomb to exit immediately. Whilst in your csse2310a2 directory, you can execute the bomb by typing
./bomb
You may not want to do this until you are ready to try defusing the bomb. When you start the bomb program, it will print out details of any phases you have already defused and it will print your current mark (out of 50) and the maximum mark you can obtain based on your attempts to date.
The bomb will then prompt you to enter the number of the phase to defuse next, followed by the string that you believe defuses that phase (or a test string). You will be prompted for confirmation before that string is tested. If you confirm your attempt and the string is incorrect then the bomb will “explode” and exit. If the string is correct, then that phase is defused and you will not be able to solve it again. You will lose marks for every time the bomb “explodes”.
You should note that the bomb is booby trapped. You are warned against modifying the internal data structures of the bomb – you never know what might happen and any loss of marks you incur will not be reversed.
