国产人妻人伦精品_欧美一区二区三区图_亚洲欧洲久久_日韩美女av在线免费观看

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

F27SB代寫、c++,Java程序代做

時間:2024-05-02  來源:合肥網(wǎng)hfw.cc  作者:hfw.cc 我要糾錯



F27SB: Software Development 2 CW2: GUI 2023/2024
Implementing the Hangman Game
In this coursework, your task is to implement a version of the classic word-guessing game commonly
known as “Hangman”. The game needs to be playable using a graphical user interface (GUI) implemented
in Java. The deadline for this coursework is Friday April 5th (5pm local time).
1. Hangman – Description of the Game
Hangman is a word-guessing game, meaning that the player’s goal is to guess a word. At the beginning of
the game a word is selected for the player to guess. The game is played in a series of rounds.
Each round proceeds as follows:
1. The player is presented with the current information they have about the word — the letters they
have guessed so far are shown, and in place of the letters not yet guessed a dash is displayed. (In
particular, this means that in the first round of the game, all that the player sees is a series of dashes,
one for each letter of the word they are guessing.)
2. The player guesses a letter.
3. If the guessed letter appears in the word, the player is informed of the correct guess by replacing the
corresponding dashes in the word’s display with the guessed letter.
4. If the guessed letter does not appear in the word, the player is informed that the guess was incorrect.1
The player has a limited number of incorrect guesses they are allowed to make before guessing the word.
The player wins by guessing all the letters of the word before using up the allowed incorrect guesses or lives
if you will. If the player reaches the limit of the incorrect guesses before guessing the word, they lose the
game. You can see a screen shot of what this could look like at the end of the document and you can find
more detailed information on the game itself here: https://en.wikipedia.org/wiki/Hangman_(game).
2. Coursework Specification
The goal is to implement a single-player version of Hangman with a graphical interface.2 The program
picks the word, and the player is trying to guess it.
2.1. Mandatory Features
This is the list of the mandatory features. For the submission to be considered complete, all of the following
have to be implemented. You can find specific weekly tasks in section 3.
• The program has to implement the hangman game for guessing words in the English language.
• At startup, the program will read a list of words from a file. Make sure there are no limitations
on the number of words your program can support. Any limitations on the supported file format
need to be clearly documented (e.g., one word per line, only uppercase letters). For testing your
program, you can use the example word list files provided in appendix B.
1Traditionally, this is done by adding an element to a drawing of a hanged man. This is where the game’s name comes
from.
2The emphasis of this coursework is on the interface but in order to get the full marks, you will need to implement the
functionality as well. Please, refer to the rubric in the end of the document.
Deadline: April 5th – 5pm local time Page 1 of 6
F27SB: Software Development 2 CW2: GUI 2023/2024
• At startup, the program will display the game GUI and start a new game.
• Whenever a new game is started, the word to be guessed will be picked by selecting a random word
from the list that was loaded at startup.
• The game’s GUI has to have the following features:
– Display of the word being guessed showing the guessed letters and a placeholder symbol (e.g.,
a dash) in place of the letters that are to be guessed.
– Buttons for guessing the letters — one button per letter. The interface has to prevent the user
from making the same guess multiple times (e.g., by disabling the button or making it invisible
after it was used once).
– Visual indicator showing the player how many incorrect guesses they have made so far and how
many they have remaining before they lose the game. The player has to be allowed to make at
least three incorrect guesses. Beyond that, feel free to decide how difficult you want to make
the game. The fewer mistakes you allow the player, the more difficult the game.
• If the player wins the game, the program will congratulate the player and ask them if they want to
play another game. If the player decides to play another game, the program will start a new game.
If the player decides not to play another game, the program will terminate its execution.
• If the player loses the game, the program will inform the player of the defeat, revealing the word
the player was guessing, and asking them if they want to play another game. If the player decides
to play another game, the program will start a new game. If the player decides not to play another
game, the program will terminate its execution.
• If at any time the player closes the main GUI window, the program will terminate its execution.
There is an example GUI design and a screen capture of the game run in appendix A. The example is
there to showcase the mandatory features. You do not have to implement the exact same interface.
You are free to decide on the exact presentation and design of the GUI elements, as long as you follow the
basic principles of GUI design and OOP.
2.2. Optional Features
In addition to the mandatory features listed above, you might want to try to implement some of the
following features. These are only suggestions and will not award you any additional marks.
• Provide an interface element for changing the number of incorrect guesses allowed before the game
is lost. Perhaps even remember this setting, so that when the program is terminated and started
again, the last set setting is loaded.
• Provide an interface element for changing the word list being used.
• Allow the player to specify what kind of word would they like to be guessing (e.g., give me a 6-letter
word).
• Make the game playable in multiple languages.
• Implement the option to play the game in single player or multiplayer mode, where in multiplayer
mode two players with their own respective health bars can be playing turn-by-turn.
If you think of any additional features you would like to implement, feel free to do so. However, make
sure that your submission still covers all the mandatory features.
Deadline: April 5th – 5pm local time Page 2 of 6
F27SB: Software Development 2 CW2: GUI 2023/2024
3. Development Schedule and Code Organization
Like for the first coursework, you will have weekly or bi-weekly tasks. The deadlines mentioned here are
only suggestions but you will need to have at least one commit on GitLab for each of the tasks specified
below. If you do not have this commit history, you will receive 0 marks for this coursework. Start by
forking the following repository.
https://gitlab-student.macs.hw.ac.uk/f27sb_202**4/f27sb_202**4_coursework/gui_coursework
Note: The provided Run class is the only place of the program that should have a main method. This
class should not contain anything else but the main method and the main method should not contain any
code apart from the creation of an instance of your main window and the definition of the title, size, and
visibility of this main window.
3.1. Week 7-8 — suggested deadline: end of week 8
1. Implement a new class MainWindow which inherits from JFrame and will be the window where you
will show all the components of the game.
2. Create a class called HealthPanel which should inherit from JPanel. This GUI element displays the
number of incorrect guesses the player has made and the remaining amount of incorrect guesses that
can be made before the game is lost.
a) This class should contain a number of labels equal to the amount of incorrect guesses allowed.
To begin with, the labels should be green.
b) This class needs a method called removeLife which will be called to update the element once an
incorrect guess has been made. One of the green labels should be turned red. The return value
of the method can indicate if the player has run out of their allotment of incorrect guesses.
3. Add your HealthPanel to the MainWindow.
3.2. Week 9 — suggested deadline: end of week 9
1. Develop the capability to load the list of words from a file and the capability to select a random
word from that list.
2. Implement a class WordPanel which inherits from JPanel. This class should contain GUI elements
that allow you to display the guess prompt for the user, i.e., displaying the word to be guessed, with
the letters that have not been guessed replaced by some symbol.
a) The constructor should accept a String of the word that is to be guessed. Based on this word,
the text on a label in this class should be changed to show a number of underscores equal to
the number of letters of the word.
b) This class needs a method called guess which accepts a String of the letter that the user has
guessed and is called when a guess is made. The method changes the text of the label if the
guess is correct by replacing the corresponding underscore(s) with the guessed letter. The return
value of the method should indicate if the guess is successful or not.
c) There should also be a method for checking if the word is completely guessed.
3. Add the WordPanel to the MainWindow.
Deadline: April 5th – 5pm local time Page 3 of 6
F27SB: Software Development 2 CW2: GUI 2023/2024
3.3. Week 10 - 11 — suggested deadline: end of week 11
1. Create a class called ButtonPanel which inherits from JPanel. This should contain all the buttons
of all the letters of the English Alphabet. Hence, there will have to be 26 buttons in total. Do not
code each one individually! Have an array of buttons. Associate event handlers with the buttons so
that when a button is clicked, the corresponding letter can be extracted. Once a button has been
pressed it should be disabled or made invisible.
a) Add the ButtonPanel to the MainWindow.
b) Find a way to call the guess method of the WordPanel from within the event handler of the
buttons so that the guessed letter can be put into the method.
2. Finalise the game mechanic. Whenever a button is pressed, it needs to be checked if the player
guessed the entire word correctly or has run out of lives. Choose the best place to do all this in your
program based on convenience but also cohesion and coupling.
3. At the end of the game
a) Implement the display of the player’s victory or defeat messages. Provide a way for the player
to either play again or to end the game. You can do all this via dynamic interface changes or
via Dialogue boxes. Make sure that upon defeat, the entire word is revealed to the player.
b) Implement the functionality to reset the interface and start a new game with a newly selected
random word.
The deadlines are suggestions. Feel free to use this list to help you organise your development, and keep
in mind that you will need to make at least one commit per task mentioned. If you would like to deviate
from the class structure that is given here, you are welcome to do so. There are numerous ways one can
approach this task, and you are encouraged to explore your own ideas. However, keep in mind cohesion
and coupling.
4. Final submission
The final deadline is April 5th (Friday) at 5pm (local time). For your final submission, please submit
a link to your fork of the program on Canvas. Additionally, please download a zip file of your code from
GitLab and upload it to Canvas as well. To determine if a submission was on time, only the submission
on Canvas counts.
5. Marking Scheme
This coursework is worth [15 marks]. The division of marks is given below.
• [2 marks] A panel (e.g. HealthPanel) displaying the number of incorrect guesses and the number
of attempts remaining.
• [3 marks] A panel (e.g. ButtonPanel) consisting of the English alphabet as buttons which deactivate
or disappear upon being pressed.
• [3 marks] A panel (e.g. WordPanel) displaying the word to be guessed, incrementally revealing the
correctly guessed letters.
Deadline: April 5th – 5pm local time Page 4 of 6
F27SB: Software Development 2 CW2: GUI 2023/2024
• [4 marks] The overall game consisting of the three interacting panels, along with an appropriate
message appearing (allowing to end the game or start a new one) upon completion of a round. Full
marks will be given for correctly implemented game logic as described in section 2.1.
• [3 marks] Code quality. For full marks you need to have a tidy, well-structured, and well-commented
codebase which follows all the guidelines about good design, coupling, and cohesion from the lectures.
As mentioned earlier, you are welcome to deviate from the suggested class structure, in which case you
will be marked appropriately based on your work. You can then consider the above allocation of marks
an approximate weighting of the necessary components of your program.
6. Class Test
There will be a class test in Week 12 based on the work you have had to do in this coursework. In this
class test you will be asked questions about the three panels comprising the Hangman game you have
developed. In particular, this means you should consider all the tasks in section 3.1 and 3.2 along with
task 1 in section 3.3 to be examinable.
Deadline: April 5th – 5pm local time Page 5 of 6
F27SB: Software Development 2 CW2: GUI 2023/2024
A. Example Application Design
Here is an example of a possible GUI design. Please note that you do not have to copy this exact design.
A panel with seven labels. Each green label represents an available incorrect guess. As an incorrect guess is made, the rightmost green label turns
red.
A panel with 26 buttons, one for each letter of the
English alphabet. Buttons corresponding to the
already made guesses become invisible.
A label displaying the player’s goal. Correctly
guessed letters are displayed on their positions,
and the letters that have not yet been guessed
correctly are replaced by underscores.

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




















 

