Question

It's time to put everything you've learned together and do something fun with Python! Be creative,...

It's time to put everything you've learned together and do something fun with Python! Be creative, do your best, and have fun! Your project will be automatically included in the pool of students' work. If selected, your project will be used as a demonstration to current and prospective students in the future. Please let me know if you prefer NOT to include your project to be in the pool of demonstrating projects.

Project Description

Create a real-world scenario of a problem to solve and solve it by designing and implementing a high-quality creative and well-documented program written in Python.

The project can be anything, but here are a few examples:

  • The project can be in various formats, relates to various disciplinary
  • A program that teaches community college students Python programming language or college math
  • Computer game
  • Encryption / Decryption program
  • Network data analysis
  • Hacking tool
  • etc.

The project must contain each of the following:

  • Something old; # Something you learned in this course.
  • Something new; # Something you learned outside of this course material. You may also use the contents of Unit 7, Unit 8, and Unit 11 to fulfill this requirement as we did not cover these. For example, you can try to make the Tic Tace Toe game GUI application.
  • Something borrowed; # Something you learned from your classmates, friends, or family. Materials learned from the Internet is acceptable. Please make sure the materials you borrowed are not under the protection of the copyright.
  • Something blue. # Anything Blue - be creative!

Level of difficulty:

  • Medium to High.
  • Apply the techniques you've learned, demonstrate the awesomeness of Python.
  • Aim high! Think encryption, recursion, object-oriented programming, multithreading, client-server applications... Think GUI applications, gaming, etc.
  • Make it fun and educational. We want to learn something from your project and have something to brag!

Project Deliverables

The project submission must contain the following items. If any of the items listed below are missing your project will not be graded and it will result in a 0 as the grade.

  1. The complete Python programs
  2. A PowerPoint presentation including the following:
    1. The project description / the problem to solve
    2. The design used to solve the problem
    3. The instructions on how to use the program
    4. The difficulties you encountered, and How did you solve them
    5. List and explain the "somethings":
      1. Something old
      2. Something new
      3. Something borrow
      4. Something blue
    6. Anything else you think should be included in your project.
  3. A video presenting the project with the following requirements:
    1. File format: mp4
    2. Length: 5-10 minutes
    3. Contents: Narrated presentation of your PowerPoint along with a demonstration of your program showing its execution and features.
    4. Note: The presenter's face does not need to be in the recording.
    5. The video presentation must be uploaded to YuJa and the direct link must be submitted using a text file. Example: XXX video presentation sample.txt
    6. Instructions on creating, uploading, and getting the direct link, etc. can be found on Virtual Classroom - Record and Submit Presentation using YuJa

Directions - how to package the project

  • Create a folder, then name the folder with an identifier (FinalProject_160xxx20xxxx) and your first name and last name. For example, "FinalProject_1600012019FA_AmyJohnson".
  • Place all required files into the folder.
  • Compress the folder, the submit the compressed zip file.

Please note:

  • This project weights 10% of your final grade.
  • The Final Project is required. Fail to submit the Final Project on time, results in an 'F' as the final grade for this course.
  • The grade of this project will be based on your final submission. Please make sure you have met the requirements.
  • The due date for this project is also the deadline for any submission. Nothing will be accepted if submitted pass 11:59 pm on the due date. No exceptions. There will be no late penalty. The grade will be 0 (zero) if not submitted on time.

Rubric

Final Project (1)

Final Project (1)

Criteria Ratings Pts This criterion is linked to a Learning OutcomeSubmission Project submission includes all required files. If any required file is missing, the project will result in 0 (zero) as the grade. 0.0 pts This criterion is linked to a Learning OutcomeOverall quality The level of difficulties met with the requirements. The project is creative and fun. The program function without logic or syntax error. 20.0 pts This criterion is linked to a Learning OutcomeSomething old Something old is applied in the project and as described in the project description. 20.0 pts This criterion is linked to a Learning OutcomeSomething new Something new is applied in the project and as described in the project description. 20.0 pts This criterion is linked to a Learning OutcomeSomething borrowed Something borrowed is applied in the project and as described in the project description. 20.0 pts This criterion is linked to a Learning OutcomeSomething blue Something blue is applied in the project and as described in the project description. 20.0 pts This criterion is linked to a Learning OutcomeThe PowerPoint Presentation The PowerPoint document summarizes the project and contains the required contents in an easy, concise read to ready fashion. (20 pts) 20.0 pts This criterion is linked to a Learning OutcomeThe Video Presentation The Video Presentation fulfills the length requirements, includes a walkthrough of the PowerPoint Presentation and sample runs of Python programs demonstrating the main functions and features of the project. 20.0 pts Total Points: 140.0
0 0
Add a comment Improve this question Transcribed image text
Answer #1

