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

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

CPSC 219代做、代寫Java語言設計
CPSC 219代做、代寫Java語言設計

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



CPSC 219: Introduction to Computer Science II
Assignment 1: Procedural Java – Snake Game
Course: CPSC233S24
Due Date: Friday, Sept. 27, 2024
Instructor: Steve Sutcliffe <steve dot sutcliffe at ucalgary dot ca> Version: 1.1.1
Weight: 10%
Objective:
Write a Java program with a standard procedural structure and save the work to a repository.
Group Size: 1‐2
This assignment can be completed independently, or you may pair with another individual from the same tutorial. You and your partner must write all the code you submit. Refer to the plagiarism guide at the end of this document for more details. You and your partner should be able to answer any questions about the codebase and fully understand what the code is doing. Individual marks may differ from the overall assignment grade based on how well you can answer these questions. If working with a partner, you and your partner must submit a solution to D2L. If a Git repository is required, you may use the same repository or separate repositories.
Technology
Java (JDK) 22, Git
Submission instructions
You must submit your assignment electronically in D2L, commit it to a repository in GitLab (csgit.ucalgary.ca), and have all of the TAs and instructors set as developers on the repository.
Submit your completed SnakeGame.java to D2L. Do not submit *.class files or any other files. Include your name and UCID at the top (and your partner’s if you have one). Additionally, submit a text document with the link to your repository (name the document gitlink.txt).
Please use the Assignment 1 Dropbox in D2L to submit your codebase. This submission must include all required .java files, which will be listed later. If you complete this assignment with a partner, you and your partner must submit the assignment to the Assignment 1 Dropbox in D2L.
In D2L, you can submit multiple times over the top of a previous submission. Do not wait until the last minute to attempt to submit! D2L is notorious for glitches and hangups at the 11th hour.
Your assignment must be completed in Java (not Kotlin or others) and executable with Java version 22 (JDK 22). You must only use standard libraries. Failure to submit the required .java files in D2L will be treated as a non‐ submission for the assignment. TAs will not grade .class files and will not make requests for missing files. Do not submit complete IntelliJ project folders in D2L.

