杭州集团网站建设网站美工用什么软件

张小明 2026/1/9 23:24:07
杭州集团网站建设,网站美工用什么软件,网站百度推广怎么做,查公司的口碑和评价的网站C版:代码说明#xff1a;main.cpp#xff1a;实现了贪吃蛇游戏的核心逻辑#xff0c;包括游戏初始化、界面绘制、用户输入处理、游戏状态更新等功能Makefile#xff1a;提供项目编译配置#xff0c;支持通过make命令编译生成可执行文件游戏特性#xff1a;经典的贪吃蛇玩…C版:代码说明main.cpp实现了贪吃蛇游戏的核心逻辑包括游戏初始化、界面绘制、用户输入处理、游戏状态更新等功能Makefile提供项目编译配置支持通过make命令编译生成可执行文件游戏特性经典的贪吃蛇玩法支持WASD控制方向X键退出游戏实时显示得分碰撞检测(边界和自身)#include iostream #include conio.h #include windows.h #include deque #include ctime #include cstdlib using namespace std; // 游戏区域大小 const int WIDTH 30; const int HEIGHT 20; // 方向枚举 enum Direction { STOP 0, LEFT, RIGHT, UP, DOWN }; // 蛇的坐标点结构体 struct Point { int x; int y; }; // 全局变量 bool gameOver; Point food; dequePoint snake; // 使用双端队列存储蛇身 Direction dir; int score; // 初始化游戏 void Setup() { gameOver false; dir STOP; // 初始化蛇头位置 Point head {WIDTH / 2, HEIGHT / 2}; snake.push_front(head); // 随机生成食物位置 srand((unsigned) time(NULL)); food.x rand() % WIDTH; food.y rand() % HEIGHT; score 0; } // 绘制游戏界面 void Draw() { system(cls); // 清屏 // 绘制上边界 for (int i 0; i WIDTH2; i) cout #; cout endl; for (int i 0; i HEIGHT; i) { for (int j 0; j WIDTH; j) { // 绘制左边界 if (j 0) cout #; // 绘制蛇头或身体 bool isSnake false; for (int k 0; k snake.size(); k) { if (snake[k].x j snake[k].y i) { if (k 0) // 蛇头 cout O; else // 蛇身 cout o; isSnake true; break; } } // 绘制食物 if (!isSnake) { if (j food.x i food.y) cout F; else cout ; } // 绘制右边界 if (j WIDTH - 1) cout #; } cout endl; } // 绘制下边界 for (int i 0; i WIDTH2; i) cout #; cout endl; // 显示分数 cout Score: score endl; } // 处理用户输入 void Input() { if (_kbhit()) { switch (_getch()) { case a: case A: if (dir ! RIGHT) dir LEFT; break; case d: case D: if (dir ! LEFT) dir RIGHT; break; case w: case W: if (dir ! DOWN) dir UP; break; case s: case S: if (dir ! UP) dir DOWN; break; case x: case X: gameOver true; break; } } } // 游戏逻辑更新 void Logic() { // 根据方向移动蛇头 Point newHead snake.front(); switch (dir) { case LEFT: newHead.x--; break; case RIGHT: newHead.x; break; case UP: newHead.y--; break; case DOWN: newHead.y; break; default: break; } // 检查碰撞边界 if (newHead.x WIDTH || newHead.x 0 || newHead.y HEIGHT || newHead.y 0) gameOver true; // 检查碰撞自身 for (int i 0; i snake.size(); i) { if (snake[i].x newHead.x snake[i].y newHead.y) gameOver true; } // 添加新头部 snake.push_front(newHead); // 检查是否吃到食物 if (newHead.x food.x newHead.y food.y) { score 10; // 重新生成食物 food.x rand() % WIDTH; food.y rand() % HEIGHT; } else { // 移除尾部(没有吃到食物) snake.pop_back(); } } int main() { Setup(); while (!gameOver) { Draw(); Input(); Logic(); Sleep(100); // 控制游戏速度 } cout Game Over! Final Score: score endl; return 0; }python版:代码说明snake_game.py实现了完整的贪吃蛇游戏逻辑包括蛇的移动、食物生成、碰撞检测、分数计算等功能requirements.txt项目依赖配置文件指定了pygame版本要求游戏特性支持方向键控制、自动边界循环、碰撞检测、实时分数显示、游戏结束提示和重新开始功能界面设计采用网格背景、不同颜色区分蛇头蛇身、清晰的UI提示和操作说明import pygame import sys import random import math # 初始化Pygame pygame.init() # 游戏常量 WINDOW_WIDTH 800 WINDOW_HEIGHT 600 GRID_SIZE 20 GRID_WIDTH WINDOW_WIDTH // GRID_SIZE GRID_HEIGHT WINDOW_HEIGHT // GRID_SIZE # 颜色定义 BLACK (0, 0, 0) WHITE (255, 255, 255) GREEN (0, 255, 0) RED (255, 0, 0) BLUE (0, 0, 255) YELLOW (255, 255, 0) PURPLE (128, 0, 128) GRAY (128, 128, 128) DARK_GREEN (0, 200, 0) # 方向常量 UP (0, -1) DOWN (0, 1) LEFT (-1, 0) RIGHT (1, 0) class Snake: def __init__(self): self.reset() def reset(self): self.length 3 self.positions [(GRID_WIDTH // 2, GRID_HEIGHT // 2)] self.direction RIGHT self.score 0 self.grow_to 3 self.is_alive True def get_head_position(self): return self.positions[0] def update(self): if not self.is_alive: return head self.get_head_position() x, y self.direction new_x (head[0] x) % GRID_WIDTH new_y (head[1] y) % GRID_HEIGHT new_position (new_x, new_y) # 检查是否撞到自己 if new_position in self.positions[1:]: self.is_alive False return self.positions.insert(0, new_position) if len(self.positions) self.grow_to: self.positions.pop() def render(self, surface): for i, pos in enumerate(self.positions): rect pygame.Rect(pos[0] * GRID_SIZE, pos[1] * GRID_SIZE, GRID_SIZE, GRID_SIZE) if i 0: # 蛇头 pygame.draw.rect(surface, DARK_GREEN, rect) pygame.draw.rect(surface, BLACK, rect, 1) else: # 蛇身 pygame.draw.rect(surface, GREEN, rect) pygame.draw.rect(surface, BLACK, rect, 1) def change_direction(self, direction): # 防止蛇反向移动 if (direction[0] * -1, direction[1] * -1) ! self.direction: self.direction direction class Food: def __init__(self): self.position (0, 0) self.color RED self.randomize_position() def randomize_position(self): self.position (random.randint(0, GRID_WIDTH - 1), random.randint(0, GRID_HEIGHT - 1)) def render(self, surface): rect pygame.Rect(self.position[0] * GRID_SIZE, self.position[1] * GRID_SIZE, GRID_SIZE, GRID_SIZE) pygame.draw.rect(surface, self.color, rect) pygame.draw.rect(surface, BLACK, rect, 1) class Game: def __init__(self): self.window pygame.display.set_mode((WINDOW_WIDTH, WINDOW_HEIGHT)) pygame.display.set_caption(贪吃蛇游戏) self.clock pygame.time.Clock() self.font pygame.font.SysFont(None, 36) self.small_font pygame.font.SysFont(None, 24) self.snake Snake() self.food Food() self.game_state playing # playing, game_over def handle_events(self): for event in pygame.event.get(): if event.type pygame.QUIT: pygame.quit() sys.exit() if event.type pygame.KEYDOWN: if self.game_state playing: if event.key pygame.K_UP: self.snake.change_direction(UP) elif event.key pygame.K_DOWN: self.snake.change_direction(DOWN) elif event.key pygame.K_LEFT: self.snake.change_direction(LEFT) elif event.key pygame.K_RIGHT: self.snake.change_direction(RIGHT) elif self.game_state game_over: if event.key pygame.K_SPACE: self.restart_game() def update(self): if self.game_state playing: self.snake.update() # 检查蛇是否存活 if not self.snake.is_alive: self.game_state game_over return # 检查是否吃到食物 if self.snake.get_head_position() self.food.position: self.snake.grow_to 1 self.snake.score 10 self.food.randomize_position() # 确保食物不会出现在蛇身上 while self.food.position in self.snake.positions: self.food.randomize_position() def render(self): self.window.fill(BLACK) # 绘制网格背景 for x in range(0, WINDOW_WIDTH, GRID_SIZE): pygame.draw.line(self.window, GRAY, (x, 0), (x, WINDOW_HEIGHT), 1) for y in range(0, WINDOW_HEIGHT, GRID_SIZE): pygame.draw.line(self.window, GRAY, (0, y), (WINDOW_WIDTH, y), 1) # 绘制游戏对象 self.snake.render(self.window) self.food.render(self.window) # 绘制分数 score_text self.font.render(f分数: {self.snake.score}, True, WHITE) self.window.blit(score_text, (10, 10)) # 绘制游戏状态信息 if self.game_state game_over: game_over_text self.font.render(游戏结束!, True, RED) restart_text self.small_font.render(按空格键重新开始, True, WHITE) # 居中显示文本 game_over_rect game_over_text.get_rect(center(WINDOW_WIDTH//2, WINDOW_HEIGHT//2 - 30)) restart_rect restart_text.get_rect(center(WINDOW_WIDTH//2, WINDOW_HEIGHT//2 10)) self.window.blit(game_over_text, game_over_rect) self.window.blit(restart_text, restart_rect) # 绘制操作说明 if self.game_state playing: instructions [ 使用方向键控制蛇的移动, 吃掉红色食物来增长身体和得分, 避免撞到自己的身体 ] for i, instruction in enumerate(instructions): text self.small_font.render(instruction, True, YELLOW) self.window.blit(text, (WINDOW_WIDTH - text.get_width() - 10, 10 i * 25)) pygame.display.flip() def restart_game(self): self.snake.reset() self.food.randomize_position() self.game_state playing def run(self): while True: self.handle_events() self.update() self.render() self.clock.tick(10) # 控制游戏速度 if __name__ __main__: game Game() game.run()
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

