Structured Programming Using Procedural Languages INSS Spring 2018

Similar documents
If a pawn is still on its original square, it can move two squares or one square ahead. Pawn Movement

Movement of the pieces

Boulder Chess. [0] Object of Game A. The Object of the Game is to fill the opposing Royal Chambers with Boulders. [1] The Board and the Pieces

YourTurnMyTurn.com: chess rules. Jan Willem Schoonhoven Copyright 2018 YourTurnMyTurn.com

DELUXE 3 IN 1 GAME SET

After learning the Rules, What should beginners learn next?

A1 Problem Statement Unit Pricing

NSCL LUDI CHESS RULES

Chess Handbook: Course One

Unit. The double attack. Types of double attack. With which pieces? Notes and observations

The game of Paco Ŝako

In the game of Chess a queen can move any number of spaces in any linear direction: horizontally, vertically, or along a diagonal.

A Simple Pawn End Game

Essential Chess Basics (Updated Version) provided by Chessolutions.com

OCTAGON 5 IN 1 GAME SET


3. Bishops b. The main objective of this lesson is to teach the rules of movement for the bishops.

The Pieces Lesson. In your chess set there are six different types of piece.

Adversary Search. Ref: Chapter 5

ChesServe Test Plan. ChesServe CS 451 Allan Caffee Charles Conroy Kyle Golrick Christopher Gore David Kerkeslager

LEARN TO PLAY CHESS CONTENTS 1 INTRODUCTION. Terry Marris December 2004

Perry High School. 2 nd Semester!

NAME: PERIOD: Perspective Packet (Week One)

The Basic Rules of Chess

CHAMPIONSHIP CHESS GAME WORLD. Log On: When you log into the World of Chess, you will enter the Hall of Kings.

Suggested by Joshua L. Mask. Written by Ken Mask, MD. Illustrated by Simmie Williams

Chess Puzzle Mate in N-Moves Solver with Branch and Bound Algorithm

a b c d e f g h i j k l m n

Welcome to the Brain Games Chess Help File.

Software Requirements Specification

Westminster College 2012 High School Programming Contest. October 8, 2012

Google DeepMind s AlphaGo vs. world Go champion Lee Sedol

The Game. Getting Sarted

John Griffin Chess Club Rules and Etiquette

More on games (Ch )

How to Play Chinese Chess Xiangqi ( 象棋 )

Tic-tac-toe. Lars-Henrik Eriksson. Functional Programming 1. Original presentation by Tjark Weber. Lars-Henrik Eriksson (UU) Tic-tac-toe 1 / 23

Algebraic Chess Notation

Monday, February 2, Is assigned today. Answers due by noon on Monday, February 9, 2015.

Overview... 3 Starting the Software... 3 Adding Your Profile... 3 Updating your Profile... 4

Exp. 2: Chess. 2-1 Discussion. 2-2 Objective

Knight Light. LED Chess. Nick DeSantis Alex Haas Bryan Salicco. Senior Design Group 16 Spring 2013


Computer Science and Software Engineering University of Wisconsin - Platteville. 4. Game Play. CS 3030 Lecture Notes Yan Shi UW-Platteville

K I NG M A STER (911 ) T R AVEL KING M A STER II (16 9 ) USER MANUA L

Foundations of AI. 5. Board Games. Search Strategies for Games, Games with Chance, State of the Art. Wolfram Burgard and Luc De Raedt SA-1

An End Game in West Valley City, Utah (at the Harman Chess Club)

arxiv: v1 [math.co] 24 Nov 2018

Lecture 20: Combinatorial Search (1997) Steven Skiena. skiena

Rule changes Effective June 1, 2005: 1. ALL registration will take place via the internet. All forms are available on the

CS/COE 1501

More on games (Ch )

Chess Rules- The Ultimate Guide for Beginners

POSITIONAL EVALUATION

Wednesday, February 1, 2017

Homework Assignment #1

Eleventh Annual Ohio Wesleyan University Programming Contest April 1, 2017 Rules: 1. There are six questions to be completed in four hours. 2.

ONE-POINT PERSPECTIVE

NEW CHESS NOTATION SLAVOLJUB STOJANOVIĆ - SLLAVCCO

THE EFFECTIVENESS OF DAMATH IN ENHANCING THE LEARNING PROCESS OF FOUR FUNDAMENTAL OPERATIONS ON WHOLE NUMBERS

G51PGP: Software Paradigms. Object Oriented Coursework 4

Roi - King - König - Rey Re - Koning - Kung - Konge Rei - король. Dame - Queen - Dame - Dama Regina - Dame - Dam - Dronning Rainha - ферзь

BALDWIN WALLACE UNIVERSITY 2013 PROGRAMMING CONTEST

THROUGH THE LOOKING GLASS CHESS

- 10. Victor GOLENISHCHEV TRAINING PROGRAM FOR CHESS PLAYERS 2 ND CATEGORY (ELO ) EDITOR-IN-CHIEF: ANATOLY KARPOV. Russian CHESS House

Which Rectangular Chessboards Have a Bishop s Tour?

Chapter 1: Positional Play

Infinite chess. Josh Brunner. May 18, 2018

Foundations of Artificial Intelligence

Chess for Math Curriculum

Artificial Intelligence

How to Play Chess Well A Simple Method For Playing Good Positional Chess Copyright 2011 by Ed Kotski

Foundations of Artificial Intelligence

Math Circle Beginners Group May 22, 2016 Combinatorics

Rules of the game. chess checkers tic-tac-toe...

