Arrays. Independent Part. Contents. Programming with Java Module 3. 1 Bowling Introduction Task Intermediate steps...

Size: px
Start display at page:

Download "Arrays. Independent Part. Contents. Programming with Java Module 3. 1 Bowling Introduction Task Intermediate steps..."

Transcription

1 Programming with Java Module 3 Arrays Independent Part Contents 1 Bowling Introduction Task Intermediate steps Extension Tic Tac Toe Introduction Task Intermediate steps Extensions Search and sort algorithms Introduction Preparations Search algorithms Task Extensions Sort algorithms Introduction Task Extension

2 Keywords Data structure Array Array Index Array Element Array Dimension Array Length Array Iteration Two-dimensional Array Authors: Lukas Fässler, Barbara Scheuner Date: 18 July 2018 Version: 1.1 Hash: d2eb005 The authors try the best to provide an error free work, however there still might be some errors. The Authors are thankful for your feedback and suggestions. This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. To view a copy of this license, visit 2

3 1 Bowling 1.1 Introduction In bowling, the results are typically noted and evaluated in a table. The number of pins knocked over is noted in each round. Therefore, numbers between 0 (no pin is knocked down) and 10 (all pins are knocked down - a so-called Stricke) are possible. Players Runde Runde Runde Runde Runde Summe Table 1: Results of a bowling game. 1.2 Task Your program should be able to store and evaluate the results of 3 players during 5 rounds (see table 1). Use a two-dimensional array for storing the results and a one-dimensional array for calculating the sum. 1.3 Intermediate steps Proceed as follows: Declartion of the variables: Declare a variable results as a two-dimensional Integer array (3 players, 5 rounds) and sumas a one-dimensional Integer. Reading results: Read the result into the array results. It should be possible to enter the points for each of the 5 rounds and for each of the 3 players. Calculation of the results: Store the sum of the points of each player in the array sum. 3

4 Output of the results: Output the point table (results) and the sum (sum) on the screen in tabular form. 1.4 Extension Check whether the entered number is allowed. Output at end of the game how many strikes have been thrown and how often no pin has been knocked down by each player. Adapt your program so that the number of rounds and the number of players can be entered. Output the winner of the game. Calculate in which round each player has made his first strike and output the result on the screen. 2 Tic Tac Toe 2.1 Introduction Tic Tac Toe (also known as noughts and crosses or Xs and Os) is a game for two players who take turns marking (e.g. with x or o) the empty spaces. The player who succeeds in marking all spaces of a column, a row or a diagonal wins the game. 2.2 Task Two persons play alternately. With each turn, it must be made clear which players turn it is. The current board shall be output after each turn. It shall be displayed if a person has won. 2.3 Intermediate steps Play the game on a paper first. Which steps are performed in succession? Program the following three steps: Define a 3 3-board of type Character. Introduce a variable player, which can take two values (e.g. 1 and 2). Set all values of the board to spaces (' '). Program the output of the board. 4

5 : 2: 3: Player 1: Enable the player to enter the field which he want to mark via a user input. Set the corresponding character (e.g x or o) in the fields desired by the player. Repeat the turns until the board is completely marked or someone has won. 2.4 Extensions Check whether a desired field is already marked before executing the move. If the field is already marked, the player shall make another input. The same shall happen if the player chooses a field that is outside of the board. 3 Search and sort algorithms 3.1 Introduction Searching in collected data and sorting data are two of the most common tasks a programmer is faced with. There are numerous books on these topics and since search and sort algorithms are used so often, it is particularly important that they are programmed as efficiently as possible. Furthermore, there is a large number of strategies which can be applied to implement a sort algorithm. A lot of effort was made to develop the design and analysis of these algorithms since the middle of the 20th century. Here, we will only get to know a small selection Preparations Download the initial program lotterynumbers.py onto your computer. Familiarize yourself with the program. 3.2 Search algorithms As mentioned above, there are several search algorithms that differ in their structure and their efficiency. The most famous are the linear search and the binary search. We only want to consider the linear search. 5

6 How does the linear search work? A set of elements (e.g. an array) is searched according to a certain element. The search begins at the first element and the elements are passed through in the order in which they were stored. If the element considered corresponds to the sought element, the search is terminated, otherwise the search is continued Task Search the array for the maximum value and output the value and the position of the data in the console. How can we search for the maximum value? The position of the (current) maximum is stored in the variable max. Initially, the first element of the array is taken as the maximum. Now, all elements of the array (except the first one) are run. If the value of an element at the current position is larger than the current maximum, then this position is stored in max. 3.3 Extensions Search the minimum of the array in the same way. Use a common loop for both search. Consider what happens if the sought value occurs more than once. How does your program react to that? How do you assess the searching effort? How could it be optimized? 3.4 Sort algorithms Introduction The goal of sort algorithms is to sort the elements of a set according to a certain criterion. After sorting, the elements are available in ascending or descending order. There are several sort algorithms which differ in their structure and their efficiency. The most famous are Bubble sort, Insertion sort, Merge sort and Quick sort. 6