客户案例 网站设计厦门建设局局长李德才

各位同仁,同学们,大家好。今天我们汇聚一堂,探讨一个在现代前端开发中至关重要,且在并发渲染模式下极易被忽视的问题——“外部存储撕裂”(External Store Tearing)。这是一个深入理解 React 并发机制&…

张小明 2026/1/7 15:35:15 网站建设

最常见企业网站公司有哪些免费网站制作软件的app

Qwen3-VL康复训练评估:患者动作完成度视觉评分 在现代康复医学中,一个看似简单却长期困扰临床实践的问题浮出水面:如何客观、高效地评估患者在家中的训练质量?传统方式依赖治疗师肉眼观察和主观打分,不仅耗时费力&…

张小明 2026/1/8 14:46:09 网站建设

商城系统网站建设开发良品铺子网络营销策划书

YOLO目标检测支持自定义ROI区域过滤干扰 在工厂车间的高速生产线上,摄像头每秒捕捉数百帧图像,YOLO模型正以毫秒级速度识别每一个电子元件的位置。然而,背景中闪烁的指示灯、金属支架的反光却频繁触发误报警——这些“视觉噪声”不仅消耗算力…

张小明 2026/1/8 16:55:33 网站建设

沈阳做网站哪家质量好价格低网站设计网上培训学校

PyTorch-CUDA-v2.9 镜像中如何高效管理多个 Python 虚拟环境? 在深度学习项目日益复杂的今天,一个团队往往同时推进多个任务:有的需要复现早期论文使用 PyTorch 1.x 版本,有的则要尝试最新特性依赖 PyTorch 2.9;有些模…

张小明 2026/1/8 16:55:31 网站建设

网页设计及网站建设的相关概念怎么样免费给网站做优化

WechatHook是一个基于模块化框架和Android辅助功能技术的开源项目,为开发者提供了强大的微信自动化控制能力。通过深度定制微信功能,该项目实现了智能回复、位置修改、自动操作等多种实用功能,为微信生态开发提供了丰富的技术参考。 【免费下…

张小明 2026/1/7 19:12:31 网站建设

在线直播网站开发自己做的网站打开是乱码

如大家所熟悉的,UG(Unigraphics NX)是一款功能强大且应用较为广泛的集成化产品工程解决方案,广泛应用于数字化造型、产品设计、仿真验证及制造过程,旨在优化产品开发周期,提升效率并缩短上市时间。‌目前比…

张小明 2026/1/6 20:11:45 网站建设