加勒比久久综合,国产精品伦一区二区,66精品视频在线观看,一区二区电影

合肥生活安徽新聞合肥交通合肥房產生活服務合肥教育合肥招聘合肥旅游文化藝術合肥美食合肥地圖合肥社保合肥醫院企業服務合肥法律

代寫COMP 3023、C++程序設計代做

時間:2024-06-02  來源:合肥網hfw.cc  作者:hfw.cc 我要糾錯



COMP 3023 Design Patterns with C++ 
Assignment 1 COMP 3023 
Introduction 
In this individual assignment, you have been tasked by your client to create a command-line based 
simulation game in C++. In the game the player controls a team of devoted robots working for the 
company. Following the orders of the player, the robots have to perform dangerous exploration 
missions in hazardous locations in order to collect scrap. The scrap can then be sold to reach quota 
and unlock items that will increase the robot’s ability to work. Should the robots fail to meet the 
quota in time, they will be shut down. The goal of the player is to manage assets (money, items, 
robots and scrap) to keep the robots running for as long as possible. 
Assignment and submission requirements 
The assignment has the following requirements. Failing to address any of these requirements will 
result in deducted marks. 
1. The assignment must be submitted via CloudCampus. 
2. You must the full source code and be written in C++. 
3. It must build and run from Visual Studio 2022 on Windows. 
4. The code must be compressed using the common ZIP compression. 
5. The functioning executable must run from command line under Windows 10 or higher. 
6. The output needs to be in English 
Game overview 
The game is a single-player asset management game, where the player tries to stay alive for as long 
as possible. To do so, the player must meet a certain quota every 4 game days (also called a cycle). 
Money is made by sending robots to locations where scrap can be collected, and then selling this 
scrap later on. 
Every day, the player chooses a location and orders robots to go on expeditions in an attempt to 
collect scrap. Once the player chooses to leave the location, a new day begins. The player can also 
choose to travel home where the collected scrap can be sold for cash. 
The player does not control robots. Instead, they choose the number of robots they wish to send on 
exploration missions, and a chanced-based simulation determines how much scrap is collected and 
how many robots make it back. 
At the beginning of each day, 4 robots are available. When landed on the location, robots may die 
during expeditions. If all 4 robots are broken, the player is forced to leave the location and a new day 
begins. Robots that broke during the day are repaired at the beginning of the next day so that all 4 
robots are available again. 
The player should also pay attention to the weather of the location they land on. At the beginning of 
each day, the weather of each location is randomized. The weather will directly affect expedition 
simulation parameters such as the amount of scrap that can be collected by robots, and/or the 
survival chance of robots. To achieve all of these actions, the player uses a simple command system. All commands start with a 
word (e.g. “land”, “leave”, etc.) and may be followed by any number of arguments. 
Example session 
1. A typical session would proceed as follows: 
2. The player starts the game. They begin with a cargo value of $0 (no scrap), an initial balance 
of $50, a first quota of $150, and no items. Day 1 starts, and the player at home. 
3. The player uses the “locations” command to see what locations are available and what is 
their current weather conditions. 
4. The player makes a choice and uses the “route” command followed by the name of the 
location they wish to route to select a location. They may use this command as many times 
as they wish. 
5. Once they made up their mind, the player uses the “start” command, which marks the 
beginning of the landed phase. 
6. The player begins the landed phase with 4 robots alive. They use the “send” command, 
followed by the number of robots they wish to send to start an expedition. 
7. A simulation algorithm takes over and determines the number of robots that make it back 
alive as well as how much scrap they bring back based on parameters such as the chosen 
location and items bought. 
8. The player is told about the result of the expedition (e.g. “N robots made it back and brought 
$X worth of scrap”). That scrap is added to the cargo value (and not to the balance). From 
there, the player can re-use the “send” command as long as at least one robot is functioning. 
If, however, all robots breakdown as part of an expedition, all the cargo is lost, and the player 
leaves the location immediately. 
9. When the player feels like they’ve collected enough scrap, they can use the “leave” 
command to go back home. This will bring the current day to an end and start the next one, 
with all 4 robots working again. 
10. At that point, the player would typically repeat operations from step 2, 3, 4 or 5 up to 9. 
11. Alternatively, if they’d like to sell the collected scrap for cash, they can choose to navigate to 
home using the “route home” command. 
12. On the corporation location, the player would use the “sell” command, either on its own to 
sell all of their, or followed by an amount to sell only a fraction of it. This will effectively 
convert to scrap into usable money (in other words, the cargo value is transferred to their 
balance). 
13. When done, the player uses the “leave” command, which would also mark the end of that 
day. 
14. At the end of every 4 days, the player is expected to meet quota (reach the predefined cash 
threshold). Only the balance is considered, which means that the scrap must be sold before 
the end of the 4th day. If they fail to do so, the game displays the number of days they have 
survived before exiting. If they succeed, a new 4-day cycle begins with an increased quota. 
The quota amount is not deducted from the player’s balance. 
 Implementation 