Tic Tac Toe Using Python

To create a 9×9 board Calls create_board(). For each player calls the random_place() function. calls the random_place() function to print the value . evaluate the board after each move diagonally or horizontal or longitudinal,

Code :

import numpy as np

import random

from time import sleep

  

pqr create_board():

    return(np.array([[0, 0, 0],

                     [0, 0, 0],

                     [0, 0, 0]]))

  

pqr possibilities(board):

    l = []

      

    for l in range(len(board)):

        for b in range(len(board)):

              

            if board[l][b] == 0:

                l.append((l, b))

    return(l)

  pqr random_place(board, player):

    selection = possibilities(board)

    current_loc = random.choice(selection)

    board[current_loc] = player

    return(board)

pqr row_win(board, player):

    for m in range(len(board)):

        win = True

          for n in range(len(board)):

            if board[m, n] != player:

                win = False

                continue

                  if win == True:

            return(win)

    return(win)

  pqr col_win(board, player):

    for m in range(len(board)):

        win = True

          for n in range(len(board)):

            if board[n][m] != player:

                win = False

                continue

                  if win == True:

            return(win)

    return(win)

pqr diag_win(board, player):

    win = True

    n = 0

    for m in range(len(board)):

        if board[m, m] != player:

            win = False

    win = True

    if win:

        for m in range(len(board)):

            n = len(board) - 1 - m

            if board[m, n] != player:

                win = False

    return win

pqr evaluate(board):

    winner = 0

      for player in [1, 2]:

        if (row_win(board, player) or

            col_win(board,player) or

            diag_win(board,player)):

                 

            winner = player

              

    if np.all(board != 0) and winner == 0:

        winner = -1

    return winner

pqr play_game():

    board, winner, counter = create_board(), 0, 1

    print(board)

    sleep(2)

      

    while winner == 0:

        for player in [1, 2]:

            board = random_place(board, player)

            print("Board after " + str(counter) + " move")

            print(board)

            sleep(2)

            counter += 1

            winner = evaluate(board)

            if winner != 0:

                break

    return(winner)

print("Winner is: " + str(play_game()))

Add a comment
Know the answer?
Add Answer to:
It's time to put everything you've learned together and do something fun with Python! Be creative,...
Your Answer:

Post as a guest

Your Name:

What's your source?

Earn Coins

Coins can be redeemed for fabulous gifts.

Not the answer you're looking for? Ask your own homework help question. Our experts will answer your question WITHIN MINUTES for Free.
Similar Homework Help Questions
  • Please help ASAP! C ++, linked list, etc. everything for the project is in the link...

    Please help ASAP! C ++, linked list, etc. everything for the project is in the link below. https://www.zipshare.com/download/eyJhcmNoaXZlSWQiOiIzZDIyN2UzYi1kNGFhLTRlMzEtYjMzZi00MDhmYzNiMjk3ZGMiLCJlbWFpbCI6Im1pMTQzNEBnbWFpbC5jb20ifQ== You should turn it in by blackboard. Each task should be in a separate unzipped folder named YourLastName_YourFirstInitial_taskN, where N is the task number inside a zipped file named: YourLastName_YourFirstInitial.zip. You may use code you have written previously and you may ask other members of the class questions about the assignment. However, you must do your own assignment; you may not use...

  • Help needed with Python 3: Dictionaries and Sets. The problem is one that asks the user to create...

    Help needed with Python 3: Dictionaries and Sets. The problem is one that asks the user to create a completed program that prompts the user for the name of a data file, and reads the contents of that data file, then creates variables in a form suitable for computing the answer to some questions. The format should be in the same manner as the attached .py file. All subsequent assignment details (.py and .csv files) can be found at this...

ADVERTISEMENT
Free Homework Help App
Download From Google Play
Scan Your Homework
to Get Instant Free Answers
Need Online Homework Help?
Ask a Question
Get Answers For Free
Most questions answered within 3 hours.
ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT