99爱在线视频这里只有精品_窝窝午夜看片成人精品_日韩精品久久久毛片一区二区_亚洲一区二区久久

合肥生活安徽新聞合肥交通合肥房產(chǎn)生活服務(wù)合肥教育合肥招聘合肥旅游文化藝術(shù)合肥美食合肥地圖合肥社保合肥醫(yī)院企業(yè)服務(wù)合肥法律

代寫CPT206、代做Java編程設(shè)計(jì)

時(shí)間:2024-05-14  來(lái)源:合肥網(wǎng)hfw.cc  作者:hfw.cc 我要糾錯(cuò)



Computer Programming for
Coursework 3 Task Specification
Thomas Selig
Set: Monday, 6 May, 2024
     
This is the specification task sheet for the Coursework 3 assessment component of your CPT206
      modul    e.   
        This assignment has two parts: a coding part described in Section 1, and
    a report described in Section 2. The submission deadline for this assignment is    ,   
2024, at 23:59 (China-time). Detailed submission instructions are provided in Section 3.
1 Program description (70 marks)
The aim of this coursework is to build a system which manages investments in companies’ shares. All
the work should be coded into a single Java NetBeans project, with the class structure and different
functionalities of the program described below. All classes should be properly encapsulated, as seen
in the Lectures and Labs throughout the semester. Your project should also contain a Controller
class for testing. You may leave some or all of your test code in the Controller class if you wish
when submitting, but no marks are allocated for this class’s contents in your submission. Instead
you will be asked to describe your testing in the report (see Section 2.3), and marked on that.
1.1 Market class (7 marks)
The Market class represents the current companies that are on the market, that is whose shares
can be traded (bought or sold). It therefore stores a collection of Company objects (see Section 1.2).
Any company can only appear on the market at most once. The class should also have methods
add() and remove() to add or remove a given company from the market, and contains() to check
if a given company is on the market or not. There will only be one market in the program, so all
members of the class should be static.
1.2 Company class (25 marks)
A Company object should store its (legal) name, a stability coefficient (a percentage between 0
and 100) indicating how stable its share prices are, and the history of its share prices. When a
Company object is created, its initial share price is specified (as well as the name and stability
coefficient). The history then consists of this initial share price. The Company class should have a
method getCurrentSharePrice() which returns the current share price of the company (this will
be the last share price in its history) and a method getInitialSharePrice() which returns the
1
initial share price of the company (this will be the first share price in its history). There should
be methods to add or remove the company from the market, and to check if it is currently on the
market. There should be a method updateSharePrice() to update the valuation of a company’s
share price, according to the following formula:
Sharenew = Sharelast (1 + (1 − stab) ∗ U),
where:
• Sharenew is the new current share price of the property (after update);
• Sharelast is its old current share price (before update);
• stab is the company’s stability coefficient;
• U is a uniform random variable on the interval [−1, 1].
The new share price should then be added to the company’s history (as its last element).
Finally, there should be a method getTrend(int movementNumber, int significance) to
determine the trend of a company’s share value based on a number of recent movements. Given
two share prices in a company’s history s1 and s2, the movement is simply the difference s2 −s1. A
movement is consecutive if it is between two consecutive share prices in the company’s history. A
movement is considered significant if the ratio |s2−s1|
s1
is greater than or equal to the significance
threshold. Otherwise it is insignificant. Here, the integer significance represents a percentage,
so the significance threshold should be the ratio significance / 100. The trend of the company
is then calculated by looking at the last movementNumber consecutive movements as follows.
• If strictly more than half of these are significant increases, and the share price has overall
increased significantly over the whole period, then the trend is increasing.
• If strictly more than half of these are significant decreases, and the share price has overall
decreased significantly over the whole period, then the trend is decreasing.
• If strictly more than half of these are insignificant, and the share price movement over the
whole period is also insignificant, then the trend is stable.
• Otherwise, the trend is uncertain. This includes the case where there is insufficient data in
the history.
For example, suppose movementNumber = 3, and the last four values in a company’s share history
are [100, 105, 97, 103], so that the last three consecutive movements are +5, −8, +6. The overall
movement over this period is 103 − 100 = 3.
• If the significance threshold is equal to 3% (or less), then the trend is increasing: the
consecutive movements +5 and +6 both meet the significance threshold (this is a strict
majority of them), as does the overall movement.
• If the significance threshold is equal to 7% (or more), then the trend is stable: the consecutive
movements +5 and +6 are both within the stability threshold, as is the overall movement.
• If the significance threshold is equal to 5%, then the trend is uncertain: while there are two
significant increases in the consecutive movements, the overall movement is too small to be
significant.
• If the significance threshold is equal to 6%, then the trend is also uncertain: the consecutive
movement +5 is insignificant, −8 is a significant decrease, and +6 is a significant increase, so
there is no majority of consecutive movement type.
2
1.3 (Basic)Strategy class (12 marks)
The investor will need to devise strategies determining when they should invest in a given company,
and how many shares they should buy when doing so. The building block for this will be a Strategy
interface, with a method invest(company) that takes as parameter a Company object, and returns
the number of shares to invest in based on the company’s current performance in the market. The
number returned is a signed integer, with a negative value indicating that the investor should sell
shares in that company.
The strategy should then be implemented through a BasicStrategy class. This class should
store a maxTransaction variable, indicating how much they are willing to invest or divest in shares
in a given transaction. It should also store variables movementNumber and significance. The
implementation of the invest(company) method should first calculate the company’s trend based
on these two variables, and then decide how much to invest/divest as follows.
• If the company’s trend is stable or uncertain, there is no investment to be made (the method
should return 0).
• If the company’s trend is increasing, the investor should buy shares. The number they buy
is equal to the maximal value such that they spend no more than maxTransaction on the
transaction.
• If the company’s trend is decreasing, the investor should sell shares. As above, the number
they sell is equal to the maximal value such that they receive no more than maxTransaction
from the transaction.
1.4 Investor class (16 marks)
Finally, your project should have an Investor class, responsible for managing investment in the
market (this could be an individual investor, or a company’s own investments in the market, for
example). Each investor should have a collection of companies (on the market) they are interested in
investing in. The investor should then associate to each of these a Strategy dictating how they will
invest, and the number of shares in the company they currently own. By default, Investor objects
are created with no companies of interest. They can also be created with a specified collection of
such companies together with their corresponding strategies, but no shares in any of the companies.
The various functionalities of the class are as follows.
• Investors can select a new company they are interested in, along with a specified strategy for
investing in that company (as above, initially they will have no shares in the company).
• Investors can decide they are no longer interested in a particular company. In that case, they
sell all the shares they currently own in that company, and it is removed from their collection
of interested companies.
• Otherwise, investment or divestment is entirely automatic, via an updateInvestment()
method. This updates the share prices of all companies the investor is interested in. For
each of these, the investor then runs the invest() method from the corresponding strategy,
and chooses to buy or sell shares according to this method’s output. This will potentially
modify the number of shares the investor currently holds in that company. Note that if the
output of invest() would cause the investor to sell more shares in a company than they
currently own, they should simply sell all of the owned shares.
3
1.5 Code quality (10 marks)
The remaining marks (10) will be awarded for the quality of your code, as covered throughout the
semester in the Lectures and Labs.
• Keep your code neat and tidy; make sure it is properly indented throughout.
• Choose suitable names for variables and methods, respecting standard Java naming conventions.
• Comment your code as needed.
• Split your code into separate methods as appropriate; methods should not be too long.
2 Report (30 marks)
For this part of the assignment, you will write a report detailing how you designed, implemented,
and tested the program described in Section 1. The report should be typed into e.g. a Word
document, and submitted as a PDF (see Section 3 for more details). Where suitable in the report,
you should refer to specific lecture slides (or parts of Lab worksheets), e.g. “as seen in Lecture 10,
slides **-34”.
2.1 Collection choices (5 marks)
In the project, there are a number of classes which will use elements from the Java collection
framework. For example, the Market stores a collection of Company objects, while a Company stores
its history of share prices. For each use of a Java collection in your program, you should state and
justify here your choice of collection object. This section should be under one page in length.
2.2 OOP features (10 marks)
Over the course of the semester, you have learned a number of OOP features (e.g. encapsulation)
and principles (e.g. single responsibility principle). In your report, you will explain where you
have incorporated these in your design and how you have done so; include a brief definition of
the features/principles in question. Be as precise as possible, illustrating with small portions of
code if necessary. Note that not all the features and principles we saw in the lectures need to be
incorporated into your design; your report should only discuss those that are. This section should
be one-and-a-half to two pages in length.
Good example: The Single Responsibility Principle states that every class in the program
should have responsibility over a single functionality of the program; a class should do one thing.
This principle is incorporated into our class design: all the classes have their own, separate, purpose.
For instance, the Company class1
...
Bad example: Encapsulation and inheritance are two core features of OOP; they are used in
many parts in my program.
2.3 Testing description (10 marks)
As covered throughout the Lectures and Lab sessions in this module, testing is an essential part of
writing computer programs. In your report, you will include a description of how you tested the
1Give a brief description of the purpose of the Company class here.
4
various parts of the program described in Section 1. You will state clearly what functionalities you
tested, and describe how you tested them, thinking carefully about possible corner cases. You may
include some sample code if you wish. You should test in the Controller class of your project,
using only tools and techniques that we covered in the Lectures and Labs throughout the semester.
You must NOT use any new or more advanced tools such as JUnit that weren’t taught. This
section should be one-and-a-half to two pages in length (screenshots excluded).
2.4 Model discussion (5 marks)
In this part, you should critically discuss the chosen investment strategy in BasicStrategy. Is
this a realistic model? What are some of its limitations? What would a more realistic strategy
look like? You may include possible implementations of alternate strategies if you wish. This part
should be no more than one page in length.
3 Submission instructions
In the dedicated “Coursework 3 submission” Assignment activity on the Learning Mall Online, you
will need to submit the following two (2) documents.
• A single ZIP archive of your entire NetBeans project. Include all the resources your
       projec  t needs to run. This file   will be named _CW3_Project_studentId.zip”.
• Your report from Section 2, typed into e.g. a Word document, and converted into a PDF
   file. This  file will be named “    _CW3_Report_studentId.pdf”.
The submission deadline is: Sunday, 26 May, 2024, at 23:59 (China-time).
This assignment is individual work. Plagiarism (e.g. copying materials from other sources
without proper acknowledgement) is a serious academic offence. Plagiarism and collusion will not
be tolerated and will be dealt with in accordance with the University Code of Practice on Academic
Integrity. Submitting work created by others, whether paid for or not, is a serious offence, and
will be prosecuted vigorously. The use of generative AI for content generation is not permitted
on this assignment. Such a use would be considered in breach of the University Code of Practice
on Academic Integrity, and dealt with accordingly. Individual students may be invited to explain
parts of their code in person during a dedicated interview session, and if they fail to demonstrate
an understanding of the code, no credit will be given for that part of the code.
Late submissions. The standard University policy on late submissions will apply: 5% of
the total marks available for the component shall be deducted from the assessment mark for each
working day after the submission date, up to a maximum of five working days, so long as this does
   not re  duce the mark below the ; submissions more than five working days late will
not be accepted.
       
      We can - and will - discuss some aspects in the Lab sessions,
and of course, as usual, you can ask me anything by email, during Office Hours, or in the LMO
Forums. Good luck!