7 How does Bubble sort work (for a ascending order see figure??)? 1. Two neighboring elements are compared. The comparison begins with the elements with the index 0 and 1, then 1 and 2, then 2 and 3, etc. 2. If the value of the left element is larger than the value of the right one, the two elements are swapped. 3. In one array run, the largest element moves to the end of the array. 4. Now, the steps 1 to 3 are repeated to move the second-largest element at the penultimate position. Note: The comparison of the second-largest and the largest element is omitted since it was already sorted. 5. The steps 1 to 4 are repeated until the two smallest elements are compared Task Try to implement Bubble-Sort-algorithm! Extension How could the efficiency of Bubble sort be improved? 7

8 Figure 1: Bubble-Sort. Details siehe Text. 8

mywbut.com Two agent games : alpha beta pruning

mywbut.com Two agent games : alpha beta pruning Two agent games : alpha beta pruning 1 3.5 Alpha-Beta Pruning ALPHA-BETA pruning is a method that reduces the number of nodes explored in Minimax strategy. It reduces the time required for the search and

More information

class TicTacToe: def init (self): # board is a list of 10 strings representing the board(ignore index 0) self.board = [" "]*10 self.

class TicTacToe: def init (self): # board is a list of 10 strings representing the board(ignore index 0) self.board = [ ]*10 self. The goal of this lab is to practice problem solving by implementing the Tic Tac Toe game. Tic Tac Toe is a game for two players who take turns to fill a 3 X 3 grid with either o or x. Each player alternates

More information

CPSC 217 Assignment 3 Due Date: Friday March 30, 2018 at 11:59pm

CPSC 217 Assignment 3 Due Date: Friday March 30, 2018 at 11:59pm CPSC 217 Assignment 3 Due Date: Friday March 30, 2018 at 11:59pm Weight: 8% Individual Work: All assignments in this course are to be completed individually. Students are advised to read the guidelines

More information

January 11, 2017 Administrative notes

January 11, 2017 Administrative notes January 11, 2017 Administrative notes Clickers Updated on Canvas as of people registered yesterday night. REEF/iClicker mobile is not working for everyone. Use at your own risk. If you are having trouble

More information

ECE 242 Data Structures and Algorithms. Simple Sorting II. Lecture 5. Prof.

ECE 242 Data Structures and Algorithms.  Simple Sorting II. Lecture 5. Prof. ECE 242 Data Structures and Algorithms http://www.ecs.umass.edu/~polizzi/teaching/ece242/ Simple Sorting II Lecture 5 Prof. Eric Polizzi Summary previous lecture 1 Bubble Sort 2 Selection Sort 3 Insertion

More information

https://www.teachersp ayteachers.com/store/ Worksheetjunkie

https://www.teachersp ayteachers.com/store/ Worksheetjunkie https://www.teachersp ayteachers.com/store/ Worksheetjunkie Copyright 2017 IDEA GALAXY. All rights reserved by author. Permission to copy for single classroom use only. Electronic distribution limited

More information

CSC 110 Lab 4 Algorithms using Functions. Names:

CSC 110 Lab 4 Algorithms using Functions. Names: CSC 110 Lab 4 Algorithms using Functions Names: Tic- Tac- Toe Game Write a program that will allow two players to play Tic- Tac- Toe. You will be given some code as a starting point. Fill in the parts

More information

SOME MORE DECREASE AND CONQUER ALGORITHMS

SOME MORE DECREASE AND CONQUER ALGORITHMS What questions do you have? Decrease by a constant factor Decrease by a variable amount SOME MORE DECREASE AND CONQUER ALGORITHMS Insertion Sort on Steroids SHELL'S SORT A QUICK RECAP 1 Shell's Sort We

More information

For our EC331 project we successfully designed and implemented a PIC based Tic-Tac-Toe game using the PIC16874.

For our EC331 project we successfully designed and implemented a PIC based Tic-Tac-Toe game using the PIC16874. EC331 Project Report To: Dr. Song From: Colin Hill and Peter Haugen Date: 6/7/2004 Project: Pic based Tic-Tac-Toe System Introduction: For our EC331 project we successfully designed and implemented a PIC

More information

Embedded Systems Lab

Embedded Systems Lab Embedded Systems Lab UNIVERSITY OF JORDAN Tic-Tac-Toe GAME PROJECT Embedded lab Engineers Page 1 of 5 Preferred Group Size Grading Project Due Date (2) Two is the allowed group size. The group can be from

More information

Game Playing in Prolog

Game Playing in Prolog 1 Introduction CIS335: Logic Programming, Assignment 5 (Assessed) Game Playing in Prolog Geraint A. Wiggins November 11, 2004 This assignment is the last formally assessed course work exercise for students

More information

Second Annual University of Oregon Programming Contest, 1998

Second Annual University of Oregon Programming Contest, 1998 A Magic Magic Squares A magic square of order n is an arrangement of the n natural numbers 1,...,n in a square array such that the sums of the entries in each row, column, and each of the two diagonals

More information

1, 2,, 10. Example game. Pieces and Board: This game is played on a 1 by 10 board. The initial position is an empty board.

1, 2,, 10. Example game. Pieces and Board: This game is played on a 1 by 10 board. The initial position is an empty board. ,,, 0 Pieces and Board: This game is played on a by 0 board. The initial position is an empty board. To Move: Players alternate placing either one or two pieces on the leftmost open squares. In this game,

More information

Game, Set, and Match Carl W. Lee September 2016

