Giter Club home page Giter Club logo

csoc-2021-task-1's Introduction

CSOC Week1

This week, we'll jump with the basics of development with three tracks -

  1. Android Development
  2. Web Development
  3. Cross Platform Development using Flutter

Having knowledge of the previous week is necessary since Git remains highly used in this week. If you think you're weak in any of the topics, then try to revise them.

There's a basic project in each track as well to finish by the end of this week (June 13), so get your tools back in shape!

You may choose to compete in any number of tracks.

Assignment

This week tasks will be on the basic of UI and UX development. It will comprise of making simple games like TIC-TAC-TOE and SUDOKU .

Note : You have to choose one of them.

The task that we'll be working over is to build a TIC-TAC-TOE game , a multi-player classic game where both players will have to choose between X or O .The first player to complete a diagonal, vertical or a horizontal blocks wins the game.

Tasks

  • Task 1: Implement a two-player mode that allows two people to compete against each other.
  • Task 2: Add a single-player mode that allows users to play with an intelligent bot that never loses.
  • Task 3: Add an option to select which shape to begin with (X/O).
  • Task 4: In single-player mode, add an option to choose who will start first - computer or player.
  • Extras: You may keep a record of scores and use player names for interactivity.

Sudoku is a logic-based puzzle game .The aim of the Sudoku puzzle is to put in a numerical digit from 1 through 9 in each cell of a 9×9 grid made up of 3×3 sub-grids (called "block”), starting with various digits given in some cells (the "givens") with the others empty; each row, column, and block must contain only one instance of each numeral.

Complexity of the algorithm that are used in building are divided into two parts.

  • One is the complexity of the algorithm to generate the complete grid. We discover the randomness of generating complete grid increases when the complexity increases, that is, the randomness higher and the complexity greater.

  • Second, is the algorithm to assign numbers in grid and check for each row , column and block and declare the final result .

Tasks

  • Task 1: Implement a Sudoku game. (The board may remain the same every time).
  • Task 2: Implement a board generator and generate a random board in every game. You may use backtracking or naive approaches to generate the board.
  • Task 3: Add a timer to the game, where the user may select a particular time to complete the game within it. Bonus: As the time reaches 0, the user can be warned about the time running out.
  • Task 4: Warning the user about incorrect inputs and user engagement.
  • Extras: To make the game more engaging, you may provide hints if the user is stuck for like 10-20 seconds.

Judging

The evaluation would be done mainly on the following basis:

  1. User Interface and User Experience
  2. Authenticity and readability of the code
  3. Completion of mentioned tasks
  4. Bonus Points for implementing extra features depending on your creativity😉

Tracks

csoc-2021-task-1's People

Contributors

king-11 avatar nb9960 avatar sahilsaini1107 avatar sanyud24 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.