掃一掃在手機打開當前頁
  • 上一篇:COMP1721代寫、代做java編程語言
  • 下一篇:菲律賓跟團簽證申請要什么要求-經(jīng)驗分享
  • ·代寫EECS 113、Python/Java程序代做
  • ·Comp 2322代寫、Python/Java程序代做
  • ·CSC420編程代寫、c/c++,Java程序代做
  • ·代寫SECU73000、Python,Java程序代做
  • ·代寫SECU73000、Python,Java程序代做
  • 合肥生活資訊

    合肥圖文信息
    流體CFD仿真分析_代做咨詢服務(wù)_Fluent 仿真技術(shù)服務(wù)
    流體CFD仿真分析_代做咨詢服務(wù)_Fluent 仿真
    結(jié)構(gòu)仿真分析服務(wù)_CAE代做咨詢外包_剛強度疲勞振動
    結(jié)構(gòu)仿真分析服務(wù)_CAE代做咨詢外包_剛強度疲
    流體cfd仿真分析服務(wù) 7類仿真分析代做服務(wù)40個行業(yè)
    流體cfd仿真分析服務(wù) 7類仿真分析代做服務(wù)4
    超全面的拼多多電商運營技巧,多多開團助手,多多出評軟件徽y1698861
    超全面的拼多多電商運營技巧,多多開團助手
    CAE有限元仿真分析團隊,2026仿真代做咨詢服務(wù)平臺
    CAE有限元仿真分析團隊,2026仿真代做咨詢服
    釘釘簽到打卡位置修改神器,2026怎么修改定位在范圍內(nèi)
    釘釘簽到打卡位置修改神器,2026怎么修改定
    2025年10月份更新拼多多改銷助手小象助手多多出評軟件
    2025年10月份更新拼多多改銷助手小象助手多
    有限元分析 CAE仿真分析服務(wù)-企業(yè)/產(chǎn)品研發(fā)/客戶要求/設(shè)計優(yōu)化
    有限元分析 CAE仿真分析服務(wù)-企業(yè)/產(chǎn)品研發(fā)
  • 短信驗證碼 寵物飼養(yǎng) 十大衛(wèi)浴品牌排行 目錄網(wǎng) 排行網(wǎng)

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

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

    国产人妻人伦精品_欧美一区二区三区图_亚洲欧洲久久_日韩美女av在线免费观看
    亚洲欧洲国产日韩精品| 99色精品视频| 中文字幕色呦呦| 欧美精品情趣视频| 久久综合88中文色鬼| 欧美成aaa人片免费看| 久久精品亚洲一区| 国产精品欧美一区二区| 国产精品人成电影在线观看| 国产成人精品综合久久久| 久久久999视频| 国产二区不卡| 五月天婷亚洲天综合网鲁鲁鲁| 亚洲一区二区高清视频| 亚洲一区二区三区777| 亚洲图片小说在线| 大j8黑人w巨大888a片| 日本一区高清在线视频| 欧美中文字幕在线| 国产在线98福利播放视频| 国产日韩在线亚洲字幕中文| 成人免费视频97| 国产成人在线播放| 久久天天躁狠狠躁夜夜av| 国产精品久久久久久久久免费看| 国产精品久久精品视| 精品久久久久久无码国产| 国产又粗又爽又黄的视频| 日韩女优人人人人射在线视频| 日韩欧美第二区在线观看| 欧美日韩国产一二| 欧美日韩在线播放一区二区| 日本少妇高潮喷水视频| 欧美专区在线视频| 国产中文字幕亚洲| 91麻豆国产语对白在线观看| 久艹在线免费观看| 国产精品久久久久久久久久ktv| 久久99久久99精品中文字幕| 色狠狠久久av五月综合|| 日本高清久久一区二区三区| 男女视频网站在线观看| 成人国产精品一区| www.久久色.com| 欧美激情极品视频| 日本不卡一区二区三区在线观看| 麻豆精品传媒视频| 久久精品二区| 亚洲一区不卡在线| 精品人伦一区二区三区| 久久一区二区精品| 久久艳片www.17c.com| 性欧美长视频免费观看不卡| 免费无遮挡无码永久视频| 91九色国产在线| 久久久精品久久| 亚洲精品不卡| 国产又粗又长又爽视频| 久久国产乱子伦免费精品| 国产精品三级一区二区| 亚洲91精品在线亚洲91精品在线| 欧美激情专区| 国产不卡av在线| 亚洲在线视频一区二区| 韩国精品一区二区三区六区色诱| 国产高清一区视频| 亚洲一区尤物| 国内自拍在线观看| 久久久久久久一区二区三区| 亚洲最大福利视频网| 美女亚洲精品| 国产成人精品免费视频| 亚洲伊人婷婷| 国产精品一二区| 国产精品福利无圣光在线一区| 欧洲熟妇精品视频| 久久青青草综合| 午夜精品视频网站| 97人人模人人爽视频一区二区| 欧美日韩国产成人在线观看| 黄色网址在线免费看| 日韩中文理论片| 日韩伦理一区二区三区av在线| 91精品久久久久久久久青青| 欧美激情乱人伦一区| 国产在线精品一区免费香蕉| 久久久久久国产精品免费免费| 日韩av一级大片| 国产成人黄色片| 日本a在线免费观看| 国产不卡精品视男人的天堂| 色婷婷精品国产一区二区三区 | 91精品国产色综合| 亚洲午夜精品福利| 成人免费视频91| 综合久久国产| 91免费人成网站在线观看18| 欧美精品aaa| 国产男女在线观看| 一道本在线观看视频| 成人精品一区二区三区电影黑人| 中文字幕日韩一区二区三区| 99国产在线| 日本最新一区二区三区视频观看 | 国产精品视频免费一区| 欧美第一黄网| 国产精品久久久久久久av电影| 国产一区高清视频| 国产99视频精品免费视频36| av电影一区二区三区| 少妇av一区二区三区无码| 91精品综合视频| 人人干视频在线| 国产精品福利无圣光在线一区| 国产美女作爱全过程免费视频| 一本久道久久综合狠狠爱亚洲精品 | 久久久久久久久久码影片| 欧美中文字幕在线观看视频| 国产精品成人观看视频免费| 国产人妖伪娘一区91| 亚洲精品乱码久久久久久蜜桃91| 国产成人一区二区三区| 日韩激情视频一区二区| 国产精品极品美女在线观看免费| 成人精品小视频| 人人干视频在线| 久久97久久97精品免视看| 久久亚洲高清| 国产在线一区二区三区播放| 亚洲精品中文字幕乱码三区不卡| 久久久久久久久久久综合| 精品无码久久久久久久动漫| 午夜精品视频在线观看一区二区| 日韩中文字幕网| 国产欧美日韩伦理| 日本三级中国三级99人妇网站 | 久久久久国产精品一区| 九色综合婷婷综合| 麻豆精品视频| 日本成人中文字幕在线| 国产精品第2页| 国产成人+综合亚洲+天堂| 国产淫片免费看| 日韩国产小视频| 中文精品视频一区二区在线观看| 日韩三级成人av网| 91久久国产自产拍夜夜嗨| 男人亚洲天堂网| 三年中国中文在线观看免费播放 | 午夜精品理论片| 欧美激情亚洲综合一区| 久久久久久久久久久久av| 丰满爆乳一区二区三区| 青青草综合在线| 亚洲在线视频一区二区| 国产精品久久久久av| 久久精品人成| 97久久精品国产| 国产区一区二区三区| 欧美亚洲另类制服自拍| 亚洲精品偷拍视频| 中文字幕欧美人妻精品一区| 久久精品电影一区二区| 91精品视频在线免费观看| 国产日产欧美视频| 韩国精品一区二区三区六区色诱| 日本女人高潮视频| 欧美二区三区| 欧美中文娱乐网| 日本wwww视频| 日韩av123| 日本最新高清不卡中文字幕| 91久久精品国产91性色| av在线亚洲男人的天堂| 国产美女视频免费| 国产一区福利视频| 国产经典久久久| 色阁综合伊人av| 91精品视频一区| 国产精品一区二区电影| 日本一欧美一欧美一亚洲视频| 一本一生久久a久久精品综合蜜| 国产精品久久久久久久av电影| 久久精品国产免费观看| 波霸ol色综合久久| 色狠狠av一区二区三区香蕉蜜桃| 久久久久久亚洲精品不卡4k岛国| 久久人妻无码一区二区| 国产精彩免费视频| 久久资源av| 久久国产精品免费一区| 久久久久久久色| 色狠狠久久aa北条麻妃| www.久久撸.com| 国产精品免费福利| 欧美成人一区在线| 一区二区视频在线免费| 动漫3d精品一区二区三区| 视频一区视频二区视频| 日本欧美在线视频|