Overview
You will complete a Java program that simulates a simplified version of the classic Snake game. The game's objective is for the player to navigate the snake around a grid, eating food to grow longer while avoiding collisions with the walls or itself. Your program must adhere to procedural programming principles and use global variables to maintain the game state. You will create one Java file: SnakeGame.java. The program will be text‐based and should use methods from both files to function correctly.
Game Description
In this simplified Snake game, the player controls a snake that moves around a grid. The snake grows longer each time it eats food, and the game ends if the snake collides with itself or the walls.
Game Specifications:
GAME BOARD
The game grid will be 20 (wide) x 10 (tall), and the walls will be marked with ‘#’ symbols.
THE SNAKE
The snake is represented by one or more ‘S’ characters. Whenever the game starts, it should start at a random location. When the game first starts, the length of the snake is 3. However, only the head is visible as the player moves, the remaining segments of the snake become visible. Whenever the snake eats a fruit (the ‘@’) the snake will grow in length (up to a maximum of 100 segments). If the snake hits a wall (the ‘#’) or itself the game ends.
The player can move the snake up, down, left, or right using the ‘w’, ‘a’, ‘s’, ‘d’ keys and they can quit the game using the ‘q’ key.
FOOD
The food is represented by an ‘@’ character and appears at random locations, but it cannot appear on the snake (S) or on the walls (#).
THE WALLS
The walls form the perimeter of the game board, and are represented by the ‘#’ symbol. The food and segments of the snake cannot be on the wall. A segment of the wall must be at 0,0 (see achievements).

EXAMPLE
Below is an example of the first few steps in the game:
####################
#..S...............#
#..................#
#..................#
#....@.............#
#..................#
#..................#
#..................#
#..................#
####################
Enter: w/a/s/d/q
s
####################
#..S...............#
#..S...............#
#..................#
#....@.............#
#..................#
#..................#
#..................#
#..................#
####################
Enter: w/a/s/d/q
s
####################
#..S...............#
#..S...............#
#..S...............#
#....@.............#
#..................#
#..................#
#..................#
#..................#
####################
Enter: w/a/s/d/q
s

####################
#..................#
#..S...............#
#..S...............#
#..S.@.............#
#..................#
#..................#
#..................#
#..................#
####################
Enter: w/a/s/d/q
d
####################
#..................#
#..................#
#..S...............#
#..SS@.............#
#..................#
#..................#
#..................#
#..................#
####################
Enter: w/a/s/d/q
d
####################
#..................#
#.................@#
#..S...............#
#..SSS.............#
#..................#
#..................#
#..................#
#..................#
####################

Requirements
Global Variables: Use global variables to maintain the game state, including the snake's position, the length of the snake, and the game grid.
Procedural Design: Your implementation must be procedural without custom classes and objects.
Documentation: Provide clear comments and documentation within your code explaining each function's functionality and the program's overall structure.
Display: in the console, display the game grid, the food and the snake
User Interaction: Input commands to move the snake ('w' for up, 's' for down, 'a' for left, 'd' for right, ‘q’ to quit).
Check for collisions and generate new food after the snake “eats” the existing food.
End the game when the snake collides with the walls or itself.
The snake should start as three segments long and should “grow” (add another segment) each time after it “eats” the food.
A starting file has been provided for you. You must use the variables and methods present in that file (e.g., initializeGame()), but you can add any additional variables and methods you need.
Demonstration
You must demonstrate your assignment to the tutorial leader to receive a mark for this assignment. The tutorial leader will ask questions to test your understanding of your submitted code. Your assignment will receive an F if you cannot sufficiently answer any of the questions from a TA or instructor. A demo is required in order to receive any grade for this assignment.
Grading
You will receive a B‐grade if you complete everything this assignment requires. You can complete additional requirements to improve your grade beyond a B+ (see the A Grade Range Requirements). These additional tasks are designed to challenge you further and provide an opportunity to demonstrate a deeper understanding of the material and greater skill.
The most important part of these assignments is your understanding of the code. You need to be able to demonstrate that you understand the code you are submitting. Failure to explain your code will be considered a case of copying code from another source (ChatGPT, another student, etc.) and qualify for academic misconduct.

B GRADE RANGE REQUIREMENTS:
Submission Complete: The assignment was submitted on time to D2L with all required files (SnakeGame.java and gitlink.txt) and a link to GitLab with the TAs and instructor as developers.
Functionality: The program works as required and meets the specifications (initializing the game, displaying the grid, moving the snake, and generating food).
Code Base: All of the required methods and variables are present and the code makes logical sense. Code Documentation: Code is well documented.
Demonstration: The student satisfactorily answers the tutorial leader's questions about the code and clearly understands the implementation.
A GRADE RANGE REQUIREMENTS
To improve your grade beyond a B, you need to complete all of the tasks outlined in the B Grade Range Requirements and the additional tasks below. The TAs will not help you with these.
Obstacles: Add random obstacles ('%') to the grid that the snake must avoid. These obstacles should not move but provide additional challenges for navigation.
Wrap‐Around Movement: Implement wrap‐around movement so that the snake can move off one grid edge and reappear on the opposite edge in areas with gaps in the wall (you will also need to implement the gaps in the wall).
C GRADE RANGE REQUIREMENTS
Submission: The assignment is submitted on time to D2L with all required files and a link to the repository with the TAs and instructor as developers.
Code Explanation: The student satisfactorily answers the tutorial leader's questions about the code and clearly understands the implementation.
One or more of the following apply:
Limited Functionality: The game grid displays the walls, the food and the starting location of the snake, but other functionality is missing or broken.
Limited/No Documentation: Significant parts of the code are not adequately documented.
Code Quality: The code breaks a few of the requirements (e.g., methods and variables required to be used, or is not procedural, etc).
D Grade Range
Significant portions of the program are missing or broken, however, required files were submitted. Explanations of the code are poor.
F Grade
Submission was missing or the student is not able to answer the questions of the TA adequately.

LATE POLICY
The following late policy from SENG300 will be used if you are out of the five grace days:
assessment_grade = raw_grade * (1 – max(0, (hours_late ‐ 1) / **))
This means there is a maximum of 1 hour grace period before the penalties begin. After 48 hours, the assignment is worth 0.

INCOMPLETE
This assignment will be marked as “Incomplete” if any of the conditions below apply to your assignment. If your assignment is incomplete, you must submit the missing components within two days. Failure to submit incomplete assignment components will result in an (F) for that assignment. Each missing component will decrease your letter grade for the assignment by half a letter grade step.
Incomplete conditions:
**3; GitLab repo incomplete (missing link, TAs and instructor not established as a developer)
**3; Required *.java files missing in D2L
**3; Required *.java files missing in the repository
Plagiarism
Discussing the assignment requirements with others is reasonable and an excellent way to learn. However, the work you hand in must ultimately be your work. This is essential for you to benefit from the learning experience and for the instructors and TAs to grade you fairly. Handing in work that is not your original work but is represented as such is plagiarism and academic misconduct. Penalties for academic misconduct are outlined in the university calendar.
Here are some tips to avoid plagiarism in your programming assignments.
1. Cite all sources of code you hand in that are not your original work. You can put the citations into comments in your program. For example, if you find and use code found on a website, include a comment that says, for example:
# The following code is from
Use the complete URL so that the marker can check the source.
2. A tool like chat‐GPT can be used to improve small code blocks. For example, five lines of code. If you get help from code assistance like Chat‐GPT, you should comment above the block of code you requested assistance on debugging or improving and cite the tool used to get that suggestion. Using a tool like chat‐ GPT to write the majority of your assignment requirements will be treated as plagiarism if found without citation, and with citation, it will be treated as 0 for the component the student did not complete. Code improvement of short length will get credit if commented/cited properly.
3. Citing sources avoids accusations of plagiarism and penalties for academic misconduct. However, you may still get a low grade if you submit code not primarily developed by yourself. Cited material should never be used to complete core assignment specifications. Before submitting, you can and should verify any code you are concerned about with your instructor/TA.
4. Discuss and share ideas with other programmers as much as you like, but make sure that when you write your code, it is your own. A good rule of thumb is to wait 20 minutes after talking with somebody before writing your code. If you exchange code with another student, write code while discussing it with a fellow student, or copy code from another person’s screen, this code is not yours.
5. Collaborative coding outside your team is strictly prohibited. Your assignment submission must be strictly your code. Discussing anything beyond assignment requirements and ideas is a strictly forbidden form of collaboration. This includes sharing code, discussing the code itself, or modelling code after another

student's algorithm. You cannot use (even with citation) another student’s code.
6. Making your code available, even passively, for others to copy or potentially copy is also plagiarism.
7. We will look for plagiarism in all code submissions, possibly using automated software designed for the
task. For example, see Measures of Software Similarity (MOSS ‐ https://theory.stanford.edu/~aiken/moss/).
8. Remember, if you are having trouble with an assignment, it is always better to go to your TA and/or instructor for help rather than plagiarizing. A common penalty is an F on a plagiarized assignment.
9. See the Course Outline for the policy on Generative AI use (such as ChatGPT). Generally, you can use ChatGPT to help understand concepts and to debug code. Always cite your use of Generative AI and explain what the code does.


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







 

掃一掃在手機打開當前頁
  • 上一篇:CPSC 219代做、代寫Java語言設計
  • 下一篇:代做CS 839、代寫python/Java設計編程
  • 無相關信息
    合肥生活資訊

    合肥圖文信息
    流體仿真外包多少錢_專業(yè)CFD分析代做_友商科技CAE仿真
    流體仿真外包多少錢_專業(yè)CFD分析代做_友商科
    CAE仿真分析代做公司 CFD流體仿真服務 管路流場仿真外包
    CAE仿真分析代做公司 CFD流體仿真服務 管路
    流體CFD仿真分析_代做咨詢服務_Fluent 仿真技術服務
    流體CFD仿真分析_代做咨詢服務_Fluent 仿真
    結構仿真分析服務_CAE代做咨詢外包_剛強度疲勞振動
    結構仿真分析服務_CAE代做咨詢外包_剛強度疲
    流體cfd仿真分析服務 7類仿真分析代做服務40個行業(yè)
    流體cfd仿真分析服務 7類仿真分析代做服務4
    超全面的拼多多電商運營技巧,多多開團助手,多多出評軟件徽y1698861
    超全面的拼多多電商運營技巧,多多開團助手
    CAE有限元仿真分析團隊,2026仿真代做咨詢服務平臺
    CAE有限元仿真分析團隊,2026仿真代做咨詢服
    釘釘簽到打卡位置修改神器,2026怎么修改定位在范圍內
    釘釘簽到打卡位置修改神器,2026怎么修改定
  • 短信驗證碼 寵物飼養(yǎng) 十大衛(wèi)浴品牌排行 suno 豆包網頁版入口 wps 目錄網 排行網

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

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

    国产人妻人伦精品_欧美一区二区三区图_亚洲欧洲久久_日韩美女av在线免费观看
    91国产在线免费观看| 国产成人中文字幕| 国产精品久久久久久久7电影| 欧美激情图片区| 九九九九免费视频| 欧美精品卡一卡二| 国产成人在线小视频| 欧美激情二区三区| 国产精品专区第二| 亚洲成人精品电影在线观看| 国产福利不卡| 欧美一区二区激情 | 久久五月天色综合| 日本免费久久高清视频| 精品视频免费观看| 久久亚洲一区二区三区四区五区高 | 国产日本欧美一区二区三区| 国产精品久久久久久久久久新婚| 欧洲成人在线视频| 久久久精品视频在线观看| 热久久免费视频精品| 日韩中文字幕视频| 欧美亚洲第一页| 国产精品网站大全| 黄色片一级视频| 国产精品激情自拍| 国产日韩精品一区观看| 国产精品老女人视频| 国产综合av一区二区三区| 欧美精品在线播放| 国产伦精品一区二区三区高清版| 一区二区传媒有限公司| 成人亚洲欧美一区二区三区| 在线视频精品一区| 97国产在线观看| 欧美一区二区三区图| 九色综合婷婷综合| 黄色高清视频网站| 欧美日本亚洲视频| 91看片淫黄大片91| 日韩网址在线观看| 久热99视频在线观看| 国内视频一区二区| 亚洲一区二区精品在线| 久久久久狠狠高潮亚洲精品| 日韩免费高清在线观看| 国产精品无码免费专区午夜| 国产欧美日韩中文| 天天干天天色天天爽| 国产成人啪精品视频免费网| 精品一区二区成人免费视频| 亚洲欧洲一区二区| 色偷偷噜噜噜亚洲男人| 国产在线视频欧美| 亚洲国产日韩欧美| 国产精品天天狠天天看| 国产精品一区二区你懂得| 亚洲欧美精品在线观看| www.日本久久久久com.| 国产精品一区二区女厕厕| 日韩avxxx| 国产精品电影观看| 91精品国产自产在线| 欧美日韩一区在线视频| 中文字幕中文字幕在线中心一区 | 久久久久久久久久久综合| 免费高清一区二区三区| 亚洲自拍av在线| 视频一区视频二区国产精品| 精品亚洲第一| 性色av一区二区三区在线观看| 久久人人爽人人爽爽久久| www.久久草| 欧美日韩一区综合| 亚洲a级在线观看| 国产精品国产精品国产专区不卡 | 亚洲乱码一区二区三区三上悠亚| 日韩视频第一页| 91免费版看片| 美女在线免费视频| 欧美一级特黄aaaaaa在线看片| 久久久精品久久| 国产精品99久久久久久www | 99精品视频播放| 美日韩免费视频| 日韩黄色片在线| 亚洲精品一区二区三区av| 精品激情国产视频| 久久久亚洲欧洲日产国码aⅴ| 蜜臀av.com| 日本免费高清不卡| 伊人久久在线观看| 国产精品吹潮在线观看| 久久久噜噜噜www成人网| 成人a免费视频| 国产精品人成电影| 亚洲成人第一| 国产精品免费观看高清| 日本精品久久久久久久| 欧美xxxx18国产| 国产精品美女av| 色婷婷综合久久久久| 久久香蕉综合色| 成人在线小视频| 僵尸世界大战2 在线播放| 日本精品久久久久久久久久| 亚洲a成v人在线观看| 久久中国妇女中文字幕| 日韩在线中文字幕| 国产超级av在线| 99久久国产宗和精品1上映| 蜜桃麻豆91| 激情五月婷婷六月| 秋霞在线一区二区| yy111111少妇影院日韩夜片| 精品国产一区二区三区在线| 一区二区三区av| 日韩中文字幕在线视频| 久久九九视频| 99热亚洲精品| 不卡一卡2卡3卡4卡精品在| 国产日产欧美视频| 欧美成人一区二区在线观看| 日韩女优在线播放| 日本高清+成人网在线观看| 日韩欧美在线观看强乱免费| 欧美一区二区三区电影在线观看| 亚洲a∨一区二区三区| 亚洲一区二区三区午夜| 亚洲一区二区三区精品在线观看| 亚洲在线视频观看| 午夜老司机精品| 日韩av播放器| 欧洲亚洲免费视频| 欧美变态另类刺激| 国产小视频免费| 成人中文字幕在线观看| 成人国产一区二区| 久久综合色视频| 日韩中文在线中文网三级| 国产精品视频自拍| 国产精品-区区久久久狼| 精品久久久无码人妻字幂| 亚洲综合在线中文字幕| 视频在线99re| 人妻精品无码一区二区三区| 国产一区在线播放| 精品国偷自产在线| 日本一区二区在线| 男女超爽视频免费播放| 日韩一区二区高清视频| www.日本久久久久com.| 美女精品久久久| 麻豆久久久av免费| 国产精品无码av在线播放| 日韩精品在线中文字幕| 亚洲第一精品区| 久久久久久久激情| 国产精品男人的天堂| 91精品视频在线免费观看| 国产富婆一区二区三区| 精品国偷自产在线视频| 久操成人在线视频| 亚洲一区二区三区av无码| 日韩成人av电影在线| 欧美久久久久久久久久久久久| 国产色一区二区三区| 国产精品一区二区免费看 | 久久久久一本一区二区青青蜜月| 久久精品国产综合| 中国成人亚色综合网站| 日韩精品欧美专区| 国产精品中出一区二区三区| 久久免费精品视频| 国产精品区一区| 亚洲精品视频一二三| 狠狠色综合欧美激情| 日韩av免费在线播放| 蜜桃视频日韩| 99久久激情视频| 国产精品美女av| 无码日韩人妻精品久久蜜桃| 麻豆av一区二区| 久久精品国产精品国产精品污| 久久成人精品电影| 青青草国产免费| 97精品国产97久久久久久春色| 久久精品在线视频| 亚洲aa中文字幕| 国产一区二区在线免费| 久久久久久久色| 亚洲资源视频| 国产原创精品| www.日韩.com| 亚洲一区二区三区香蕉| 欧美激情亚洲天堂| 8090成年在线看片午夜| 精品国产乱码久久久久久88av| 日本www高清视频| 成人福利视频网|