日本欧洲视频一区_国模极品一区二区三区_国产熟女一区二区三区五月婷_亚洲AV成人精品日韩一区18p

CHC5028代做、C/C++程序設(shè)計代寫

時間:2023-11-03  來源:  作者: 我要糾錯


CHC5028代做、C/C++程序設(shè)計代寫
CHC5028 Software Development with
C/C++
Coursework
Important Dates
Week 5 (30/10/2023-3/11/2023): Mandatory demonstration of Exercise 1, feedback with
preliminary marks.
Week 10 (4/12/2023-8/12/2023): Mandatory demonstration of Exercise 2, feedback with
preliminary marks.
Week 12 (18/12/2023-22/12/2023): Final demonstration and submission.
Background
“Text adventures”, now called “interactive fiction”, were among the first type of computer
game ever produced. These games have no graphics; the player reads the story of the
game in text, and decides what their character will do by typing commands at a prompt.
Although less popular now, text adventures are still played and created, and developed
into the original online RPGs (MUDs). You can play some sample modern text
adventures here:
A Change in the Weather, Spider and Web, Slouching Towards Bedlam, 北大俠客行
These are playable online via a web browser. It is advisable to try out the games to get
an understanding of how the games behave.
For this coursework, you will be creating a simple game engine for a text adventure.
You are not required to write an actual adventure, only the back-end program code that
would support one. You will need to add some material to the program in order to test it,
but this may just be simple test material. You may add interesting descriptions or stories
to your program if you want to, but there are no marks for doing so.
You are provided with a CLion project containing a very simple game harness which
supports only two commands: going north (north or n), and quitting (quit). Extend it
by doing the exercises below. Note that the later exercises are less explicitly described
than the earlier ones, meaning that you must solve more problems yourself. This is
intentional.
The coursework is written to be built using gcc through CMake and CLion. It is not
recommended that you attempt to build it using Visual Studio or XCode.
Important: If you are building the sample coursework on a platform other than
Windows, or on a machine which does not have the Windows API installed, you may
get an error in the file wordwrap.c. This file calls a Windows specific function to find the
width of the console. If you get this error, remove the #include <windows.h> from
the top of the file, and edit the initWordWrap() function by deleting its contents and
replacing them with consoleWidth = 80; currentConsoleOffset = 0;. You
can change 80 here to any number that makes the output comfortably readable.
Exercise 1 (10% of the mark)
In the current system you can only move North. Extend the engine to allow movement in
all four compass directions.
• Add properties to the Room class for storing east, south, and west exits. These
properties will need accessor methods. (3%)
• Add code to the gameLoop method to understand the commands east, south, and
west (and the abbreviations e, s and w) and to handle them in a similar way to
north. (3%)
• Modify initRooms to create more rooms using the new exits in order to test your
code. (2%)
• Find a more elegant way of implementing these exits which does not repeat code.
[Hint: Traversing through map structures/strings, etc. can be considered.] (2%)
Exercise 2 (50% of the mark)
A key part of most text adventure games is the ability to move objects around. Objects
can be found in rooms and can be picked up and put down by the player. Add this
capability to the game engine.
• Create a GameObject class. It should contain at least a short name, a long
description, and a keyword (for the player to use when typing commands). (5%)
• Modify the Room class so that each Room includes a list of GameObjects in the
room. (2%)
• Modify the State class to include a representation of a list of GameObjects the
player is carrying, called inventory. (2%)
• Modify the State class to include a representation of the player’s physical
strength, called strength, which is initiated as 100. (2%)
• Modify the gameLoop method to reduce strength by 1 per minute, when
strength goes to 0, the program shall be terminated. (5%)
• Create a derived class FoodObject of GameObject class, it should contain an
integer-type property named energy which should be limited in a range of 1-
10. (5%)
• Modify the Room::describe() method to also print out the short names of all the
objects in the room, formatted as nicely as possible. (2%)
• Modify the gameLoop method to pay attention to the second word of the command
the player enters, if there is one. (5%)
• Modify the gameLoop command to search through a) objects in the current room,
and b) objects in the inventory, for an object with a keyword matching the second
word of the command the player typed. (5%)
• Implement the player command get which, when typed with an object keyword, will
move that object from the current room list into the inventory. It should display
appropriate errors if the object is not in the room or the object is already in the
inventory or the object does not exist. (5%)
• Implement the player command drop which, when typed with an object keyword,
will move that object from the inventory into the current room list. It should display
appropriate errors if the object is not in the inventory or already in the room, or does
not exist, etc. (5%)
• Implement the player command inventory which will print out the short names of
all the objects in the inventory. (2%)
• Implement the player command examine which, when typed with an object
keyword, will print out the long description of that object. (2%)
• Implement the player command eat which, when typed with a food object
keyword, will print out the player’s strength after adding the energy of the
food object to the player’s strength, which should not exceed 100. (3%)
• Modify initRooms to create some GameObjects and FoodOjects and put them
in the rooms. Use this to test your program. (No marks are assigned specifically for
this task, but without it, the ones above cannot be demonstrated.)
Exercise 3 (40% of the mark)
Since most players will not want to play an entire game at one sitting, most games
include save and load (or restore) commands. Implement these commands. They
should ask the user for a filename and then write or read the current game state, to or
from that file.
Note that the layout and descriptions of rooms, and the list and descriptions of objects,
are not part of the game state because they do not change during the game. These
should not be included in the save file and saving them will lose marks.
A simple file open, load, and save does not guarantee full marks and may not
guarantee “a good mark”.
To this end, some important points to consider:
• The “game state” may also include the locations of objects the player has dropped in
rooms. Would it be a good idea to restructure how object locations are stored?
• The State object stores the current room, and objects, using pointers. Pointers
cannot safely be written to disk since addresses may be different when the program
is reloaded. How can you enable this data to be safely saved and reloaded?
• It is worth ensuring to some degree that the user cannot readily cheat, or spoil the
game, by reading or changing a save file. While it is not necessary to implement
actual authentication or encryption but at the same time, the file does not have to be
just a text dump. This actually makes it harder to parse when loaded. So, for
example, saving the required indexes into a static array of strings may be a better
way than saving the strings themselves.
Marking scheme for this section:
• 5% for basic correct structure of I/O.
• 5% for handling errors appropriately.
• 10% for the file format designed for storing the saved game.
• 10% for the code that performs the save.
• 10% for the code that performs the load.
Assessment Rules
Code will be assessed by a demonstration and viva in week 12. You will be asked to
demonstrate your code and to explain how it works. There is no hard division of marks
between code and viva.
If you cannot explain your code sufficiently well to satisfy the assessor that it is
your own work, they have the right to award 0 marks for that exercise, regardless
of the quality of the code.
The fact that your code works does not guarantee full marks. All code is expected
to also be readable, maintainable, and efficient. You are not required to exactly follow
the steps in the exercises above. Alternative designs are also acceptable if they can be
justified in the viva. However, designs which substantially reduce efficiency or other
desirable properties without corresponding benefit will lose marks.
In addition to final submission in Week 12, there will be two mandatory feedback
sessions as follows:
• Week 5(30/10/2023-3/11/2023):
Exercise 1 will need to be demonstrated.
• Week 10(4/12/2023-8/12/2023):
Exercise 2 will need to be demonstrated.
During these two weeks, you must demonstrate your coursework and you will be given
a preliminary mark, and detailed feedback.
• The deadline for submission of the coursework is Week 12.
• In Week 12 you will also be required to demonstrate the final version of
your work, and verbal feedback will be given.
Exercise 2 needs to be demonstrated in Week 10, and not in Week 5, although general
queries can be discussed.
Exercise 3 does not need to be not demonstrated in Weeks 5 or 10, although you may
demonstrate it for feedback if you wish. Its contribution to the mark is not subject to the
cap, although it will be difficult to score highly on Exercise 3 if you did not complete
Exercises 1 and 2.
Notice on presentation and submission.
You do not need to give a presentation nor submit a report for either section of the
coursework. This coursework’s focus is on the quality of your final code and on your
ability to understand it, not your software engineering process (which is not expected to
be standard when you are learning the language).
Standard rules on plagiarism apply to this coursework.
The Code should be your own work and must not be copied from the internet or
any other source. If you have difficulty with the coursework, you should approach your
practical tutor in the first instance. Posting questions about the coursework on Stack
Overflow, Quora, or similar sites may be treated as an incitement to plagiarism. Posting
parts of your answer to the coursework on the publicly available internet where other
students may access it will be treated asan incitement to plagiarism. Soliciting or
obtaining answers to the coursework in exchange for money and any other
consideration will be treated as serious academic misconduct. Asking for coursework
answers from any party outside of the University is itself attempted plagiarism and you
should not do it; if that third party commits any of theoffenses in this section on your
behalf, you may be held responsible, even if you were not directly aware they would do
so (because you should not have asked them in the first place).
Assignment Data
Contact person Leon Liang, leon@zy.cdut.edu.cn
Learning outcomes See below.
Formative deadlines Week 5 (30/10/2023-3/11/2023):
Exercise 1 (Demonstration)
Week 10 (4/12/2023-8/12/2023):
Exercise 2 (Demonstration)
Formative feedback Week 5 (30/10/2023-3/11/2023):
Exercise 1 (Spoken interactive)
Week 10 (4/12/2023-8/12/2023):
Exercise 2 (Spoken interactive)
Summative deadline Week 12 (18/12/2023-22/12/2023)
Demonstration and Submission
Summative feedback Week 12 (18/12/2023-22/12/2023)
Spoken interactive
Final marks after assessment committees
Assignment Weighting 50% of module
Learning Outcomes
• Understand the fundamental concepts of C and C++ programming for object
manipulation, data structuring and input/output control.
• Refine a problem specification into a collection of C++ classes.
• Create a software artifact specified in terms of C++ objects and their interrelations.
• Research the techniques for safe and efficient programming in C and C++.
請加QQ:99515681 或郵箱:99515681@qq.com   WX:codehelp

