puranjayK / csoc-2021-task-1

This repository contains csoc week1 android projects

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

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

About

This repository contains csoc week1 android projects