Your assignment must design and implement at least the following classes: 
Game — The Game object drives the game. The Game object: 
• Is responsible for initialising a new game. 
• Is responsible for defining the locations & items available to the game. 
• Is responsible for showing the welcome screen. 
• Is responsible for running the 4-day cycle loop and the day loops. 
• Is responsible for reading, parsing and dispatching commands. 
• Is responsible for handling the following commands: 
o START 
o LEAVE 
o EXIT 
• Is responsible for keeping track of the balance. 
• Is responsible for keeping track of the location currently being orbited or landed on. 
• Is responsible for keeping track of the game phase (orbiting or landing). 
• Is responsible for keeping track of the cargo value. 
• Is responsible for keeping track of alive employees. 
• Holds the item manager, the location manager and the game’s random number generator 
instance. 
Location manager — Manages the locations and handles the related commands. The location 
manager: 
Keeps (a) data structure(s) containing all the locations defined by the Game, keeping the registration 
order (e.g. the order in which locations have been defined). 
Handles the following commands: 
LOCATIONS 
ROUTE 
When implementing the location manager, we suggest having a function that will be called by 
“Game” to register a location: 
void registerLocation(AbstractLocation* location); 
AbstractLocation — Represents the base type of a location in the game. The AbstractLocation class 
should be an abstract class so that differences between the corporation location and other locations 
can be handled properly. A location should: 
• Have a name 
• Contain an description for the weather conditions it is currently experiencing. 
• Handle the following commands: 
o SEND 
o SELL 
• Print a welcome message that will be displayed after reaching the location 
When implementing AbstractLocation, define an enum for weather conditions: (Clear, Flooded, 
Eclisped, Stormy). Add a function that returns its name: 
const std::string& name() const; 
Have a function that will be called by the game when a day begins: 
virtual void onDayBegin(Game& g); 
Have functions that handle the SELL and SEND commands: 
virtual void sellCargo(Game& g, int amount) = 0; 
virtual void sendEmployees(Game& g, int count) = 0; 
Hints and tips 
Random number generation. C++’s random number generation is relatively complex. It features 
different number generators and its syntax is a bit uncanny. To use it, make sure to create a single 
number generator instance that you will re-use everywhere in your code. For that, we will use 
mt19937 (MT19937 is one of many random number generator implementation): 
#include std::mt19937 
myGenerator(std::random_device{}()); 
You can then generate a random int between A and B (both inclusive) using the following code: 
std::uniform_int_distribution intDistribution(A, B); 
int myRandomNumber = intDistribution(myGenerator); 
Similarly, you can generate a random float between 0.0 and 1.0 (1.0 excluded) using the following 
code: 
std::uniform_real_distribution realDistribution; float 
myRandomNumber = realDistribution(myGenerator); 
 