標(biāo)簽:

掃一掃在手機打開當(dāng)前頁
  • 上一篇:指標(biāo)代寫代寫機構(gòu)進倉副圖 指標(biāo)公式
  • 下一篇:代寫CE4703、C++設(shè)計編程代做
  • 無相關(guān)信息
    昆明生活資訊

    昆明圖文信息
    蝴蝶泉(4A)-大理旅游
    蝴蝶泉(4A)-大理旅游
    油炸竹蟲
    油炸竹蟲
    酸筍煮魚(雞)
    酸筍煮魚(雞)
    竹筒飯
    竹筒飯
    香茅草烤魚
    香茅草烤魚
    檸檬烤魚
    檸檬烤魚
    昆明西山國家級風(fēng)景名勝區(qū)
    昆明西山國家級風(fēng)景名勝區(qū)
    昆明旅游索道攻略
    昆明旅游索道攻略
  • NBA直播 短信驗證碼平臺 幣安官網(wǎng)下載 歐冠直播 WPS下載

    關(guān)于我們 | 打賞支持 | 廣告服務(wù) | 聯(lián)系我們 | 網(wǎng)站地圖 | 免責(zé)聲明 | 幫助中心 | 友情鏈接 |

    Copyright © 2025 kmw.cc Inc. All Rights Reserved. 昆明網(wǎng) 版權(quán)所有
    ICP備06013414號-3 公安備 42010502001045

    日本欧洲视频一区_国模极品一区二区三区_国产熟女一区二区三区五月婷_亚洲AV成人精品日韩一区18p

              欧美怡红院视频| 亚洲日本va在线观看| 欧美国产三区| 亚洲欧美一区二区三区在线| 在线观看亚洲a| 国产欧美日韩在线观看| 欧美福利一区| 久久精品一区二区三区中文字幕| 亚洲精品永久免费精品| 国产一区视频观看| 国产精品嫩草久久久久| 欧美成人自拍视频| 久久露脸国产精品| 欧美在线视频免费| 亚洲一区二区在线免费观看视频 | 黄色综合网站| 国产精品国产亚洲精品看不卡15 | 亚洲精品一区二区三区福利| 国内在线观看一区二区三区| 国产精品青草久久| 国产精品乱码妇女bbbb| 欧美日韩三级在线| 欧美日本在线看| 欧美精品亚洲精品| 欧美国产免费| 欧美高清视频一区二区三区在线观看| 久久久综合网| 蜜月aⅴ免费一区二区三区 | 激情文学综合丁香| 国内外成人免费激情在线视频网站| 欧美三区在线观看| 国产精品黄视频| 国产精品久久久久久久9999| 国产精品高清一区二区三区| 国产精品久久一区主播| 国产精品爽爽ⅴa在线观看| 国产精品视频精品视频| 国产精品中文在线| 国产模特精品视频久久久久| 国产欧美日韩综合一区在线观看| 国产毛片一区| 国内外成人免费视频| 亚洲精品123区| 一本色道久久99精品综合 | 国产精品久久9| 国产日韩亚洲欧美综合| 国内精品久久久久伊人av| 精品不卡视频| 亚洲精品一区在线| 亚洲一区亚洲| 麻豆精品传媒视频| 欧美日韩国产综合网| 国产日韩欧美不卡在线| 在线精品观看| 亚洲手机在线| 久久露脸国产精品| 欧美日精品一区视频| 国产亚洲福利| 日韩视频免费在线| 久久国产综合精品| 欧美另类女人| 黑人巨大精品欧美黑白配亚洲| 亚洲国产高清高潮精品美女| 亚洲午夜久久久| 美女网站久久| 国产精品成人aaaaa网站| 一区二区三区在线免费播放| 亚洲精品护士| 久久精品国产一区二区三区免费看| 男女视频一区二区| 国产精品美女一区二区| 亚洲欧洲午夜| 久久久久久亚洲精品杨幂换脸 | 一区二区三区精品| 久久久久久国产精品一区| 欧美日韩国产高清| 136国产福利精品导航网址应用| 亚洲午夜久久久| 欧美高清视频在线| 伊人久久av导航| 午夜精品一区二区三区四区| 欧美日韩精品免费| 亚洲日韩第九十九页| 久久免费国产| 国内精品久久久久国产盗摄免费观看完整版 | 免费亚洲一区二区| 狠狠色丁香久久婷婷综合_中| 亚洲自拍电影| 国产精品久久久久久福利一牛影视| 在线免费观看欧美| 久久久蜜桃一区二区人| 国内精品久久久久久久果冻传媒 | 亚洲欧美日韩中文视频| 欧美久久久久久久| 亚洲精品在线免费| 欧美国产成人精品| 亚洲国产日韩欧美在线动漫| 另类天堂视频在线观看| 国产一区在线免费观看| 欧美一区二区免费观在线| 国产精品捆绑调教| 亚洲自拍偷拍一区| 国产乱码精品1区2区3区| 欧美一区二区高清| 国产午夜久久久久| 久久久免费观看视频| 精品成人在线观看| 欧美高清你懂得| 亚洲日本中文字幕| 欧美日韩精品免费观看视一区二区| 日韩网站免费观看| 国产精品久久999| 欧美影片第一页| 一色屋精品视频在线看| 欧美超级免费视 在线| 99精品免费视频| 欧美日韩亚洲一区三区| 亚洲综合电影| 在线观看久久av| 欧美另类在线观看| 午夜精品福利一区二区蜜股av| 国产自产2019最新不卡| 欧美不卡视频一区发布| 亚洲一区欧美二区| 精品成人一区二区三区四区| 免费观看日韩| 亚洲一区国产精品| 在线成人激情黄色| 欧美视频在线观看免费| 久久成人国产| 亚洲精品在线视频| 国产亚洲美州欧州综合国| 欧美高清视频| 欧美在线高清| 亚洲美女在线国产| 国内精品模特av私拍在线观看| 欧美日本高清| 久久久国产精品一区二区中文 | 99re66热这里只有精品4| 国产精品免费aⅴ片在线观看| 狼人天天伊人久久| 亚洲欧美另类国产| 亚洲精品一区二区三区av| 国产日韩在线播放| 欧美日韩亚洲综合| 美女精品国产| 久久精品日韩| 亚洲欧美日韩天堂| 国产精品v亚洲精品v日韩精品| 麻豆成人综合网| 性欧美办公室18xxxxhd| 一本色道久久综合亚洲精品婷婷| 韩国亚洲精品| 国产午夜精品视频| 国产精品任我爽爆在线播放| 欧美激情一二三区| 免费欧美网站| 久久最新视频| 久久久久久久91| 久久国产视频网站| 久久国产综合精品| 亚洲欧美日韩天堂| 性欧美办公室18xxxxhd| 亚洲欧美日韩一区在线观看| 亚洲私人黄色宅男| 在线综合欧美| 亚洲尤物在线视频观看| 一本大道av伊人久久综合| 亚洲激情在线观看| 亚洲精品日韩久久| 亚洲精品视频免费在线观看| 亚洲精品在线电影| 一本久道久久综合狠狠爱| 日韩一级裸体免费视频| av成人免费在线| 亚洲一卡二卡三卡四卡五卡| aa日韩免费精品视频一| 99精品免费网| 亚洲午夜久久久久久尤物 | 国产精品久久久久秋霞鲁丝| 欧美国产91| 欧美涩涩网站| 国产日韩欧美电影在线观看| 国产一区二区0| 伊人狠狠色j香婷婷综合| 亚洲黄色在线| aa亚洲婷婷| 欧美尤物一区| 毛片一区二区| 欧美香蕉视频| 国产中文一区二区| 亚洲精品久久久久中文字幕欢迎你 | 国产精品成人免费视频 | 国产三级精品三级| 亚洲第一区中文99精品| 一本色道久久综合亚洲91| 欧美一区二区三区久久精品| 欧美69wwwcom| 国产精品日日摸夜夜摸av| 激情国产一区二区|