Game, Set, and Match Carl W. Lee September 2016 Game, Set, and Match Carl W. Lee September 2016 Note: Some of the text below comes from Martin Gardner s articles in Scientific American and some from Mathematical Circles by Fomin, Genkin, and Itenberg.

More information

GCSE Unit 2.1 Algorithms

GCSE Unit 2.1 Algorithms Name: Specification & learning objectives Computational thinking. Standard searching algorithms. Standard sorting algorithms. How to produce algorithms. Interpreting, correcting and completing algorithms.

More information

UNIT 13A AI: Games & Search Strategies. Announcements

UNIT 13A AI: Games & Search Strategies. Announcements UNIT 13A AI: Games & Search Strategies 1 Announcements Do not forget to nominate your favorite CA bu emailing gkesden@gmail.com, No lecture on Friday, no recitation on Thursday No office hours Wednesday,

More information

Lab 7: 3D Tic-Tac-Toe

Lab 7: 3D Tic-Tac-Toe Lab 7: 3D Tic-Tac-Toe Overview: Khan Academy has a great video that shows how to create a memory game. This is followed by getting you started in creating a tic-tac-toe game. Both games use a 2D grid or

More information

Artificial Intelligence Lecture 3

Artificial Intelligence Lecture 3 Artificial Intelligence Lecture 3 The problem Depth first Not optimal Uses O(n) space Optimal Uses O(B n ) space Can we combine the advantages of both approaches? 2 Iterative deepening (IDA) Let M be a

More information

Find the area of the largest semicircle that can be inscribed in the unit square.

Find the area of the largest semicircle that can be inscribed in the unit square. Problem Solving Marathon (11/3/08) Semicircle in a square (153) Find the area of the largest semicircle that can be inscribed in the unit square. Folded sheet of paper (1) A rectangular sheet of paper

More information

Game Theory and Algorithms Lecture 19: Nim & Impartial Combinatorial Games

Game Theory and Algorithms Lecture 19: Nim & Impartial Combinatorial Games Game Theory and Algorithms Lecture 19: Nim & Impartial Combinatorial Games May 17, 2011 Summary: We give a winning strategy for the counter-taking game called Nim; surprisingly, it involves computations

More information

ENGR170 Assignment Problem Solving with Recursion Dr Michael M. Marefat

ENGR170 Assignment Problem Solving with Recursion Dr Michael M. Marefat ENGR170 Assignment Problem Solving with Recursion Dr Michael M. Marefat Overview The goal of this assignment is to find solutions for the 8-queen puzzle/problem. The goal is to place on a 8x8 chess board

More information

Coin Cappers. Tic Tac Toe

Coin Cappers. Tic Tac Toe Coin Cappers Tic Tac Toe Two students are playing tic tac toe with nickels and dimes. The player with the nickels has just moved. Itʼs now your turn. The challenge is to place your dime in the only square

More information

MATH GAMES THAT SUPPORT SINGAPORE MATH GRADES

MATH GAMES THAT SUPPORT SINGAPORE MATH GRADES Box Cars and One-Eyed Jacks MATH GAMES THAT SUPPORT SINGAPORE MATH GRADES 3-5 JOHN FELLING SMART TRAINING SCOTTSDALE, AZ July 9, 2015 john@boxcarsandoneeyedjacks.com phone 1-866-342-3386 / 1-780-440-6284

More information

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

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

More information

A Level Computer Science H446/02 Algorithms and programming. Practice paper - Set 1. Time allowed: 2 hours 30 minutes

A Level Computer Science H446/02 Algorithms and programming. Practice paper - Set 1. Time allowed: 2 hours 30 minutes A Level Computer Science H446/02 Algorithms and programming Practice paper - Set 1 Time allowed: 2 hours 30 minutes Do not use: a calculator First name Last name Centre number Candidate number INSTRUCTIONS

More information

Tic-Tac-Toe and machine learning. David Holmstedt Davho G43

Tic-Tac-Toe and machine learning. David Holmstedt Davho G43 Tic-Tac-Toe and machine learning David Holmstedt Davho304 729G43 Table of Contents Introduction... 1 What is tic-tac-toe... 1 Tic-tac-toe Strategies... 1 Search-Algorithms... 1 Machine learning... 2 Weights...

More information

CS256 Applied Theory of Computation

CS256 Applied Theory of Computation CS256 Applied Theory of Computation Parallel Computation III John E Savage Overview Mapping normal algorithms to meshes Shuffle operations on linear arrays Shuffle operations on two-dimensional arrays

More information

Maze Solving Algorithms for Micro Mouse

Maze Solving Algorithms for Micro Mouse Maze Solving Algorithms for Micro Mouse Surojit Guha Sonender Kumar surojitguha1989@gmail.com sonenderkumar@gmail.com Abstract The problem of micro-mouse is 30 years old but its importance in the field

More information

The Game of SET R, and its Mathematics.

The Game of SET R, and its Mathematics. The Game of SET R, and its Mathematics. Bobby Hanson April 9, 2008 But, as for everything else, so for a mathematical theory beauty can be perceived but not explained. A. Cayley Introduction The game of

More information

EXPLORING TIC-TAC-TOE VARIANTS

