If you are a student completing this executable examination as part of a class
at Allegheny College, you will need to modify the source code according to the
instructions inside of the six Python source code files in the source/
directory. If you have questions about this examination, please see the course
instructor during the examination time period. You must read all of the
instructions in this file before starting the executable examination. You must
also abide by all of the instructions provided inside of this file when you are
taking the executable examination.
Re-type the sentence "I adhered to the Allegheny College Honor Code while completing this examination."
TODO: You must retype the sentence here.
IMPORTANT: If you do not type the required sentence then the course instructor will not know that you adhered to the Allegheny College Honor Code while completing the executable examination.
- Examination Released: 9:00 AM at the start of the final examination session
- Examination Due: 12:00 noon at the end of the examination session
Please note that your access to the GitHub repository containing the executable examination will be disabled after the due date.
- You must adhere to the Honor Code throughout your completion of the examination
- You must answer all of the questions in the examination using your own source code and documentation
- You must use your laptop computer and the Python development tools installed on your laptop
- You may use any software development tools that are available to you through your laptop
- You may use any automated code and/or documentation generation tools to which you have access
- You must cite the source of any program code or documentation generated by any software tool
- You must cite any references that you consult to aid you in completing this examination
- You may not discuss any aspect of the examination with anyone except the course instructor
- You may not modify any part of the provided source code with comments that prohibit modification
- You may not modify any part of the provided
gatorgrade.yml
file in the root of this repository
IMPORTANT: All students in this course are obligated to adhere to the Allegheny College Honor Code throughout the completion of this examination. If the instructor detects that a student has committed a likely violation of the Allegheny College Honor Code, then he will file a report with the Dean of Students Office and furnish all details of the likely violation. Please make sure that you review the Allegheny College Honor Code before you start to take this examination.
- The examination is out of a total of 100 percent, with an automatically reported percentage
- You must provide answers to all these questions by typing in the six Python source code files
- The final version of each Python source code file must be in your GitHub repository by the due date
- You may run each of the six Python programs on your laptop by using the
python
command - You may run an automated assessment of your Python source code by using the
gatorgrade
tool - Running the automated assessment on your laptop assumes the existence of Python 3.11 programming tools
- The score for your examination is automatically reported when a build takes place in GitHub Actions
- Unless you already made special arrangements with the instructor, no late work will be accepted
- The course instructor reserves the right to modify the grade reported through GitHub Actions
After cloning this repository to your computer, please recall these details about the examination:
- The instructions and source code for the seven questions on the examination are in these files:
question_one.py
question_two.py
question_three.py
question_four.py
question_five.py
question_six.py
- For each file there are three sub-questions, denoted as
a
,b
, andc
in the provided Python source code. - Following the instructions for each sub-question, you should provide the requested function(s) so as to ensure that they meet the specification. When you read the commented source code for each sub-question you will see examples of what output the requested function will produce when it is provided with the given input(s).
- Generally, the instructions for each sub-question will invite you to write, repair, and/or reorder the requested function's source code.
- You can run the chosen question by typing one of the following commands from the root of this GitHub repository:
python source/question_one.py
python source/question_two.py
python source/question_three.py
python source/question_four.py
python source/question_five.py
python source/question_six.py
- When you run a program in the terminal window using one of the aforementioned commands, each of the question's sub-questions will produce a single line of output. Since there are always three sub-questions, this means that running one of the aforementioned Python programs will always produce three lines of output.
- Using the comments in the source code as a guide, you can confirm that the programs are producing the expected output.
- You can type the command
gatorgrade
from the root of your GitHub repository to run all of the automated checks. - Please note that
gatorgrade
will install other helper programs (e.g.,ruff
andmypy
) to confirm that your program has all of the required components for an engineered program such as documentation and type annotations. - After committing and pushing your code, you can review the output from running GatorGrader in GitHub Actions. If one of the functions is not producing the correct output and/or one of the GatorGrader checks is not passing correctly, you may make an unlimited number of re-attempts during the time designated for completing this executable examination.
- Please completely delete the
TODO
markers and their labels from all of the provided source code. This means that instead of only deleting theTODO
marker from the code you should instead delete theTODO
marker and the prompt and then add your own comments to demonstrate that you understand all of the source code in this examination.