TC1017 Final Project – Sudoku

What to Do

creative commons licensed (BY-NC-ND) flickr photo by lincolnblues:

creative commons licensed (BY-NC-ND) flickr photo by lincolnblues:

You will create a text based version of Sukoku in teams of 2 (1 person if no partner is available). The idea is to have a final project which shows your mastery of the topics in this course.

Specification Details

  • First task is form a team and send Ken both of your GitHub users so he can create your repository (with the starting codebase).
  • Deadline for submission: before 5pm May 6, 2015
  • All code must be on GitHub. Ken will create a repository and add each of the team members as contributors. Part of the mark is the consistent submission of code changes over the time for the project.
    We expect to see a balance of commits from each member as well.
  • Teams of two people (from either of my 2 groups of the course).
  • Text only, color implemented using ANSI sequences which we use to show a 3×3 grid as correct as well as original versus user numbers.
  • Both members need to understand the code, you can (and should) import libraries for your work including possibly the use of colors.
  • The program should take a textfile as argument to the program to select/set the initial table.
  • The “fixed” (original) number should be shown in a different color (suggestion: red) and the numbers written by the users in another color (green).
  • The user should be able to exit the program, restart with the same table, print instructions, print history about Sodoku, write a number and remove a (user-placed) number.
  • Writing a number requests three items: the number, the row and the column. If the move is illegal, the move is not executed and a message is presented to the user stating why (number already used in this row/column/grid or location already used, etc.)
  • Delete a number requests two items: row and column. Obviously a permanent number cannot be deleted.

You can do this with arrays or Vectors, but you will need to know eventually how to do both. How would you structure your code in the best way to make the change from Vectors to arrays (or vice-versa) simple?

Video Explanation


  • 5 marks – meets minimum functionality requested.
  • 5 marks – blog post describing your experience of the project which will include your “log” of weekly activities over the 8 weeks of the project.
  • 3 marks – code style. Did you follow best practice? See Mastery#08
  • 2 marks – constant work and commits to GitHub. The commits should definitely be spread well over the last 4 weeks of the course and not just “at the last moment” in the last week.

What to Submit

As usual, create a blog post (or series of posts) explaining what you did, where you found resources (books, videos, web pages, friends) to help you solve this.

The commits to your GitHub repository are your submissions of code. I will use the state of the GitHub repository at the deadline for marking purposes.

And of course, leave any questions here as well as asking those questions on Twitter with the hashtag #TC1017 so we all see your question posted there.

Also put a #PROJECT hashtag to identify it as the project.

Team GitHub Repositories

  1. Bryant and Oswaldo:
  2. Ale and Gonazalo
  3. Rodrigo and Juan Carlos:
  4. Samir and José Luis:
  5. Ivanna and José Eduardo:
  6. Mitzi and Pablo:
  7. Jorge and Luis:
  8. Jair and Armando:
  9. Aurora and Juan Pablo:
  10. Josué and Eduardo:
  11. Edgar and Christian:
  12. Diego and Mauricio:
  13. Monserrat and Yahaira:
  14. Osvaldo and Fernando:
  15. Luis Angel and Fernando:
  16. Héctor and Tania:
  17. Carlos and Carolina:
  18. Juan Pablo and Juan Pablo:
  19. Eduardo and Juan:
  20. Juan Francisco and Asa:
  21. Carlos and Olaf:
  22. Salvador and Alan:

CC BY 4.0 TC1017 Final Project – Sudoku by Ken Bauer is licensed under a Creative Commons Attribution 4.0 International License.

33 responses to “TC1017 Final Project – Sudoku

  1. Pingback: Visit my Flipped Classroom | Ken Bauer on Teaching and Technology

  2. Pingback: FINAL PROJECT – SUDOKU – Antonio Angel's blog

  3. Pingback: Final Project – Sudoku | linecodeSite

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.