請(qǐng)加QQ:99515681  郵箱:99515681@qq.com   WX:codinghelp













 

掃一掃在手機(jī)打開當(dāng)前頁(yè)
  • 上一篇:代寫CSCU9S2 Data Analysis
  • 下一篇:代做CNSCC.361、代寫MATLAB編程設(shè)計(jì)
  • 無(wú)相關(guān)信息
    合肥生活資訊

    合肥圖文信息
    急尋熱仿真分析?代做熱仿真服務(wù)+熱設(shè)計(jì)優(yōu)化
    急尋熱仿真分析?代做熱仿真服務(wù)+熱設(shè)計(jì)優(yōu)化
    出評(píng) 開團(tuán)工具
    出評(píng) 開團(tuán)工具
    挖掘機(jī)濾芯提升發(fā)動(dòng)機(jī)性能
    挖掘機(jī)濾芯提升發(fā)動(dòng)機(jī)性能
    海信羅馬假日洗衣機(jī)亮相AWE  復(fù)古美學(xué)與現(xiàn)代科技完美結(jié)合
    海信羅馬假日洗衣機(jī)亮相AWE 復(fù)古美學(xué)與現(xiàn)代
    合肥機(jī)場(chǎng)巴士4號(hào)線
    合肥機(jī)場(chǎng)巴士4號(hào)線
    合肥機(jī)場(chǎng)巴士3號(hào)線
    合肥機(jī)場(chǎng)巴士3號(hào)線
    合肥機(jī)場(chǎng)巴士2號(hào)線
    合肥機(jī)場(chǎng)巴士2號(hào)線
    合肥機(jī)場(chǎng)巴士1號(hào)線
    合肥機(jī)場(chǎng)巴士1號(hào)線
  • 短信驗(yàn)證碼 豆包 幣安下載 AI生圖 目錄網(wǎng)

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

    Copyright © 2025 hfw.cc Inc. All Rights Reserved. 合肥網(wǎng) 版權(quán)所有
    ICP備06013414號(hào)-3 公安備 42010502001045

    99爱在线视频这里只有精品_窝窝午夜看片成人精品_日韩精品久久久毛片一区二区_亚洲一区二区久久

          最新日韩精品| 欧美日韩高清区| 国产嫩草影院久久久久| 亚洲高清久久网| 久久亚洲不卡| 国产一区二区精品久久| 亚洲欧洲99久久| 欧美精品免费视频| 极品日韩av| 欧美在线国产精品| 国产午夜精品全部视频在线播放| 99精品欧美一区二区三区| 麻豆国产精品777777在线| 国产亚洲欧洲| 久久gogo国模啪啪人体图| 国产美女精品免费电影| 亚洲一区美女视频在线观看免费| 欧美日韩一区二区在线 | 欧美精品二区| 亚洲精品美女久久久久| 欧美精品一区二区视频 | 国产精品欧美一区喷水| 亚洲一区二区三区在线观看视频 | 欧美精品日本| 一区二区欧美精品| 国产精品激情电影| 亚洲欧美乱综合| 国产欧美日韩另类一区| 久久精品国产欧美激情| 黄色免费成人| 欧美激情va永久在线播放| 亚洲精品一区二区三区在线观看| 欧美日本簧片| 亚洲欧美亚洲| 狠狠久久婷婷| 欧美日韩不卡| 午夜精品美女自拍福到在线| 国产一区二区按摩在线观看| 久久综合九色综合久99| 亚洲麻豆一区| 国产精品视频免费| 免费欧美在线视频| 日韩一级片网址| 国产免费一区二区三区香蕉精| 久久免费视频网| 日韩天天综合| 国产在线不卡视频| 欧美伦理视频网站| 性欧美video另类hd性玩具| 一区二区三区在线免费视频| 欧美理论在线| 久久黄色小说| 亚洲四色影视在线观看| 国产主播精品在线| 欧美日韩国产一级片| 久久国产主播精品| 日韩香蕉视频| 国产一区二区精品在线观看| 欧美激情网站在线观看| 欧美亚洲一区| 日韩一级不卡| 在线观看av一区| 国产欧美日韩另类一区| 欧美精品免费播放| 久久免费视频这里只有精品| 亚洲精品视频二区| 国产一区二区三区最好精华液| 欧美日韩人人澡狠狠躁视频| 久久久福利视频| 亚洲欧美bt| 一本色道久久| 亚洲国产女人aaa毛片在线| 国产视频在线一区二区| 国产精品r级在线| 欧美国产在线电影| 麻豆国产精品va在线观看不卡| 午夜精品国产| 亚洲一区在线播放| 99在线|亚洲一区二区| 亚洲激情视频在线观看| 狠狠综合久久| 国产一区美女| 国产免费成人av| 国产精品久久久| 欧美无砖砖区免费| 欧美精品亚洲| 欧美精品粉嫩高潮一区二区| 欧美99久久| 欧美大片在线看免费观看| 久久嫩草精品久久久精品| 久久精品日韩| 久久精品欧美日韩| 久久精品中文字幕一区| 久久国产精品一区二区三区| 久久国产一二区| 欧美一区二区三区四区在线| 亚洲欧美综合另类中字| 亚洲免费在线播放| 欧美夜福利tv在线| 亚洲欧美激情视频在线观看一区二区三区| 99在线精品观看| 亚洲视频精品| 午夜欧美大尺度福利影院在线看| 亚洲一级免费视频| 午夜日韩在线观看| 欧美影院视频| 久久久天天操| 欧美国产综合视频| 欧美日韩高清不卡| 国产精品久久二区二区| 国产精品一区=区| 国产一区二区三区在线观看网站| 精品电影在线观看| 亚洲激情电影在线| 亚洲视频一区| 久久av一区二区三区| 久久一区免费| 欧美日韩亚洲综合| 国产美女精品在线| 欲香欲色天天天综合和网| 亚洲人成77777在线观看网| 亚洲精品免费在线| 亚洲综合成人在线| 久久精品亚洲国产奇米99| 欧美成人嫩草网站| 国产精品欧美日韩| 有坂深雪在线一区| 日韩视频免费观看| 午夜免费日韩视频| 欧美成人一二三| 国产精品麻豆欧美日韩ww| 一区二区三区在线观看国产| 日韩天天综合| 久久精品导航| 欧美先锋影音| 在线观看欧美日韩| 亚洲在线第一页| 久久一综合视频| 国产精品久久久久久久久久免费| 一区在线免费| 亚洲天堂视频在线观看| 鲁大师成人一区二区三区| 国产精品麻豆欧美日韩ww| 亚洲国产另类 国产精品国产免费| 99亚洲一区二区| 久久综合中文| 国产一区欧美| 亚洲一区二区三区四区中文| 欧美成人乱码一区二区三区| 国产精品人人做人人爽| 亚洲精品国精品久久99热| 久久久www| 国产精品入口福利| 99精品黄色片免费大全| 久久久久久久久久久一区| 国产精品久久久久av免费| 伊人久久噜噜噜躁狠狠躁| 亚洲欧美中文字幕| 欧美日韩国产在线播放| 在线观看的日韩av| 欧美一区二区观看视频| 欧美性色视频在线| 亚洲免费观看高清在线观看| 久久久亚洲成人| 国产一级一区二区| 性视频1819p久久| 国产精品毛片一区二区三区| 日韩一级大片| 欧美区高清在线| 亚洲精品一区二区三区四区高清 | 狠狠色狠狠色综合日日tαg| 午夜日韩电影| 国产精品久线观看视频| 亚洲一区二区黄| 欧美三级电影精品| 在线视频中文亚洲| 欧美日韩在线大尺度| 夜夜精品视频一区二区| 欧美精品免费在线| 亚洲精品欧美精品| 欧美日韩成人综合在线一区二区| 亚洲精品视频二区| 欧美日韩国产系列| 一区二区三区四区在线| 国产精品电影观看| 亚洲欧美日韩国产一区二区三区 | 国产精品推荐精品| 亚洲欧美日韩高清| 国产人成精品一区二区三| 香蕉亚洲视频| 国产在线视频欧美| 免费不卡中文字幕视频| 亚洲黄色影片| 欧美日韩国产亚洲一区| 亚洲一级在线观看| 国产三级精品在线不卡| 久久蜜桃精品| 99国产精品国产精品毛片| 国产精品久久久对白| 午夜久久福利|