Chess Course Syllabi Table of Contents

Chess, a mathematical definition

Introduction 5 Algebraic Notation 6 What s So Special About the Endgame? 8

: Principles of Automated Reasoning and Decision Making Midterm

Artificial Intelligence

District Fourteen Chess Fest 2012 Information Sheet

The Chess Set. The Chessboard

Triple Challenge.txt

COMP219: COMP219: Artificial Intelligence Artificial Intelligence Dr. Annabel Latham Lecture 12: Game Playing Overview Games and Search

Separation Numbers of Chessboard Graphs. Doug Chatham Morehead State University September 29, 2006

Homework 9: Software Design Considerations

Lower Fall Programming Contest 2017

More Adversarial Search

Minimax Trees: Utility Evaluation, Tree Evaluation, Pruning

A complete set of dominoes containing the numbers 0, 1, 2, 3, 4, 5 and 6, part of which is shown, has a total of 28 dominoes.

Foundations of AI. 6. Adversarial Search. Search Strategies for Games, Games with Chance, State of the Art. Wolfram Burgard & Bernhard Nebel

Queen vs 3 minor pieces

Math Circle Beginners Group May 22, 2016 Combinatorics

INSTRUCTIONS. Cardinal Industries Inc. LIC, NY Made in China.

Today. Types of Game. Games and Search 1/18/2010. COMP210: Artificial Intelligence. Lecture 10. Game playing

Identifying Straight Lines

Monte Carlo tree search techniques in the game of Kriegspiel

Adversarial Search Aka Games

Data Structures and Algorithms

CPS 570: Artificial Intelligence Two-player, zero-sum, perfect-information Games

Transcription:

Structured Programming Using Procedural Languages INSS 225.101 - Spring 2018 Project #3 (Individual) For your third project, you are going to write a program like what you did for Project 2. You are going to design an inheritance tree around the pieces of a Chess board. Just like before, we are going to imagine the board used in the game. So, there will be no Board object. Only the pieces will be designed and built in your program. They will communicate to the user via the same format they did in Project 2, by messages sent to the monitor if it was successful or not. That means we are not really designing a Chess Game. We are just design a program that will have pieces moving around a board. The size of the board in this game is the same 64 square locations as before. Each side of the board has 8 rows of spaces we can place a piece. A visualization of the board with a Pawn piece: If you think about chess pieces, they do similar things but in different ways. That sounds like these chess pieces should be designed with inheritance in mind, so that we can have certain methods that are common to all in some classes, and then add or override methods as we need to solve specific problems in the movement of the piece. Structured Programming Using Procedural Languages Project #3 (Individual) INSS 225.101 Spring 2018 Page 1 of 5

Your program must design concrete classes for all six of the types of chess pieces: King, Queen, Rook, Knight, Bishop, & Pawn. The pieces will move the same way as they do in chess: 1. The king piece can move one single square in any direction: 2. The queen can move in any direction on a straight or diagonal path: Structured Programming Using Procedural Languages Project #3 (Individual) INSS 225.101 Spring 2018 Page 2 of 5

3. The bishop can move in any direction diagonally, so long as it is not obstructed by another piece: 4. The rook piece can move forward, backward, left or right at any time. Structured Programming Using Procedural Languages Project #3 (Individual) INSS 225.101 Spring 2018 Page 3 of 5

5. The Knight piece can move forward, backward, left or right two squares and must then move one square in either perpendicular direction 6. Pawn chess pieces can only directly forward one square: Other than those that, the pieces have similar actions and reactions as the Chip in Project 2. 1. The piece will start by being placed on one location on the board (like above). a. When being placed on the board, the new piece will need to know: i. The number of total squares in the board. ii. What horizontal row the piece is sitting in. Structured Programming Using Procedural Languages Project #3 (Individual) INSS 225.101 Spring 2018 Page 4 of 5

iii. What vertical row the piece is sitting in. iv. Note: To solve the movement for the Pawn. You will need to know what are the sides that pawns can move straight (i.e., the sides of the board where all the pieces line up to start). 2. A piece may not move off the board. If an attempt to move off the board occurs, the piece will move as far as it can and then stop at the board s edge. 3. Each time the chip moves, a message will be display to the screen (i.e.; System.out). There are two types of messages that will be displayed; if the move worked or if it bumped into an edge. a. When a move is successful, the message Good Move will be displayed to the user. b. When a move is not successful, the message will tell the user what edge of the board they bumped into. i. Hit left edge ii. Hit right edge iii. Hit top edge iv. Hit bottom edge c. In addition to being displayed to the screen, the same message will also be returned to the method s caller (i.e., via a String object). 4. The piece will answer what row it is on for the horizonal or vertical direction when asked. As you did in Project two, you are going to have to create a tester program to test out all the different algorithms you created in your classes. Again, I don t need to see that code. I have my own tester and it runs through all the tests I need to grade your assignment. Do not wait to start this assignment. This might seem simple on the surface, but there is a lot of conditional decisions to make it work as described. Spend time to map it out before doing to much coding of the process. Project Due Date: May 10 th, 2018 (project must be submitted via Sakai prior to the start of class). What to turn in: 1. A digital copy of your Java source code (submitted via Sakai as an attachment). For this first assignment, please submit the source code for the class you created. You can attach the file you created to Sakai. You also can place it in a zip file if you wish. Please do not submit your source code pasted in a Word document. Text files only (.java or.txt). Structured Programming Using Procedural Languages Project #3 (Individual) INSS 225.101 Spring 2018 Page 5 of 5