Fill This Form To Receive Instant Help

Help in Homework
trustpilot ratings
google ratings


Homework answers / question archive / COM5001 ASSIGNMENT BRIEF  Module Code-COM5001 Assessment Task - Software development and documentation  Word Count       2000 words for report Assessment No 1              of            1              Weighting           100% Type of Submission         Porfolio Method of Submission  Electronic through moodle and gitlab Anonymous marking      Not anonymous

COM5001 ASSIGNMENT BRIEF  Module Code-COM5001 Assessment Task - Software development and documentation  Word Count       2000 words for report Assessment No 1              of            1              Weighting           100% Type of Submission         Porfolio Method of Submission  Electronic through moodle and gitlab Anonymous marking      Not anonymous

Computer Science

COM5001 ASSIGNMENT BRIEF  Module Code-COM5001 Assessment Task - Software development and documentation 

Word Count       2000 words for report

Assessment No 1              of            1              Weighting           100%

Type of Submission         Porfolio

Method of Submission  Electronic through moodle and gitlab

Anonymous marking      Not anonymous. Documentation is closely linked to code and code cannot be anonymous.

Code of Assessment 29.5.2

c) Subject-specific skills exercises or product creation e.g. artwork, product design, video production, performances.

Learning Outcomes

1.            Demonstrate understanding of facts, concepts, principles and theories relating to intermediate level computer programming;

2.            analyse, model, design, test, and evaluate intermediate level computer  programmes;

3.            apply appropriate theory, practices and tools for the specification, design, development and evaluation of intermediate computing  systems including programming in a high level language;

4.            Solve problems and represent ideas at different levels of abstraction.

Assignment Description

 

A Brand New Pokedex

You’ve been tasked with developing a prototype for a new Pokedex that uses some form of linked list to store the player and Pokemon data.

Task Summary

Develop a program that mimics a Pokedex from Pokemon. A Pokedex is an encyclopedia type information system that stores a list of Pokemon and information about those Pokemon. (see www.Pokemon.com/uk/Pokedex/).

You need to implement the following

1.            A Struct to represent the top level of the Pokedex. It holds the head of two lists – a list of players and a list of Pokemon.

2.            A list of Pokemon, storing the details of a Pokemon in each node.

3.            A list of Players. Each node represents a player and stores a list of Pokemon captured by that player.

4.            Pokedex Functionality

You also need to write a report on your program that covers

1.            The Structs you have created

2.            The list types you chose and why

3.            Where in memory the various parts of the Pokedex are stored, and what this means.

4.            Explain DisplayPlayerDetails () function – how it works.

Pokedex Program

Pokedex Structure

You should create a struct called Pokedex which stored two pointers – one to the head of the player list and one to the head of the Pokemon list. A variable of the Pokedex type called pokedex should be created. You should pass this pokedex variable to functions rather than pointers to the head of either list.

Pokemon List

You should create a list of Pokemon. The list should be connected by pointers so that it can expand as required. It can be a singly or doubly linked list, or a tree structure.

Create a struct for each node in the list called PokemonNode. Each node in the list should store – the Pokemon’s name, its type and its primary ability as strings. Assume each Pokemon has only a single type and a single ability.

You should implement the basic functionality required for your list type, functions to – create new nodes, add a node to the list, to find a specific node (by Pokemon name).

Functions

•             PokemonNode* NewPokemonNode(name, type, ability) – creates a new node and returns a pointer to that node

•             void AddPokemonToList(*pokedex, name, type, ability) – checks to see if name already exists in the Pokemon list. If it doesn’t it creates a new node and adds it to the list. It the Pokemon already exists it does nothing.

•             PokemonNode* FindPokemon(pokedex, name) searches the Pokemon list for name. If it finds name it returns a pointer to the name’s node otherwise it returns NULL.

Player List

You should create a list of players. The list should be connected by pointers so that it can expand as required. It can be a singly or doubly linked list, or a tree structure.

Create a struct for each node in the list called PlayerNode. Each node in the list should store – the player’s name as a string, a count of Pokemon owned, and an array of pointers to the Pokemon owned by that player. This can be an array or a dynamic structure. It should consist of pointers to the relevant Pokemon nodes in the Pokemon list.

You should implement the basic functionality required for your list type, functions to – create new nodes, add a node to the list, to find a specific node (by player name).

Functions

•             PlayerNode* NewPlayerNode(name) – creates a new node and returns a pointer to that node. The Pokemon count should be set to zero.

•             void AddPlayerToList(*pokedex, name) – checks to see if name already exists in the Player list. If it doesn’t it creates a new node and adds it to the list. It the player already exists it does nothing.

•             PlayerNode* FindPlayer(pokedex, name) searches the Player list for name. If it finds name it returns a pointer to the name’s node otherwise it returns NULL.

Additionally, you will need to implement the following functions

•             void AddPokemonToPlayer(pokedex, player name, pokemon name) that adds the Pokemon to the player’s Pokemon list (if it is not already in there) and increments the Pokemon count for that player.

 

PokemonNode* PokemonArray[20]; as part of PlayerNode, to store pointers to the nodes in the Pokemon list for the Pokemon that player has captured.

 

Pokedex Functionality

You will need to implement the following functions

•             void DisplayPokemonDetails(pokedex, name) – outputs the details of name to the screen

•             void DisplayPlayerDetails(pokedex, name) – outputs the details of name to the screen, including a list of names of all the Pokemon owned

•             void ListPokemon(pokedex) – outputs a list of names of all Pokemon in the Pokedex

•             void ListPlayers pokedex) – outputs a list of names of all players in the Pokedex

 

Pokedex Structure Example (Singly Linked List)

 

Pokedex Report (2000 Words)

Write a report describing your Pokedex application, focusing on the details below

•             Describe the structs you have created - Pokedex, PokemonNode and PlayerNode. Explain why you have created them the way you have

•             Explain what type of lists you have used for the Pokemon and Player lists. Explain why you have created then the way you have and how they work.

•             Explain where in memory the Pokedex variable and the Pokemon and Player lists are. Explain what this means.

•             Explain how DisplayPlayerDetails(pokedex, name) works. You should explain the functionality and also which types of memory are used. You should discuss what happens on the Stack and the Heap.

•            

Assessment Regulations

•             Your attention is drawn to the University policy on academic misconduct (Academic Misconduct Policy). Penalties will be applied where a student is found guilty of academic misconduct, including termination of programme.

•             You are required to keep to the word/time limit set for an assessment and to note that you may be subject to penalty if you exceed that limit (Agreed Penalties Policy).  You are required to provide an accurate word count on the cover sheet for each piece of work you submit.

•             For a first assessment attempt a penalty may be applied for late or non-submission of work by the published deadline or an approved extended deadline (Agreed Penalties Policy).

•             Where a re-assessment opportunity exists, late or non-submission of work receives a mark of zero and is not eligible for a capped mark (Agreed Penalties Policy and Reassessment)

•             An extension to the published deadline may be granted to an individual student if they meet the eligibility criteria of the Exceptional Circumstances policy.

 

Note

Feedback Policy: Marks are to be returned to students with the caveat that all marks are provisional until final approval by the School Assessment Board (SAB). Confirmed marks will be made available via e:Vision after the SAB meeting.

 

 

Marking Rubric

Option 1

Low Cost Option
Download this past answer in few clicks

22.99 USD

PURCHASE SOLUTION

Already member?


Option 2

Custom new solution created by our subject matter experts

GET A QUOTE