EXPLORING TIC-TAC-TOE VARIANTS EXPLORING TIC-TAC-TOE VARIANTS By Alec Levine A SENIOR RESEARCH PAPER PRESENTED TO THE DEPARTMENT OF MATHEMATICS AND COMPUTER SCIENCE OF STETSON UNIVERSITY IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR

More information

Sorting. Suppose behind each door (indicated below) there are numbers placed in a random order and I ask you to find the number 41.

Sorting. Suppose behind each door (indicated below) there are numbers placed in a random order and I ask you to find the number 41. Sorting Suppose behind each door (indicated below) there are numbers placed in a random order and I ask you to find the number 41. Door #1 Door #2 Door #3 Door #4 Door #5 Door #6 Door #7 Is there an optimal

More information

JINX - 2 Players / 15 Minutes

JINX - 2 Players / 15 Minutes JINX - 2 Players / 15 Minutes Players are witches who combine secret ingredients to make big and powerful potions. Each witch will contribute one of the ingredients needed to make a potion. If they can

More information

DATA STRUCTURES USING C

DATA STRUCTURES USING C DATA STRUCTURES USING C Lecture-10 Data Structures Different types of Sorting Techniques used in Data Structures Sorting: Definition Sorting: an operation that segregates items into groups according to

More information

Advanced Automata Theory 4 Games

Advanced Automata Theory 4 Games Advanced Automata Theory 4 Games Frank Stephan Department of Computer Science Department of Mathematics National University of Singapore fstephan@comp.nus.edu.sg Advanced Automata Theory 4 Games p. 1 Repetition

More information

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ElementaryMath Games 1 Introduction* Gamesprovideafunenvironmentforsupportingchildreninbuildingnumberfluency.As childrenlearntoplaythegames,speedshouldnotbethefocus.encouragestrategyand askstudentstoexplaintheirthinking.

More information

UTD Programming Contest for High School Students April 1st, 2017

UTD Programming Contest for High School Students April 1st, 2017 UTD Programming Contest for High School Students April 1st, 2017 Time Allowed: three hours. Each team must use only one computer - one of UTD s in the main lab. Answer the questions in any order. Use only

More information

School of Computing and Information Technology. ASSIGNMENT 1 (Individual) CSCI 103 Algorithms and Problem Solving. Session 2, April - June 2017

School of Computing and Information Technology. ASSIGNMENT 1 (Individual) CSCI 103 Algorithms and Problem Solving. Session 2, April - June 2017 ASSIGNMENT 1 (Individual) CSCI 103 Algorithms and Problem Solving Session 2, April - June 2017 UOW Moderator: Dr. Luping Zhou (lupingz@uow.edu.au) Lecturer: Mr. Chung Haur KOH (chkoh@uow.edu.au) Total

More information

Introduction to Computer Science with MakeCode for Minecraft

Introduction to Computer Science with MakeCode for Minecraft Introduction to Computer Science with MakeCode for Minecraft Lesson 9: Artificial Intelligence In this chapter, we ll dive into the popular field of Artificial Intelligence, or AI. From driverless cars,

More information

The Theory Behind the z/architecture Sort Assist Instructions

The Theory Behind the z/architecture Sort Assist Instructions The Theory Behind the z/architecture Sort Assist Instructions SHARE in San Jose August 10-15, 2008 Session 8121 Michael Stack NEON Enterprise Software, Inc. 1 Outline A Brief Overview of Sorting Tournament

More information

CS3334 Data Structures Lecture 4: Bubble Sort & Insertion Sort. Chee Wei Tan

CS3334 Data Structures Lecture 4: Bubble Sort & Insertion Sort. Chee Wei Tan CS3334 Data Structures Lecture 4: Bubble Sort & Insertion Sort Chee Wei Tan Sorting Since Time Immemorial Plimpton 322 Tablet: Sorted Pythagorean Triples https://www.maa.org/sites/default/files/pdf/news/monthly105-120.pdf

More information

The Mathematics of Playing Tic Tac Toe

The Mathematics of Playing Tic Tac Toe The Mathematics of Playing Tic Tac Toe by David Pleacher Although it has been shown that no one can ever win at Tic Tac Toe unless a player commits an error, the game still seems to have a universal appeal.

More information

Sequential games. We may play the dating game as a sequential game. In this case, one player, say Connie, makes a choice before the other.

Sequential games. We may play the dating game as a sequential game. In this case, one player, say Connie, makes a choice before the other. Sequential games Sequential games A sequential game is a game where one player chooses his action before the others choose their. We say that a game has perfect information if all players know all moves

More information

A Games-based, Strategy-focused Fluency Plan

A Games-based, Strategy-focused Fluency Plan A Games-based, Strategy-focused Fluency Plan To have with you for tonight s webinar: ü Deck of Cards ü 2 dice (6-sided or 10-sided) ü Games Recording Sheet ü This powerpoint with Game Boards Jennifer Bay-Williams

More information

CMPUT 396 Tic-Tac-Toe Game

CMPUT 396 Tic-Tac-Toe Game CMPUT 396 Tic-Tac-Toe Game Recall minimax: - For a game tree, we find the root minimax from leaf values - With minimax we can always determine the score and can use a bottom-up approach Why use minimax?

More information

Computer Science Scholarship Puzzle Packet

Computer Science Scholarship Puzzle Packet Computer Science Scholarship Puzzle Packet Please set aside about two hours for working on these problems. Feel free to use a calculator on any problem you wish. But if you do, just make a note. By Calc.

More information

Realizing Strategies for winning games. Senior Project Presented by Tiffany Johnson Math 498 Fall 1999

Realizing Strategies for winning games. Senior Project Presented by Tiffany Johnson Math 498 Fall 1999 Realizing Strategies for winning games Senior Project Presented by Tiffany Johnson Math 498 Fall 1999 Outline of Project Briefly show how math relates to popular board games in playing surfaces & strategies

More information

Figure 1: The Game of Fifteen

Figure 1: The Game of Fifteen 1 FIFTEEN One player has five pennies, the other five dimes. Players alternately cover a number from 1 to 9. You win by covering three numbers somewhere whose sum is 15 (see Figure 1). 1 2 3 4 5 7 8 9

More information

Background. Game Theory and Nim. The Game of Nim. Game is Finite 1/27/2011

Background. Game Theory and Nim. The Game of Nim. Game is Finite 1/27/2011 Background Game Theory and Nim Dr. Michael Canjar Department of Mathematics, Computer Science and Software Engineering University of Detroit Mercy 26 January 2010 Nimis a simple game, easy to play. It

More information

GENERALIZATION: RANK ORDER FILTERS

GENERALIZATION: RANK ORDER FILTERS GENERALIZATION: RANK ORDER FILTERS Definition For simplicity and implementation efficiency, we consider only brick (rectangular: wf x hf) filters. A brick rank order filter evaluates, for every pixel in

More information

Let's Play Math Games! Activities for Learning, Inc. 2017

Let's Play Math Games! Activities for Learning, Inc. 2017 Let's Play Math Games! 4 5 6 7 8 9 7 142128354249566370 Games Games Math = Books Reading Games provide instant feedback. Games provide interesting repetition needed for automatic responses in a social

More information

Taffy Tangle. cpsc 231 assignment #5. Due Dates

Taffy Tangle. cpsc 231 assignment #5. Due Dates cpsc 231 assignment #5 Taffy Tangle If you ve ever played casual games on your mobile device, or even on the internet through your browser, chances are that you ve spent some time with a match three game.

More information

Obliged Sums of Games

Obliged Sums of Games Obliged Sums of Games Thomas S. Ferguson Mathematics Department, UCLA 1. Introduction. Let g be an impartial combinatorial game. In such a game, there are two players, I and II, there is an initial position,

More information

TIC TAC TOE GAMES 1 AND 2 PLAYER INTERACTIVE CONTENT KINDLE GAMES AVAILABLE WORLDWIDE

TIC TAC TOE GAMES 1 AND 2 PLAYER INTERACTIVE CONTENT KINDLE GAMES AVAILABLE WORLDWIDE TIC TAC TOE GAMES 1 AND 2 PLAYER INTERACTIVE CONTENT KINDLE GAMES AVAILABLE WORLDWIDE page 1 / 5 page 2 / 5 tic tac toe games pdf Tic-tac-toe (American English), noughts and crosses (British English) or

More information

The Game of SET R, and its Mathematics.

The Game of SET R, and its Mathematics. The Game of SET R, and its Mathematics. Bobby Hanson April 2, 2008 But, as for everything else, so for a mathematical theory beauty can be perceived but not explained. A. Cayley Introduction The game of

More information

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

Eleventh Annual Ohio Wesleyan University Programming Contest April 1, 2017 Rules: 1. There are six questions to be completed in four hours. 2. Eleventh Annual Ohio Wesleyan University Programming Contest April 1, 217 Rules: 1. There are six questions to be completed in four hours. 2. All questions require you to read the test data from standard

More information

Introduction Solvability Rules Computer Solution Implementation. Connect Four. March 9, Connect Four 1

