Create a Tic Tac Toe game with f# and write a report about it using Declarative Programming and Math
Budget: £420 – £590 GBP
Here are the tasks which will need to be given this all based in F# there are four tasks altogether I will include Task 1 and 2 here as a example on what needs to be done while I will link a pdf file which will include all four tasks:
Task 1:
Task 1: Planning and Designing an Interactive Tic Tac Toe command line game
Based on the Tic Tac Toe game project previously, the company wants you to create a small- scale prototype for the Tic Tac Toe game where it will take the form of an interactive command line program.
The program should aim to implement the following features:
• Allow a player to start a new 2-player game
• Allow each player to take turns placing tokens
• Allow the game to judge when a given player (either X or O) has won the game
Using your developing understanding of how to plan out a program, you should plan out the program using appropriate techniques, considering the following key areas:
• Specify, explain, and justify appropriate methods of user interaction for the program
via the use of Gherkin specifications based in Hoare logic
• Specify, explain, and justify an appropriate data model for the various kinds of data
the program will deal with, supported by appropriate data type and data structure
definitions based in Set theory. This should be accompanied by appropriate Type
definitions within the programming language based on the Set theory definitions.
• Specify, explain, and justify an appropriate set of behaviors for the program,
supported by appropriate definitions based in Mathematical Relations, Mathematical
Functions, and Graph Theory.
Task 2 : Implementation of an Interactive Tic Tac Toe command line game
Based on the Tic Tac Toe game project previously, the company wants you to create a small-scale prototype for the Tic Tac Toe game where it will take the form of an interactive command line program.
The program should aim to implement the following features:
• Allow a player to start a new 2-player game
• Allow each player to take turns placing tokens
• Allow the game to judge when a given player (either X or O) has won the game
Using your developing understanding of how to implement a program, you should implement the Tic-Tac-Toe command line program using appropriate techniques, considering the following key areas:
• Produce, discuss, and justify an appropriate implementation for the various pieces of
data using the target functional programming language to effectively leverage
appropriate type definitions, data structures, etc.
• Produce, discuss, and justify an appropriate collection of "behavior step"
implementations (functions, etc) for the various features of your program by effectively
leveraging functional programming1 techniques within the target functional
programming language
• Produce, discuss, and justify the overall program implementation by effectively
leveraging your previous data and behavior implementations, tying them together to
form a coherent "whole" program. You should aim for your discussion to be accompanied by reflection on your implementation process by considering what skills and knowledge you have learned, how you have attempted to improve your understanding of how to approach programming and specific areas you have identified where you will need to improve in the future when attempting to implement a given program
• Task 1: Planning and Design based on Mathematical and Declarative Programming
techniques
• Task 2 :Program Implementation based on Declarative Programming tools and
techniques
• Task 3: Testing and Verification of Programs via appropriate tools and techniques
• Task 4: Understanding and exploring team-based software development
I don't want a high mark as I dont deserve it so keep it basic please and don't go in depth and keep the code very simple I want this done with I am currently under a lot of pressure with family, work and studying and I can't cope plus with covid it makes things so much harder.
Task 1:
Task 1: Planning and Designing an Interactive Tic Tac Toe command line game
Based on the Tic Tac Toe game project previously, the company wants you to create a small- scale prototype for the Tic Tac Toe game where it will take the form of an interactive command line program.
The program should aim to implement the following features:
• Allow a player to start a new 2-player game
• Allow each player to take turns placing tokens
• Allow the game to judge when a given player (either X or O) has won the game
Using your developing understanding of how to plan out a program, you should plan out the program using appropriate techniques, considering the following key areas:
• Specify, explain, and justify appropriate methods of user interaction for the program
via the use of Gherkin specifications based in Hoare logic
• Specify, explain, and justify an appropriate data model for the various kinds of data
the program will deal with, supported by appropriate data type and data structure
definitions based in Set theory. This should be accompanied by appropriate Type
definitions within the programming language based on the Set theory definitions.
• Specify, explain, and justify an appropriate set of behaviors for the program,
supported by appropriate definitions based in Mathematical Relations, Mathematical
Functions, and Graph Theory.
Task 2 : Implementation of an Interactive Tic Tac Toe command line game
Based on the Tic Tac Toe game project previously, the company wants you to create a small-scale prototype for the Tic Tac Toe game where it will take the form of an interactive command line program.
The program should aim to implement the following features:
• Allow a player to start a new 2-player game
• Allow each player to take turns placing tokens
• Allow the game to judge when a given player (either X or O) has won the game
Using your developing understanding of how to implement a program, you should implement the Tic-Tac-Toe command line program using appropriate techniques, considering the following key areas:
• Produce, discuss, and justify an appropriate implementation for the various pieces of
data using the target functional programming language to effectively leverage
appropriate type definitions, data structures, etc.
• Produce, discuss, and justify an appropriate collection of "behavior step"
implementations (functions, etc) for the various features of your program by effectively
leveraging functional programming1 techniques within the target functional
programming language
• Produce, discuss, and justify the overall program implementation by effectively
leveraging your previous data and behavior implementations, tying them together to
form a coherent "whole" program. You should aim for your discussion to be accompanied by reflection on your implementation process by considering what skills and knowledge you have learned, how you have attempted to improve your understanding of how to approach programming and specific areas you have identified where you will need to improve in the future when attempting to implement a given program
• Task 1: Planning and Design based on Mathematical and Declarative Programming
techniques
• Task 2 :Program Implementation based on Declarative Programming tools and
techniques
• Task 3: Testing and Verification of Programs via appropriate tools and techniques
• Task 4: Understanding and exploring team-based software development
I don't want a high mark as I dont deserve it so keep it basic please and don't go in depth and keep the code very simple I want this done with I am currently under a lot of pressure with family, work and studying and I can't cope plus with covid it makes things so much harder.