September 15, 2025
"banana grape banana apple""apple banana banana grape""a,b a,c b,d c,d d,e""a,b,d,e""a,b,7 a,c,3 b,d,2"BeginsWithA problemFindPath is a search problem
HasPath is a decision problemHasPath(s) = "yes" if FindPath(s) returns a non-empty solution path and HasPath(s) = "no" for all other FindPath(s) outputs"yes" or "no"startsWithZ programyesOnString: uncomputable and undecidablecrashOnString: uncomputable and undecidablestartsWithZ: uncomputable and undecidablehasShortestPath: computable and decidableSortWords problem:
pythonSort and bubbleSort solve itbrokenSort does not solve it
TODO markers and blank functions for you to completeexam/ directory# navigate to your examination repository after cloning
cd <your-examination-repository-name>
# navigate to the exam directory where all the work happens
cd exam
# verify you're in the right place for the examination
ls -algexam/ directoryquestions/, tests/, gatorgrade.yml, pyproject.toml, and uv.lockquestions/ directory contains files with TODO markers to completetests/ directory contains automated tests to verify your workgatorgrade.yml file configures the gatorgrade assessment tool# run gatorgrade to see what needs to be completed
uvx gatorgrade
# this will show you:
# ✅ Checks that are currently passing
# ❌ Checks that need work to pass
# 📊 Overall completion percentagegatorgrade is the automated assessment tooluv, you can type uvx gatorgradequestions/ directory (e.g., question_one.py)TODO markers that indicate where to add codeTODO markers when you complete each sectionTODO markers! You can use uvx gatorgrade to check your progress and see which functions are working! It all works in your terminal window!
# run gatorgrade after making changes
uvx gatorgrade
# you should see your completion percentage improve
# keep working until you reach 100%
# or, for specific test details, you can also run:
uv run pytest -vgatorgrade frequently to track your progress# add your completed work to Git staging area
git add .
# create a commit with a descriptive message
git commit -m "Complete examination programming tasks"
# push your work to GitHub
git push origin maingatorgradegit commit!TODO markers: avoid automatic failuresgatorgrade frequently: test your work as you gotests/ directoryRemember: Read carefully, code thoughtfully, test frequently, and submit regularly! If you get stuck, make sure to chat with the instructor!
Suggestions for ensuring the successful completion of an executable examination
Proofgrammers