Simulation algorithm 
The following pseudocode calculate and returns the outcome of an expedition: 
numOperators = 4 
robotSurvivalChance = robotsBaseSurvivalChance * 
survivalChanceMultiplier 
deadRobots = 0 
REPEAT numRobots TIMES: 
 revenue = randomIntBetween(minScrapValue * scrapValueMultplier, 
maxScrapValue * 
 scrapValueMultplier) 
 IF randomFloat01() < RobotsurvivalChance: 
 //This robot made it out alive 
 totalRevenue = totalRevenue + revenue 
 ELSE 
 totalRevenue = totalRevenue + revenue * lootRecoveryMultiplier  deadRobots = deadRobots + 1 
 END IF 
END REPEAT 
RETURN deadRobots, totalRevenue 

請加QQ:99515681  郵箱:99515681@qq.com   WX:codinghelp










 

掃一掃在手機打開當前頁
  • 上一篇:代寫159.234 OBJECT-ORIENTED程序
  • 下一篇:菲律賓達沃島旅游(達沃有機場嗎)
  • 無相關信息
    合肥生活資訊

    合肥圖文信息
    2025年10月份更新拼多多改銷助手小象助手多多出評軟件
    2025年10月份更新拼多多改銷助手小象助手多
    有限元分析 CAE仿真分析服務-企業/產品研發/客戶要求/設計優化
    有限元分析 CAE仿真分析服務-企業/產品研發
    急尋熱仿真分析?代做熱仿真服務+熱設計優化
    急尋熱仿真分析?代做熱仿真服務+熱設計優化
    出評 開團工具
    出評 開團工具
    挖掘機濾芯提升發動機性能
    挖掘機濾芯提升發動機性能
    海信羅馬假日洗衣機亮相AWE  復古美學與現代科技完美結合
    海信羅馬假日洗衣機亮相AWE 復古美學與現代
    合肥機場巴士4號線
    合肥機場巴士4號線
    合肥機場巴士3號線
    合肥機場巴士3號線
  • 短信驗證碼 目錄網 排行網

    關于我們 | 打賞支持 | 廣告服務 | 聯系我們 | 網站地圖 | 免責聲明 | 幫助中心 | 友情鏈接 |

    Copyright © 2025 hfw.cc Inc. All Rights Reserved. 合肥網 版權所有
    ICP備06013414號-3 公安備 42010502001045

    国产精品传媒精东影业在线| 精品久久91| 日韩精品第一区| 久久中文视频| 亚洲三级性片| 99精品国产一区二区青青牛奶| 美女国产精品| 99久久久久| 日韩有码中文字幕在线| 美女精品一区二区| 黑人精品一区| 伊人影院久久| 91精品久久久久久久蜜月| 国产一区二区三区91| 99精品国产一区二区青青牛奶| 超级白嫩亚洲国产第一| 一级欧洲+日本+国产| 国产 日韩 欧美 综合 一区| 久久精品99国产国产精| 中文字幕人成乱码在线观看 | 国产一区二区欧美| 久久精品97| 欧美xxxx做受欧美护士| 久久不射网站| 亚洲激情社区| 婷婷综合久久| 99国产精品一区二区| 成人av婷婷| 日韩在线视频一区二区三区| 国产精一区二区| 亚洲精品偷拍| 国产情侣一区| 黄页免费欧美| 91精品国产经典在线观看| 欧美3p视频| 色喇叭免费久久综合| 日韩中文欧美在线| 亚洲永久字幕| 夜夜夜久久久| 欧美日韩国产高清| 久久精品国产www456c0m| 成人午夜av| 国产精品99久久免费观看| y111111国产精品久久久| 中文字幕一区二区三区四区久久 | 国产精品婷婷| 国产精品五区| 午夜综合激情| 国产精品毛片| 天堂成人国产精品一区| 麻豆亚洲精品| 色综合狠狠操| 国产美女高潮在线观看| sm性调教片在线观看| 国产精品久久久久久久| 在线天堂资源| 国产一区二区三区国产精品| 国产精品第一| 日日摸夜夜添夜夜添国产精品| 欧美在线播放| 亚洲中无吗在线| 亚洲最新色图| 婷婷精品在线| 超碰地址久久| 欧美.www| 老**午夜毛片一区二区三区| 色综合久久一区二区三区| 日韩伦理视频| 久久中文字幕一区二区三区| 国语对白精品一区二区| 国产精品三级| 爱爱精品视频| 欧美91精品| 水蜜桃久久夜色精品一区的特点| 人在线成免费视频| 国产一区精品福利| 亚洲精品日本| 精品视频一二| 天堂综合网久久| 美女91精品| 成人国产精品一区二区免费麻豆| 另类小说综合欧美亚洲| 91视频亚洲| 超碰一区二区三区| 狠久久av成人天堂| 麻豆理论在线观看| 一区二区三区成人精品| 欧美三级一区| 精品一区二区三区的国产在线观看| 欧美综合另类| 国产精品久久久久久久| 欧美在线首页| 玖玖精品一区| 在线一级成人| 日韩在线综合| 国产一精品一av一免费爽爽| 国产亚洲精品美女久久| 日韩天堂av| 国产激情久久| 日韩av在线免费观看不卡| 久久一区二区三区喷水| 黄毛片在线观看| 国语对白精品一区二区| 第九色区aⅴ天堂久久香| 日韩午夜在线电影| 成人在线高清| 日韩精品社区| 亚洲深爱激情| 99精品国产福利在线观看免费| 久久久久久久久久久久电影| 99国产精品久久久久久久成人热| 第84页国产精品| 国产精品羞羞答答在线观看 | 日韩中文字幕无砖| 亚洲综合精品四区| 日日摸夜夜添夜夜添国产精品| 91成人福利| 国产精品普通话对白| 久久精品国产网站| 超碰在线成人| 人人爽香蕉精品| 中文在线日韩| 91精品综合| 不卡亚洲精品| 亚洲精品高潮| 亚洲黄色中文字幕| 伊人久久一区| 亚洲女同中文字幕| 99精品国产福利在线观看免费| 高清欧美性猛交xxxx黑人猛 | 欧美另类激情| 欧美a大片欧美片| 色老太综合网| 欧美视频不卡| 韩国精品主播一区二区在线观看| 日韩成人午夜电影| 丝袜美腿亚洲一区| 国产精区一区二区| 久久夜色精品| 久久99久久人婷婷精品综合| 老司机午夜精品视频| 国产精品视频一区视频二区| 日韩视频在线一区二区三区| 中文精品久久| 亚洲一级在线| 国产激情综合| 麻豆91精品| 亚洲成在人线免费观看| 日本久久精品| 91成人午夜| 成人免费网站www网站高清 | 久久精品999| 成人免费av| 麻豆一区二区在线| 红桃视频亚洲| 欧美人与拘性视交免费看| 亚洲综合不卡| 日韩国产在线不卡视频| 欧美亚洲日本精品| 少妇精品导航| 麻豆免费精品视频| av不卡免费看| 日韩理论电影中文字幕| 你懂得影院夜精品a| 欧美aaaaaaaa牛牛影院| 国产精品久久久久久模特| 在线看片不卡| 美女精品一区最新中文字幕一区二区三区 | 97精品97| 精品国产乱子伦一区二区| 国产成人精选| 九九久久成人| 国产一区二区在线| 日韩中文在线电影| 激情久久婷婷| 亚洲精品国产动漫| 男人天堂视频在线观看| 91精品国产自产在线观看永久∴| 日本欧美一区二区三区| 日韩精品一区第一页| 青青一区二区三区| 亚洲日本黄色| 日本欧美肥老太交大片| 精品一区二区男人吃奶| 日本欧美一区二区三区乱码| 四虎国产精品免费观看| 精品国产91乱码一区二区三区四区 | 免费看欧美女人艹b| 欧美日韩午夜| 欧美日韩ab| 天堂а√在线最新版中文在线| 999久久久亚洲| 亚洲免费专区| 欧美伊人久久| 国产精品99久久精品| 亚洲男女自偷自拍| 日本一区二区三区播放| 久久婷婷五月综合色丁香| 噜噜噜久久亚洲精品国产品小说| 国产乱论精品|