Odd clusters using c programming

Assignment Help C/C++ Programming
Reference no: EM13765721

ODD CLUSTERS Using C++ programming

The objective of this project is to write an interactive Odd Clusters game, using the programming knowledge you have gained this semester. Your task is to write a programthat allows one player to play a game of Odd Clusters against the computer or for twoindividuals to play against each other.

BASIC RULES OF ODD CLUSTERS

Odd Clusters is a board game played between two players, who alternatepiece placement on a square board, with sixty-four smaller squares, arrangedin an 8x8 grid. The players take turns. A turn consists of placing one piece onthe board in an unoccupied square.
A cluster is a grouping of one player's pieces connected by adjacency. Thesmallest cluster is a single piece. An Odd Cluster is one composed of an oddnumber of pieces. If a piece placement creates a cluster of an even numberof pieces (an even cluster), the entire even cluster is cleared (the boardlocations are emptied). A player may have any number of Odd Clusters on theboard. Play ends when the board is completely full of pieces or the playersagree to end the game. The winner is the player with the most pieces on theboard at the end of the game.

Specifications

• User interface - the player shall be able to:
o Place a pieceo Resign from the game (quit)
• allow valid placement only (can't place a piece on an occupied location)

• clear even clusters after notifying the participants that one has beenconstructed
• redisplay the game board after each move

• handle computer's turn

• determine that game is over if board is completely full

• determine the winner at game's conclusion and congratulate the winner

• allow user to select who makes first move of game (user or computer)

• allow user to save current game for future continuation

• allow user to reload an existing game to continue playing

• allow for two player mode (computer only checks for validity and removeseven clusters) in addition to one player/ computer mode
• computer piece placement should be done using randomization

• you must employ functions (minimally 8) in both your design and code. Yourmain function should be looked upon as a driver function - mainly makingfunction calls to specific modules.

• The program must contain comments and

• Each function and the program need to have comment headers
• NO GLOBAL VARIABLES SHOULD BE USED

• You may have two global constants - for board rows, cols.
The remainder of the semester will be spent on this project. Time will be devoted todiscussing the mandatory components of the project. Some time will also be allocatedfor general program design discussion and/or examples. The final project will consist ofdesign, algorithm, code and testing components.

Reference no: EM13765721

Questions Cloud

Explain methods currently being used to encourage economic : Briefly explain methods currently being used to encourage economic growth for the typical firm in Hong Kong and for the typical firm in Singapore.
Find case involving construction litigation : 5 minute power point presentation: Find case involving construction litigation, Explain contractual relationships, Explain complaint or reason for suit
Issue related to alternate grains : What nutritional concerns might you have if a friend stopped eating wheat products and substituted white rice and soy flour products for wheat
Explanation and cite information of swot : Existing mission, objectives, and strategies at least  - SWOT(TOWS) Analysis
Odd clusters using c programming : The objective of this project is to write an interactive Odd Clusters game, using the programming knowledge you have gained this semester. Your task is to write a programthat allows one player to play a game of Odd Clusters against the computer o..
What community resources and programs will you draw on : What community resources and programs will you draw on for this offender? Is his home plan appropriate to ensure a successful re-entry? Identify any changes that you would require before approving it.
Are we too litigious : Are We Too Litigious-We are starting our study of Torts. These are not pastries! They are "civil wrongs," for which the legal society believes payment or punishment (monetary) ought to occur
What should business managers do to protect organizations : What are some special issues that arise in Internet transactions involving contracts as compared to traditional transactions involving contracts? What should business managers do to protect their organizations in Internet transactions
Equipment is depreciated straight-line to a zero book value : Thornley Machines is considering a 3-year project with an initial cost of $1,080,000. The project will not directly produce any sales but will reduce operating costs by $640,000 a year. The equipment is depreciated straight-line to a zero book value ..

Reviews

Write a Review

C/C++ Programming Questions & Answers

  Write an accessor function to get the angle

Write a friend function to compare the area of a rectangle with sides 12 and 8 to the area of a parallelogram with sides 14 and 18 and an acute angle of 40 degrees. Test it in main, and check the answer by hand.

  Write a program to evaluate infix expressions

Write a program to evaluate infix expressions and summarize differences between array notation and pointer notation

  Write a function to sum a list of numbers

Write a function to sum a list of numbers: (sum '(1 2 3 4))

  What output is produced by the following program

What output is produced by the following program?

  Differences between a while loop and a do-while loop

What are the differences between a while loop and a do-while loop?

  You should use pure recursive calls

You should use pure recursive calls completely and count the number of calls the program makes. You should count how many times recursive calls were made.

  Menu with options to enter student information

Create a program that uses a menu with options to enter student information (name, ID, GPA), print student information, or quit the program. Use data files and FILE pointers to store and print information entered.

  Write a program the contains an array of 1000 elements name

Write a function named equals() that accepts two char arrays and return true if both arrays have the same characters in the same order. The function should return false otherwise. Write a simple main() function to test your function.

  Write a program that asks the user to enter the monthly cost

Write a program that asks the user to enter the monthly costs for the following expenses incurred from operating his or her automobile: loan payment, insurance, gas, oil, tires, and maintenance. The program should then display the total monthly cost ..

  Create a program that draws a two-dimensional house

Create a program that draws a two-dimensional house seen from the front, the way a child would see it: with a door, two windows, and a roof with a chimney

  Problems related to math power

Write a public static function named power that takes in two integers, a and b, and returns a^b, the first argument to the power of the second argument. You may NOT use Math.pow(), because that would be boring.

  Write a function that takes an integer array

1. Write a function that takes an integer array and the array's size as parameters. The function will check if the array is sorted. If it is, it will return a 1. If it is not sorted it will return 0. The function should not  sort the array.

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd