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

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

CSCI 201代做、代寫c/c++,Python編程
CSCI 201代做、代寫c/c++,Python編程

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



Assignment #2
CSCI 201 Fall 2024
Page 1 of 11
Assignment #2
CSCI 201 Fall 2024
6% of course grade
Title
Networked Crossword Puzzle
Topics Covered
Networking 
Multi-Threading
Concurrency Issues
Introduction
This assignment will require you to create two different programs – a server and a client. You 
will implement a networked crossword puzzle game where multiple users can play against each 
other. There will be some concurrency issues since you will need to make sure only certain 
clients can play at different times. There will be many ways to design out the program, so I 
recommend you spend some time designing it out on paper before you begin coding.
Crossword puzzle game
A crossword puzzle is a word game consisting of interlocking horizontal and vertical grids. 
Participants enter letters into these grids based on the provided clues. The game concludes when 
all empty grids are correctly filled. Typically, the horizontal grids are referred to as ACROSS 
entries, while the vertical grids are called DOWN entries. Each across or down entry, which 
consists of a series of grids, corresponds to a word or phrase. All entries are indexed, and the 
corresponding clues are provided for the participants. Additionally, the intersection of an across 
entry and a down entry indicates a shared letter at that specific location, which usually serves as 
an extra hint besides the entry-specific clues.
Crossword puzzle game example
Assignment #2
CSCI 201 Fall 2024
Page 2 of 11
Server Functionality
The server will be responsible for reading the puzzle data from a file and distributing it to the 
clients when they connect. To simplify execution of your program, only one game can be 
occurring at a time. Each game will have between 1 and 3 players. The first client to connect to 
the server will specify the number of players.
The server will have (possibly) multiple puzzle data files in a directory called gamedata at the 
top of your project directory. Make sure that you specify a relative path when reading the puzzle
data files so the graders can drop their puzzle data files in the gamedata directory and run your
program without having to change any hard-coded variables. Your server program will need to
open the directory that contains all the puzzle data files and determine how many files are in that 
directory. It will then randomly choose one of the files to use. Of course, if there is only one file 
in the directory, that is the one that will be chosen. The names of the files are irrelevant since the 
server will choose one of them randomly, so they could be named anything at all.
Each game data file will contain all the information needed to play a game. The file will be 
formatted as a Comma Separated Value (CSV) file with ACROSS on the first line, followed by one
or more lines formatted as:
ACROSS,,
<number>,<answer>,<question>
The file will then have a line with the word DOWN, then one or more lines formatted the same as 
above. Here is a sample file:
ACROSS,,
1,trojans,What is USC’s mascot?
2,dodgers,What professional baseball team is closest to USC? 
3,csci,What is the four-letter prefix for Computer Science? 
DOWN,,
1,traveler,What is the name of USC’s white horse? 
4,gold,What is one of USC’s colors?
5,marshall,Who is USC’s School of Business named after?
Your server program will need to determine if the file is formatted properly. The only rules that 
you need to check are the following:
1. The words ACROSS and DOWN exist on their own lines and only one time in the file and
are followed by empty CSV fields. 
2. The other lines in the file are formatted with three parameters – integer, answer, question.
a. The three parameters are separated by commas as it is normal for CSV files.
Assignment #2
CSCI 201 Fall 2024
Page 3 of 11
3. If a number in the ACROSS section matches a number in the DOWN section, the 
answers must start with the same letter. In the example above, the lines with 
trojans and traveler both start with same letter “t”, since their number is 
the same, “1”.
4. An answer cannot contain any whitespace.
5. Questions normally will contain whitespace.
The server will need to determine how to format the answers in the game board so it can send out 
that information to all the clients (since the clients all need to render the game board the same).
There will be different ways that the data can be rendered. You can assume that there is at least 
one viable way to render the game board. In other words, you can assume that each word 
contains at least one letter that is in another word and the board can be rendered for the player. 
This may be challenging to figure out, so make sure to write out an algorithm to solve this before 
you begin coding.
If the ACROSS number and the DOWN number are the same, that means the answers will start 
with the same letter, as explained above. The numbers do not have to be in order in the file, but 
all the questions for a section will immediately follow the lines with ACROSS or DOWN.
There will not be more than one ACROSS or DOWN section in a file.
All the answers to the questions are case-insensitive. The server will wait to randomly 
determine a game file to read until the first client has connected.
The server will listen on port 3456. When a client connects to it, it will randomly determine a 
game data file to read, verify that the file is formatted properly, and figure out a rendering of the
game board. If there are no valid game files, the server should report that to the client and
continue waiting for another client to connect. At that point, it will read the directory again and 
randomly choose another game data file.
When the first client connects to it, the first message it sends will be a number between 1 and 3 
to determine how many players will be part of the game. If the number is 1, the server can start 
the game. If the number is 2 or 3, the server will need to wait until the proper number of clients 
have connected to the server before starting the game.
Game Play
Once the proper number of players have joined the game, the server will send out the game board 
to all the players. The players will begin play in the order they joined the game. Only one player 
should be able to play at a time. More information on how the client will behave is included in 
the relevant section below. Every play should be sent to the server. The server validates
whether the answer provided for the appropriate question is correct. If it is, the same player who 
guessed the correct answer will get to play again. If it is incorrect, play will proceed to the next 
player. Regardless, the server should send a notification to all the clients letting them know what 
Assignment #2
CSCI 201 Fall 2024
Page 4 of 11
question the player was attempting to answer, what the player guessed, and whether it was 
correct.
The server should keep track of how many correct answers each player has guessed, and which 
questions are remaining. Once all the questions have been answered correctly, the server will 
notify all the players of the final score (1 point for each question answered correctly) and who 
the winner is (or a tie, if that is the case).
You do not need to maintain statistics, and there are no user accounts. Once a game concludes, 
the clients should terminate. The server should loop and allow a new game to begin by having 
another client connect. The server cannot allow another game to begin while a game is being 
played – only one game is played at a time. The server should never have to be restarted, 
though, to play subsequent games. Once the server has started, the only way to stop playing 
games is to “kill” the server, which is done by clicking “Terminate”, the red square, in Eclipse. 
Client Functionality
The client will begin by welcoming the user to the game and prompting them for the server 
hostname and port. If a valid connection is not made, an error message should be displayed, and 
the client should loop back to allow the user to enter another server hostname and port. If a valid 
connection is made, the first client should prompt for the number of players. The valid number
of players is between 1 and 3. The first client should continue prompting for the number of 
players until a valid number is entered.
If the necessary number of players have not yet joined the game, all the clients, except for the 
last one to join, should display a message that says “Waiting for player x.” The “x” 
should be replaced by the player number for which we are waiting. When a player joins, all 
clients, except for the last one, should display a message stating from which IP address the player
joined.
Once all the required players have joined, all clients should display a message that says, “The
game is beginning.” The server will send the game board, which includes the crossword 
puzzle and the questions.
Play will proceed through the players based on the order they joined the game. Player 1 will go 
first and select to guess the answer to a question that is either “down” or “across”, as in “Would
you like to answer a question across (a) or down (d)?”. If “d” or “a” is not 
entered, the client should prompt the user again. The user will then be prompted to enter a 
number for which question to answer, as in “Which number?”. If the value entered is not 
valid, the client should prompt the user again.
Once the user has entered a valid question, (let’s assume “a” and “1” were entered), the client 
should prompt the user to enter the answer to the question, “What is your guess for 1 
Assignment #2
CSCI 201 Fall 2024
Page 5 of 11
across?” The answer should be sent to the server, which will return whether it was correct or 
incorrect to all the connected clients. The (possibly) updated game board and remaining
questions to answer will be sent to all clients. Do not display questions that have already been 
answered correctly.
If a player answers a question correctly, they will get to answer another question. If the answer 
was incorrect, play will move to the next client who joined. If the last player that joined answers 
a question incorrectly, play will proceed with the first player.
Play continues until all the correct answers have been guessed. The completed game board with
all the questions will be displayed, and the final scores will be shown. The final score is only 
based on how many questions a user guessed correctly. If one player has more correct answers 
than any the others, that player is declared the winner. If two players have the same score, the 
game is declared as a tie.
All the clients will then terminate, but the server will loop back to allow new players to join and 
start a new game.
The sample execution that follows shows all the messages that should be displayed throughout 
the game. Your output should be as close as possible to the one shown below, though the
crossword puzzle may look different for the same answers since that will be based on how your 
program generates it.
Assignment #2
CSCI 201 Fall 2024
Page 6 of 11
Sample Execution
Below is a sample execution of the program with the user input in bold red (though the input
will not be bolded, or colored, when you run your program). The first column is the server, the 
second column is the first player, and the third column is the second player. Ignore all the extra 
blank lines that are displayed, to try to show you the timeline at which output is generated, but in 
the actual output, all the lines will be displayed next to each other. This sample run is using the 
sample puzzle game file that was provided earlier in the assignment.
Server Player 1 Player 2
Listening on port 3456.
Waiting for players...
Welcome to 201 Crossword!
Enter the server hostname: localhost
Enter the server port: 3456
Connection from 127.0.0.1
How many players will there be? 2
Number of players: 2 
Waiting for player 2. 
Reading random game file.
File read successfully.
Waiting for player 2.
Welcome to 201 Crossword!
Enter the server hostname:
localhost
Enter the server port: 3456
Connection from 127.0.0.1
Player 2 has joined from 127.0.0.1. There is a game waiting for you.
Player 1 has already joined.
Game can now begin.
The game is beginning. The game is beginning.
Sending game board. 5_
Across
1 What is USC’s mascot?
2 What professional baseball team is 
closest to USC?
3 What is the four-letter prefix for 
Computer Science?
Down
1 What is the name of USC’s white 
horse?
4 What is one of USC’s colors?
5 Who is USC’s School of Business
named after?
Across
1 What is USC’s mascot?
2 What professional baseball team
is closest to USC?
3 What is the four-letter prefix
for Computer Science?
Down
1 What is the name of USC’s white 
horse?
4 What is one of USC’s colors?
5 Who is USC’s School of Business
named after?
Assignment #2
CSCI 201 Fall 2024
Page 7 of 11
Player 1’s turn.
Would you like to answer a question 
across (a) or down (d)? d
That is not a valid option?
Would you like to answer a question 
across (a) or down (d)? a
Which number? 4
That is not a valid option. 
Which number? 1
What is your guess for 1 across?
trojans
Player 1’s turn.
Player 1 guessed “trojans” for 
1 across.
Player 1 guessed “trojans” for 1 
across.
That is correct.
That is correct. That is correct.
Sending game board.
Across
2 What professional baseball team is 
closest to USC?
3 What is the four-letter prefix for 
Computer Science?
Down
1 What is the name of USC’s white 
horse?
4 What is one of USC’s colors?
5 Who is USC’s School of Business 
named after?
Across
2 What professional baseball team
is closest to USC?
3 What is the four-letter prefix
for Computer Science?
Down
1 What is the name of USC’s
white horse?
4 What is one of USC’s colors?
5 Who is USC’s School of Business 
named after?
Player 1’s turn.
Would you like to answer a question 
across (a) or down (d)? d
Which number? 1
What is your guess for 1 down? Trav
Player 1 guessed “Trav” for 1 
down.
Player 1 guessed “Trav” for 1 
down.
That is incorrect.
That is incorrect. That is incorrect.
Sending game board.
Assignment #2
CSCI 201 Fall 2024
Across
2 What professional baseball team is 
closest to USC?
3 What is the four-letter prefix for 
Computer Science?
Down
1 What is the name of USC’s white 
horse?
4 What is one of USC’s colors?
5 Who is USC’s School of Business 
named after?
Across
2 What professional baseball team is 
closest to USC?
3 What is the four-letter prefix for 
Computer Science?
Down
1 What is the name of USC’s white 
horse?
4 What is one of USC’s colors?
5 Who is USC’s School of Business 
named after?
Players 2’s turn.
Players 2’s turn. Would you like to answer a question 
across (a) or down (d)? d
Which number? 1
What is your guess for 1 down?
traveler
Player 2 guessed “traveler” 
for 1 down.
Player 2 guessed “traveler” for 1 
down.
That is correct.
That is correct. That is correct.
Sending game board.
Across
2 What professional baseball team is 
closest to USC?
3 What is the four-letter prefix for 
Computer Science?
Down
1 What is the name of USC’s white 
horse?
4 What is one of USC’s colors?
5 Who is USC’s School of Business 
named after?
Across
2 What professional baseball team is 
closest to USC?
3 What is the four-letter prefix for 
Computer Science?
Down
1 What is the name of USC’s white 
horse?
4 What is one of USC’s colors?
5 Who is USC’s School of Business 
named after?
Assignment #2
CSCI 201 Fall 2024
Page 9 of 11
Player 2’s turn.
Player 2’s turn. Would you like to answer a question 
across (a) or down (d)?
<Play continues until all questions have been answered correctly.>
<Assume everything has been answered correctly except 2 across, and it’s player 1’s turn.>
Sending game board.
2 What professional baseball team is
closest to USC?
Across
2 What professional baseball team is
closest to USC?
Player 1’s turn.
Would you like to answer a question 
across (a) or down (d)? d
That is not a valid option.
Would you like to answer a question 
across (a) or down (d)? a
Which number? 2
What is your guess for 2 across?
Dodgers
Player 1’s turn.
Player 1 guessed “Dodgers”
for 2 across.
Player 1 guessed “Dodgers” for 2
across.
That is correct.
That is correct. That is correct.
Sending game board.
Across
1 What is USC’s mascot?
Across
1 What is USC’s mascot?
Assignment #2
CSCI 201 Fall 2024
Page 10 of 11
The game has concluded. 
Sending scores.
Waiting for players...
2 What professional baseball team is 
closest to USC?
3 What is the four-letter prefix for 
Computer Science?
Down
1 What is the name of USC’s white 
horse?
4 What is one of USC’s colors?
5 Who is USC’s School of Business 
named after?
Final Score
Player 1 – 4 correct answers.
Player 2 – 2 correct answers. 
Player 1 is the winner.
<Client terminates>
2 What professional baseball team is 
closest to USC?
3 What is the four-letter prefix for 
Computer Science?
Down
1 What is the name of USC’s white 
horse?
4 What is one of USC’s colors?
5 Who is USC’s School of Business 
named after?
Final Score
Player 1 – 4 correct answers.
Player 2 – 2 correct answers. 
Player 1 is the winner.
<Client terminates>
Assignment #2
CSCI 201 Fall 2024
Page 11 of 11
Grading Criteria
The way you go about implementing the solution is not specifically graded, but the output must 
match exactly what you see in the execution above. The maximum number of points earned is 
5.
Networking (0.5)
0.1 - first client can connect to server
0.2 - only the number of clients as specified by first client can connect to server
0.2 - server allows a new game to be played after previous one ends without restarting
File Reading (0.5)
0.1 - random file chosen from gamedata directory 
0.1 - gamedata directory is at the top of the project folder
0.1 - server chooses game data file after first client connects 
0.2 - client is notified if no valid game data file exists
Game Board Rendering (1.5)
1.5 - game board is rendered in a correct manner where there are no disjoint words (i.e., they are all 
connected to each other)
Game Play (1.5)
0.1 - only one player can answer a question at a time
0.1 - once a question has been answered correctly, that question is no longer displayed 
0.1 - answers are case-insensitive
0.1 - proper error checking is in place for “a” and “d”
0.1 - proper error checking is in place for the question number to answer 
0.2 - all clients are notified of answers that are guessed by other players 
0.1 - updated game board is displayed properly
0.3 - final score is displayed after all answers have been guessed correctly 
0.1 - client terminates after the final score is displayed
0.3 - the game is played as expected with no exceptions, crashing, deadlock, starvation, or freezing
Output (0.4)
0.4 - the output is the same as what is provided in the sample above
Synchronization (0.6)
0.3 - synchronization through monitors, locks, or semaphores is used somewhere in the server 
0.3 - synchronization through monitors, locks, or semaphores is used somewhere in the client

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







 

掃一掃在手機打開當前頁
  • 上一篇:代寫CIS5200、代做Java/Python程序語言
  • 下一篇:代寫SI 100B、代做Python設計程序
  • ·代寫G6077程序、代做Python編程設計
  • ·代做COMP SCI 7412、代寫Java,python編程
  • ·代做COMP642、代寫Python編程設計
  • ·代寫CSSE7030、代做Python編程設計
  • ·&#160;COMP338代做、python編程語言代寫
  • ·代做3DA3 C02、Java/python編程代寫
  • ·代做cmsc14100 編程、代寫python編程語言
  • ·代做ENG5027、代寫Python編程設計
  • ·FINM8006代寫、代做Python編程設計
  • ·ITMF7.120代寫、代做Python編程設計
  • 合肥生活資訊

    合肥圖文信息
    急尋熱仿真分析?代做熱仿真服務+熱設計優化
    急尋熱仿真分析?代做熱仿真服務+熱設計優化
    出評 開團工具
    出評 開團工具
    挖掘機濾芯提升發動機性能
    挖掘機濾芯提升發動機性能
    海信羅馬假日洗衣機亮相AWE  復古美學與現代科技完美結合
    海信羅馬假日洗衣機亮相AWE 復古美學與現代
    合肥機場巴士4號線
    合肥機場巴士4號線
    合肥機場巴士3號線
    合肥機場巴士3號線
    合肥機場巴士2號線
    合肥機場巴士2號線
    合肥機場巴士1號線
    合肥機場巴士1號線
  • 短信驗證碼 豆包 幣安下載 AI生圖 目錄網

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

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

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

          国产精品日韩精品欧美精品| 欧美成人免费网站| 欧美在线视频免费播放| 午夜电影亚洲| 久久精精品视频| 久久久国产精品一区二区中文| 欧美在线影院在线视频| 久久夜色精品国产欧美乱| 欧美**人妖| 欧美日韩在线播放一区| 欧美视频在线观看 亚洲欧| 国产精品免费在线| 激情欧美亚洲| 亚洲国产日韩综合一区| 在线性视频日韩欧美| 欧美一区二区免费视频| 欧美电影免费观看高清| 国产精品久久久久久久久久久久久| 国产视频欧美| av不卡在线看| 久久精品视频在线| 欧美日韩国产在线播放网站| 国产精品一区二区三区乱码| 国产亚洲一本大道中文在线| 日韩一本二本av| 欧美中文字幕不卡| 欧美日韩免费观看一区=区三区| 国产午夜精品美女视频明星a级| 亚洲国产精品毛片| 欧美影院成人| 国产精品啊啊啊| 亚洲国产一区在线| 欧美一级夜夜爽| 欧美私人啪啪vps| 亚洲黄色性网站| 午夜亚洲福利| 欧美性色aⅴ视频一区日韩精品| 国语自产精品视频在线看| 亚洲夜间福利| 欧美精品三级| 亚洲国产精品一区| 久久青草欧美一区二区三区| 国产精品红桃| 一区二区三区欧美| 欧美激情精品久久久久久蜜臀| 国产一区二区你懂的| 亚洲一区二区三区午夜| 欧美日本久久| 亚洲美女少妇无套啪啪呻吟| 久久久久**毛片大全| 国产欧美一区二区三区在线看蜜臀 | 欧美日韩二区三区| 黄色成人免费观看| 欧美一区二区三区精品| 国产精品爱久久久久久久| 日韩视频免费看| 欧美激情性爽国产精品17p| 亚洲国产高清高潮精品美女| 久久精品国产清高在天天线| 国产亚洲成人一区| 久久精品欧美| 亚洲第一天堂av| 久久亚洲午夜电影| 亚洲国产精品成人综合| 麻豆亚洲精品| 亚洲欧洲在线一区| 欧美剧在线观看| 亚洲午夜精品网| 国产日韩欧美一区二区三区在线观看| 亚洲综合激情| 国产偷久久久精品专区| 久久免费视频在线观看| 在线观看日韩一区| 欧美1区视频| 一本一道久久综合狠狠老精东影业 | 欧美三级日韩三级国产三级| 99精品免费| 国产精品丝袜xxxxxxx| 欧美在线免费观看| 亚洲国产精品电影| 国产精品成人v| 欧美专区在线播放| 亚洲激情校园春色| 欧美日韩黄视频| 亚洲欧美一区二区三区久久| 韩国av一区二区| 欧美人交a欧美精品| 先锋影音久久久| 在线日韩精品视频| 欧美日韩亚洲一区二| 欧美一区二区三区视频免费| 亚洲国产精品久久| 欧美午夜精品久久久久久浪潮| 西瓜成人精品人成网站| 一色屋精品亚洲香蕉网站| 欧美日韩高清区| 欧美在线日韩精品| 亚洲乱码视频| 狠狠色丁香婷综合久久| 欧美日韩国产成人在线| 久久电影一区| 一区二区三区视频免费在线观看| 国产一区二区电影在线观看 | 久久精品国产亚洲高清剧情介绍| 最近中文字幕mv在线一区二区三区四区| 欧美日韩一本到| 久久综合久久美利坚合众国| 亚洲一二三区在线| 91久久夜色精品国产九色| 国产人妖伪娘一区91| 欧美精品一区二区高清在线观看| 午夜精品久久久99热福利| 99re6热只有精品免费观看| 国内精品视频一区| 国产精品久久久一区二区| 欧美大片在线观看一区二区| 欧美一区二区性| 在线视频精品一| 亚洲精品久久久蜜桃| 韩国欧美一区| 国产区在线观看成人精品| 亚洲国产精品一区二区久| 国产乱码精品一区二区三区忘忧草 | 久久一区二区三区国产精品| 亚洲愉拍自拍另类高清精品| 亚洲国产一区二区在线| 狠狠色综合播放一区二区| 国产精品区免费视频| 欧美日韩你懂的| 欧美精品在线免费观看| 欧美激情第4页| 欧美高清视频www夜色资源网| 久久久视频精品| 久久久人成影片一区二区三区观看| 欧美一区二区视频97| 久久动漫亚洲| 久久久亚洲高清| 久久久久一区二区三区| 久久精品中文字幕免费mv| 欧美一级网站| 久久久久九九视频| 久久视频精品在线| 久久综合网色—综合色88| 久久亚洲美女| 欧美国产免费| 欧美久久久久免费| 欧美视频在线不卡| 国产精品久久久久久久久婷婷| 欧美色图一区二区三区| 欧美性生交xxxxx久久久| 国产精品丝袜白浆摸在线| 国产日韩欧美二区| 在线 亚洲欧美在线综合一区| 一区在线免费| 一区二区高清| 欧美中文字幕在线播放| 麻豆亚洲精品| 欧美三级网址| 国内精品久久久久影院色| 在线观看一区二区精品视频| 亚洲精品永久免费| 亚洲欧美日韩在线| 久久综合九色99| 欧美伦理a级免费电影| 国产精品捆绑调教| 亚洲电影观看| 亚洲一区二区免费看| 欧美一区二区三区四区视频| 麻豆精品91| 国产精品毛片| 激情伊人五月天久久综合| 亚洲激情av在线| 亚洲综合国产| 美女免费视频一区| 国产精品丝袜白浆摸在线| 亚洲国产清纯| 欧美在线|欧美| 欧美日韩国产小视频| 经典三级久久| 亚洲欧美国产制服动漫| 欧美va亚洲va国产综合| 国产精品―色哟哟| 亚洲乱亚洲高清| 久久久久久欧美| 国产精品国产成人国产三级| 亚洲国产精品一区制服丝袜| 欧美一区二区精美| 欧美性猛交xxxx乱大交蜜桃| 在线播放豆国产99亚洲| 校园春色综合网| 欧美色播在线播放| 亚洲精品乱码久久久久久久久| 久久成年人视频| 国产精品免费一区豆花| 亚洲美女在线国产| 久久综合一区二区| 韩国av一区二区三区| 欧美在线91| 国产欧美丝祙| 亚洲中无吗在线|