联系方式

  • QQ:99515681
  • 邮箱:99515681@qq.com
  • 工作时间:8:00-21:00
  • 微信:codinghelp

您当前位置:首页 >> Python编程Python编程

日期:2019-03-23 11:17

Assignment 02 (Due: Monday, March 25, 2019, 11 : 59 : 00PM

Central Time)

CSCE 322

1 Instructions

In this assignment, you will be required to write Haskell functions that simplify playing of the

variation of Connect Four.

1.1 Data File Specification

An example of properly formatted file is shown in Figure 1.

test03.cnf

Figure 1: A properly formatted encoding

2 One Player, One Move

The first part (onePlayerOneMove in the file csce322  assignment 03 part 01.hs) will take in two

(2) arguments (a game and a move) and returns the game that is the result of Player 1 dropping

a 1 into the column of the game denoted by the move. The 1 should fall (move down through the

-’s in the column) until it reaches a space that is not - or reaches the last row in the game. An

example is provided below

1

test03.cnf

test03.onePlayerOneMove.solution

" Result "

3 One Player, Many Moves

The second part (onePlayerManyMoves in the file csce322assignment03part02.hs) will take in

two (2) arguments (a game and a list of moves) and returns the game that is the result of Player

1 playing each move in succession (following the rules of onePlayerOneMove) until all of the moves

in the array have been played, or Player 1 has placed four (4) 1’s in a row horizontally, vertically,

or diagonally.

test03.cnf

" test03.onePlayerManyMoves.solution

" Result "

4 Many Players , One Move

The third part (manyPlayersOneMove in the file csce322assignment03part03.hs) will take in two

(2) arguments (a game and a list of moves) and returns the game that is the result of each player

in the game making exactly one move until each player has completed a move or a player has won

the game (placed four of their pieces vertically, horizontally, or diagonally). Player 1 places 1s,

Player 2 places 2s, etc. (you may assume the highest number in the provided game is the number

of players in the game). The moves are made in the order they appear in the moves array.

test03.cnf,

[1 ,4 ,4 ,3 ,4 ,5 ,3 ,6 ,5 ,2 ,4 ,5 ,5 ,2 ,4 ,3 ,6 ,2 ,6 ,1 ,1 ,1 ,5 ,4 ,3 ,5 ,6 ,3 ,6 ,6 ,2 ,3 ,4 ,4 ,4 ,6 ,1 ,5 ,4 ,6 ,6 ,6 ,2 ,6 ,5 ,3 ,4 ,5 ,3 ,5])

test03.manyPlayersOneMove.solution

" Result "

5 Many Players , Many Moves

The fourth part (manyPlayersManyMoves in the file csce322assignment03part04.hs) will take in

two (2) arguments (a game and a list of moves) and returns the game that is the result of each player

in the game taking turns making a move until all of the moves in the array have been exhausted

or a player has won the game (placed four of their pieces vertically, horizontally, or diagonally).

Player 1 places 1s, Player 2 places 2s, etc. (you may assume the highest number in the provided

game is the number of players in the game).

test03.cnf,

Page 4

[1 ,4 ,4 ,3 ,4 ,5 ,3 ,6 ,5 ,2 ,4 ,5 ,5 ,2 ,4 ,3 ,6 ,2 ,6 ,1 ,1 ,1 ,5 ,4 ,3 ,5 ,6 ,3 ,6 ,6 ,2 ,3 ,4 ,4 ,4 ,6 ,1 ,5 ,4 ,6 ,6 ,6 ,2 ,6 ,5 ,3 ,4 ,5 ,3 ,5])

test03.manyPlayersManyMoves.solution

" Result "

6 Extra Credit (10%)

Games will contain an arbitrary number of players.

7 Naming Conventions

Your files should follow the naming convention of

csce322assignment03part01.hs, csce322assignment03part02.hs, csce322assignment03part03.hs,

and csce322assignment03part04.hs.

7.1 Helpers.hs

A file named Helpers.hs has been provided with the functionality to read the .cnf files into lists.

If a modified Helpers.hs file is not included with your submission, the default will be used in its

place.

8 webgrader Note

Submissions will be tested with ghc. cse.unl.edu is currently running version 8.0.2 of ghc.

9 Point Allocation

10 External Resources

Learn Haskell Fast and Hard

Learn You a Haskell for Great Good!

Red Bean Software

Functional Programming Fundamentals The Haskell Cheatsheet

Page 5

Component Points

csce322assignment03part01.hs

Compilation 10

Test Cases 1 × 10

Total 20

csce322assignment03part02.hs

Compilation 10

Test Cases 1 × 10

Total 20

csce322assignment03part03.hs

Compilation 10

Test Cases 1 × 20

Total 30

csce322assignment03part04.hs

Compilation 10

Test Cases 1 × 20

Total 30

Total 100


版权所有:编程辅导网 2021 All Rights Reserved 联系方式:QQ:99515681 微信:codinghelp 电子信箱:99515681@qq.com
免责声明:本站部分内容从网络整理而来,只供参考!如有版权问题可联系本站删除。 站长地图

python代写
微信客服:codinghelp