Introduction Solvability Rules Computer Solution Implementation. Connect Four. March 9, Connect Four 1 Connect Four March 9, 2010 Connect Four 1 Connect Four is a tic-tac-toe like game in which two players drop discs into a 7x6 board. The first player to get four in a row (either vertically, horizontally,

More information

UNIT 13A AI: Games & Search Strategies

UNIT 13A AI: Games & Search Strategies UNIT 13A AI: Games & Search Strategies 1 Artificial Intelligence Branch of computer science that studies the use of computers to perform computational processes normally associated with human intellect

More information

Announcements. Homework 1 solutions posted. Test in 2 weeks (27 th ) -Covers up to and including HW2 (informed search)

Announcements. Homework 1 solutions posted. Test in 2 weeks (27 th ) -Covers up to and including HW2 (informed search) Minimax (Ch. 5-5.3) Announcements Homework 1 solutions posted Test in 2 weeks (27 th ) -Covers up to and including HW2 (informed search) Single-agent So far we have look at how a single agent can search

More information

Solutions to Part I of Game Theory

Solutions to Part I of Game Theory Solutions to Part I of Game Theory Thomas S. Ferguson Solutions to Section I.1 1. To make your opponent take the last chip, you must leave a pile of size 1. So 1 is a P-position, and then 2, 3, and 4 are

More information

Step-by-Step Guide Query Studio Grouping, Sorting, Sectioning, Filtering and Calculations. Grouping

Step-by-Step Guide Query Studio Grouping, Sorting, Sectioning, Filtering and Calculations. Grouping There are several ways that data contained in reports run using Query Studio can be formatted. Data can be auto-summarized by grouping the data based on specific criteria, data can be sorted in ascending

More information

1 Introduction. 1.1 Game play. CSC 261 Lab 4: Adversarial Search Fall Assigned: Tuesday 24 September 2013

1 Introduction. 1.1 Game play. CSC 261 Lab 4: Adversarial Search Fall Assigned: Tuesday 24 September 2013 CSC 261 Lab 4: Adversarial Search Fall 2013 Assigned: Tuesday 24 September 2013 Due: Monday 30 September 2011, 11:59 p.m. Objectives: Understand adversarial search implementations Explore performance implications

More information

Illustrative Mathematics. Alignments to Content Standards: 4.OA.B. Task. Below is a multiplication table for single digit numbers:

Illustrative Mathematics. Alignments to Content Standards: 4.OA.B. Task. Below is a multiplication table for single digit numbers: 4.OA Identifying Multiples Alignments to Content Standards: 4.OA.B Task Below is a multiplication table for single digit numbers: 1 Use a different copy of the multiplication table for each of the questions

More information

1 Modified Othello. Assignment 2. Total marks: 100. Out: February 10 Due: March 5 at 14:30

1 Modified Othello. Assignment 2. Total marks: 100. Out: February 10 Due: March 5 at 14:30 CSE 3402 3.0 Intro. to Concepts of AI Winter 2012 Dept. of Computer Science & Engineering York University Assignment 2 Total marks: 100. Out: February 10 Due: March 5 at 14:30 Note 1: To hand in your report

More information

Programming an Othello AI Michael An (man4), Evan Liang (liange)

Programming an Othello AI Michael An (man4), Evan Liang (liange) Programming an Othello AI Michael An (man4), Evan Liang (liange) 1 Introduction Othello is a two player board game played on an 8 8 grid. Players take turns placing stones with their assigned color (black

More information

Let s Play Math Games!

Let s Play Math Games! Let s Play Math Games! July, at : pm Arizona Families for Home Education Conference presented by Kathleen Cotter Lawler based on the work of Dr. Joan A. Cotter // Games Math Games Games provide instant

More information

Game Playing. Why do AI researchers study game playing? 1. It s a good reasoning problem, formal and nontrivial.

Game Playing. Why do AI researchers study game playing? 1. It s a good reasoning problem, formal and nontrivial. Game Playing Why do AI researchers study game playing? 1. It s a good reasoning problem, formal and nontrivial. 2. Direct comparison with humans and other computer programs is easy. 1 What Kinds of Games?

More information

Pay attention to how flipping of pieces is determined with each move.

Pay attention to how flipping of pieces is determined with each move. CSCE 625 Programing Assignment #5 due: Friday, Mar 13 (by start of class) Minimax Search for Othello The goal of this assignment is to implement a program for playing Othello using Minimax search. Othello,

More information

Formidable Fourteen Puzzle = 6. Boxing Match Example. Part II - Sums of Games. Sums of Games. Example Contd. Mathematical Games II Sums of Games

Formidable Fourteen Puzzle = 6. Boxing Match Example. Part II - Sums of Games. Sums of Games. Example Contd. Mathematical Games II Sums of Games K. Sutner D. Sleator* Great Theoretical Ideas In Computer Science Mathematical Games II Sums of Games CS 5-25 Spring 24 Lecture February 6, 24 Carnegie Mellon University + 4 2 = 6 Formidable Fourteen Puzzle

More information

Exploring Concepts with Cubes. A resource book

Exploring Concepts with Cubes. A resource book Exploring Concepts with Cubes A resource book ACTIVITY 1 Gauss s method Gauss s method is a fast and efficient way of determining the sum of an arithmetic series. Let s illustrate the method using the

More information

COSC 117 Programming Project 2 Page 1 of 6

COSC 117 Programming Project 2 Page 1 of 6 COSC 117 Programming Project 2 Page 1 of 6 Tic Tac Toe For this project, you will write a program that allows users to repeatedly play the game of Tic Tac Toe against the computer. See http://en.wikipedia.org/wiki/tic-tac-toe

More information

G51PGP: Software Paradigms. Object Oriented Coursework 4

G51PGP: Software Paradigms. Object Oriented Coursework 4 G51PGP: Software Paradigms Object Oriented Coursework 4 You must complete this coursework on your own, rather than working with anybody else. To complete the coursework you must create a working two-player

More information

A Tic Tac Toe Learning Machine Involving the Automatic Generation and Application of Heuristics

A Tic Tac Toe Learning Machine Involving the Automatic Generation and Application of Heuristics A Tic Tac Toe Learning Machine Involving the Automatic Generation and Application of Heuristics Thomas Abtey SUNY Oswego Abstract Heuristics programs have been used to solve problems since the beginning

More information

The Factor Game (gr. 3-5) Product Game (gr. 3-5) Target Number (exponents) (gr. 4-5)

The Factor Game (gr. 3-5) Product Game (gr. 3-5) Target Number (exponents) (gr. 4-5) The Factor Game (gr. 3-5) Product Game (gr. 3-5) Target Number (exponents) (gr. 4-5) The Factor Game ( Gr. 3-5) Player A chooses a number on the game board and circles it. Using a different color, Player

More information

Past questions from the last 6 years of exams for programming 101 with answers.

Past questions from the last 6 years of exams for programming 101 with answers. 1 Past questions from the last 6 years of exams for programming 101 with answers. 1. Describe bubble sort algorithm. How does it detect when the sequence is sorted and no further work is required? Bubble

More information

150 Students Can t Be Wrong! GamesCrafters,, a Computational Game Theory Undergraduate Research and Development Group at UC Berkeley

150 Students Can t Be Wrong! GamesCrafters,, a Computational Game Theory Undergraduate Research and Development Group at UC Berkeley 200 150 Students Can t Be Wrong! GamesCrafters,, a Computational Game Theory Undergraduate Research and Development Group at UC Berkeley 2007-11-13 @ 12:00-13:00 EST in Theatre 3 ICT, 111 Barry St, Carlton,

More information

Adversary Search. Ref: Chapter 5

Adversary Search. Ref: Chapter 5 Adversary Search Ref: Chapter 5 1 Games & A.I. Easy to measure success Easy to represent states Small number of operators Comparison against humans is possible. Many games can be modeled very easily, although

More information

Wednesday, February 1, 2017

Wednesday, February 1, 2017 Wednesday, February 1, 2017 Topics for today Encoding game positions Constructing variable-length codes Huffman codes Encoding Game positions Some programs that play two-player games (e.g., tic-tac-toe,

More information

CS61B, Fall 2014 Project #2: Jumping Cubes(version 3) P. N. Hilfinger

CS61B, Fall 2014 Project #2: Jumping Cubes(version 3) P. N. Hilfinger CSB, Fall 0 Project #: Jumping Cubes(version ) P. N. Hilfinger Due: Tuesday, 8 November 0 Background The KJumpingCube game is a simple two-person board game. It is a pure strategy game, involving no element

More information

Game, Set, and Match Carl W. Lee September 2016

Game, Set, and Match Carl W. Lee September 2016 Game, Set, and Match Carl W. Lee September 2016 Note: Some of the text below comes from Martin Gardner s articles in Scientific American and some from Mathematical Circles by Fomin, Genkin, and Itenberg.

More information

Plan. Related courses. A Take-Away Game. Mathematical Games , (21-801) - Mathematical Games Look for it in Spring 11

Plan. Related courses. A Take-Away Game. Mathematical Games , (21-801) - Mathematical Games Look for it in Spring 11 V. Adamchik D. Sleator Great Theoretical Ideas In Computer Science Mathematical Games CS 5-25 Spring 2 Lecture Feb., 2 Carnegie Mellon University Plan Introduction to Impartial Combinatorial Games Related

More information

Problem 4.R1: Best Range

Problem 4.R1: Best Range CSC 45 Problem Set 4 Due Tuesday, February 7 Problem 4.R1: Best Range Required Problem Points: 50 points Background Consider a list of integers (positive and negative), and you are asked to find the part

More information

West Windsor-Plainsboro Regional School District Advanced Topics in Computer Science Grades 9-12

West Windsor-Plainsboro Regional School District Advanced Topics in Computer Science Grades 9-12 West Windsor-Plainsboro Regional School District Advanced Topics in Computer Science Grades 9-12 Unit 1: Recursion Content Area: Technology Course & Grade Level: Advanced Topics in Computer Science, 9

More information

Grade 7/8 Math Circles November 24/25, Review What have you learned in the past seven weeks?

Grade 7/8 Math Circles November 24/25, Review What have you learned in the past seven weeks? Faculty of Mathematics Waterloo, Ontario N2L 3G1 Centre for Education in Mathematics and Computing Grade 7/8 Math Circles November 24/25, 2015 Review What have you learned in the past seven weeks? First

More information

This game can be played in a 3x3 grid (shown in the figure 2.1).The game can be played by two players. There are two options for players:

This game can be played in a 3x3 grid (shown in the figure 2.1).The game can be played by two players. There are two options for players: 1. bjectives: ur project name is Tic-Tac-Toe game. This game is very popular and is fairly simple by itself. It is actually a two player game. In this game, there is a board with n x n squares. In our

More information

A fun way to challenge your math thinking! Grade Levels: 4th - 8th Time: 1 class period. Check out 36 BINGO Snapshot

A fun way to challenge your math thinking! Grade Levels: 4th - 8th Time: 1 class period. Check out 36 BINGO Snapshot Grade Levels: 4th - 8th Time: 1 class period A computation strategy game Check out 36 BINGO Snapshot What equations can you make with 4, 5, & 6? (6 X 4) 5 = 19 6 + 4 + 5 = 15 (6 5) + 4 = 5 Which equation

More information

7 = Part-Part-Whole. Games = 6 + 1

7 = Part-Part-Whole. Games = 6 + 1 Part-Part-Whole Games 7 = 6 + 1 5 + 2 = 6 + 1 Capture 4 Materials: Regular dice, Capture 4 board game, and cubes or whiteboard markers Play Capture 4 with 2 dice or 1 die. Kids can capture as many spaces

More information

Jim and Nim. Japheth Wood New York Math Circle. August 6, 2011

Jim and Nim. Japheth Wood New York Math Circle. August 6, 2011 Jim and Nim Japheth Wood New York Math Circle August 6, 2011 Outline 1. Games Outline 1. Games 2. Nim Outline 1. Games 2. Nim 3. Strategies Outline 1. Games 2. Nim 3. Strategies 4. Jim Outline 1. Games

More information

General Principals. Turn Priority - this player may choose which player goes first.

General Principals. Turn Priority - this player may choose which player goes first. General Principals The player who wins the pre-game roll off may either decide Turn Priority or Deployment Priority. If they choose Turn Priority, then their opponent is granted Deployment Priority. Turn

More information

ARTIFICIAL INTELLIGENCE (CS 370D)

ARTIFICIAL INTELLIGENCE (CS 370D) Princess Nora University Faculty of Computer & Information Systems ARTIFICIAL INTELLIGENCE (CS 370D) (CHAPTER-5) ADVERSARIAL SEARCH ADVERSARIAL SEARCH Optimal decisions Min algorithm α-β pruning Imperfect,

More information

Unit 12: Artificial Intelligence CS 101, Fall 2018

Unit 12: Artificial Intelligence CS 101, Fall 2018 Unit 12: Artificial Intelligence CS 101, Fall 2018 Learning Objectives After completing this unit, you should be able to: Explain the difference between procedural and declarative knowledge. Describe the

More information

LEARNING ABOUT MATH FOR GR 1 TO 2. Conestoga Public School OCTOBER 13, presented by Kathy Kubota-Zarivnij

LEARNING ABOUT MATH FOR GR 1 TO 2. Conestoga Public School OCTOBER 13, presented by Kathy Kubota-Zarivnij LEARNING ABOUT MATH FOR GR 1 TO 2 Conestoga Public School OCTOBER 13, 2016 6:30 pm 8:00 pm presented by Kathy Kubota-Zarivnij kathkubo@gmail.com TODAY S MATH TOOLS FOR counters playing cards dice interlocking

More information

Using Neural Network and Monte-Carlo Tree Search to Play the Game TEN

Using Neural Network and Monte-Carlo Tree Search to Play the Game TEN Using Neural Network and Monte-Carlo Tree Search to Play the Game TEN Weijie Chen Fall 2017 Weijie Chen Page 1 of 7 1. INTRODUCTION Game TEN The traditional game Tic-Tac-Toe enjoys people s favor. Moreover,

More information

2 person perfect information

2 person perfect information Why Study Games? Games offer: Intellectual Engagement Abstraction Representability Performance Measure Not all games are suitable for AI research. We will restrict ourselves to 2 person perfect information

More information

Example: I predict odd, roll a 5, and then collect that many counters. Play until time is up. The player with the most counters wins.

Example: I predict odd, roll a 5, and then collect that many counters. Play until time is up. The player with the most counters wins. Odds and Evens Skill: Identifying even and odd numbers Materials: 1 die to share 1. Each player takes 5 counters and puts the rest in a pile between them. 2. Player 1 predicts whether he will roll ODD

More information

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

Monday, February 2, Is assigned today. Answers due by noon on Monday, February 9, 2015. Monday, February 2, 2015 Topics for today Homework #1 Encoding checkers and chess positions Constructing variable-length codes Huffman codes Homework #1 Is assigned today. Answers due by noon on Monday,

More information

Gough, John , Doing it with dominoes, Australian primary mathematics classroom, vol. 7, no. 3, pp

Gough, John , Doing it with dominoes, Australian primary mathematics classroom, vol. 7, no. 3, pp Deakin Research Online Deakin University s institutional research repository DDeakin Research Online Research Online This is the published version (version of record) of: Gough, John 2002-08, Doing it

More information

Teacher Workbooks. Mathematics Series Multiplication Starter Pack Volume Teachnology Publishing Company A Division of Teachnology, Inc.

Teacher Workbooks. Mathematics Series Multiplication Starter Pack Volume Teachnology Publishing Company A Division of Teachnology, Inc. Teacher Workbooks Mathematics Series Multiplication Starter Pack Volume 1 2002 Teachnology Publishing Company A Division of Teachnology, Inc. For additional information, visit us at www.teach-nology.com/publishing

More information

Using a genetic algorithm for mining patterns from Endgame Databases

Using a genetic algorithm for mining patterns from Endgame Databases 0 African Conference for Sofware Engineering and Applied Computing Using a genetic algorithm for mining patterns from Endgame Databases Heriniaina Andry RABOANARY Department of Computer Science Institut

More information

Roll & Make. Represent It a Different Way. Show Your Number as a Number Bond. Show Your Number on a Number Line. Show Your Number as a Strip Diagram

Roll & Make. Represent It a Different Way. Show Your Number as a Number Bond. Show Your Number on a Number Line. Show Your Number as a Strip Diagram Roll & Make My In Picture Form In Word Form In Expanded Form With Money Represent It a Different Way Make a Comparison Statement with a Greater than Your Make a Comparison Statement with a Less than Your

More information

Randomized Algorithms

Randomized Algorithms Presentation for use with the textbook, Algorithm Design and Applications, by M. T. Goodrich and R. Tamassia, Wiley, 2015 Randomized Algorithms Randomized Algorithms 1 Applications: Simple Algorithms and

More information