不要着急,这部分教学内容要一步步来,如果我堆出一大堆文字,反而不利于大家接收,到时候又变成“照抄”了。

为了大家更方便吸收,后面的课程内容,我将会把发课内容减少,发课频率提高一点。这样可能会解决很多人关于“看文字看晕”的现象……

今天我们再重申一下这部分问题,同时也是一个很重要的key point。


上一次的程序完成后,我们最后部分提到了一个问题。

被控制的点snake和apple碰不上(吃不到),是不是?

这里涉及到了一个“数据体系”的问题。(数据的取值方式)

首先,我们来看一下snake的取值方式。

snake初始坐标为(90,60),每按键一次,移动一格,也就是10个像素。

所以它只会取到横纵坐标的10的倍数值。

比如(60,30)或者(70,100)这样的坐标点。

再看一下apple的取值。

其随机取值范围为,0~170和0~120,换言之,它的取值范围更广。

程序一开始,它的坐标可能就随机生成在(21,36)这样的位置。

这就导致了两个点可能一开始就“注定无缘”了……

我们要解决这个问题,就要让apple的横纵坐标取值方法和snake一致。


大家不要小看这一步,其实这是一个很关键的环节。

涉及到了一个很简单的算法。(再简单也叫算法!)

170个像素点,只取其中10、20、30……的数列,

那么其实就是取10的倍数值。

我们把applex和appley的随机取值改为取:0~17和0~12。

然后随机取值乘以10,这个问题才能解决。

apple和snake的取值都会是10的倍数产生的坐标,换句话说,就是会重合差生横纵坐标同时相等的情况了。

这里,我们要进一步理解下这个知识点。

广告

半小时漫画中国史1+中国史2+中国史3+世界史(套装共4册,作者签章版)

作者:陈磊(笔名:二混子) 著 / 读客文化 出品

当当


我们的程序特意使用10*10的点,这是为了方便计算。

并且,标准坐标是以(0,0)为基本点的。

如果使用7*7的大小,另外标准坐标为(2,2)这样的位置呢?

请这样理解这个问题。

我们现在是以坐标(0,0)到目标为(170,120)的坐标点圈出的一个范围内出现这个随机的apple。

而事实上这不是一个很好的显示范围。因为太靠屏幕边缘了。

如果以(2、2)~(172,122)作为取值范围,可能效果会更好。

但这个问题会马上变复杂一些。

数据要取7、14、21、28……

所以,取值我们可以理解为是7的倍数,这个操作类似于上面的10的取值。

而标准坐标点,还要再加上去。

换言之,这个取值公式就会变为7n+2。

今天的内容不多,大家可以先自行思考一下。

因为这个涉及到我们后面一步的操作。


十一还是要以休息为主,老丁有时间也会发课。

鉴于微信马上要改版了,喜欢本号的朋友,劳烦点一下收藏本公众号,这样才会更方便的看到我的文章。

祝节日快乐哦!

全文完,你不点个赞吗?

取值方法_「EV3进阶课」制作小游戏:数据取值体系要统一(三)相关推荐

  1. python爬取天天基金_「天天基金网每日净值」python爬虫简单爬取天天基金的基金信息和每日净值 - 金橙教程网...

    天天基金网每日净值 fROM bs4 import BeautifulSoup import Requests import JSON import js2py import time from el ...

  2. 「深圳紫石」招聘小游戏开发者、Java后端!

    小游戏开发工程师 简介 招聘人数 2~3人 薪资范围 10000-15000元/月 可面谈 职位描述: 1.负责小游戏(QQ玩一玩.微信小游戏)功能模块的设计及开发,实现策划需求 2.高效的与服务器端 ...

  3. 人文英语学习品牌「友邻优课」携手神策数据 精细化数据分析让每一次互动都有价值

    近日,俞敏洪力荐的人文英语学习品牌「友邻优课」签约神策数据.未来神策将以第三方数据分析平台的形式,进一步加强「友邻优课」APP 的产品体验,不断进行产品和服务的创新与突破,切实实现业务的良性高速增长. ...

  4. 计算机基础课堂小游戏互动,16个课前热身小游戏:让每一堂课都充满新鲜感

    原标题:16个课前热身小游戏:让每一堂课都充满新鲜感 课堂正式开始之前,设置热身游戏,教学效果会更佳.它可以达到两个目的:一是把学生的注意力吸引到课堂:二是通过游戏自然过渡到课堂内容,增加课堂趣味性和 ...

  5. 「腾讯地图」微信小程序插件:提供简单的路线多方案规划服务

    上期,我们在<「腾讯视频」微信小程序插件介绍>一文中介绍了「腾讯视频」小程序插件的意义.使用场景以及使用方法. 今天我们会与大家分享一款同样优秀的小程序插件--「腾讯地图」插件,从使用场景 ...

  6. python能制作游戏吗_如何用Python制作小游戏

    要想用Python制作小游戏,必须要安装一个插件Pygame 什么是Pygame Pygame是跨平台Python模块,专为电子游戏设计,包含图像.声音.建立在SDL基础上,允许实时电子游戏研发而无需 ...

  7. 取值方法_我国细骨料试验方法标准分析及修订建议

    引 言 我国涉及细骨料试验方法的标准有六部,包括一部国家标准.五部行业标准.其中国家推荐性标准 GB/T 14684-2011<建设用砂>(以下简称 GB/T 14684),由国家标准化委 ...

  8. 取值方法_数据维度爆炸怎么办?详解 5 大常用的特征选择方法

    公众号关注 "ML_NLP"设为 "星标",重磅干货,第一时间送达! 转自 | DataWhale 在许多机器学习相关的书里,很难找到关于特征选择的内容,因为特 ...

  9. go 修改结构体方法_「GCTT 出品」Go 系列教程——26. 结构体取代类

    Go语言中文网,致力于每日分享编码.开源等知识,欢迎关注我,会有意想不到的收获! Go 支持面向对象吗? Go 并不是完全面向对象的编程语言.Go 官网的 FAQ 回答了 Go 是否是面向对象语言,摘 ...

最新文章

  1. ios日历视图实现日期输入
  2. pythonappium环境搭建_python appium环境搭建
  3. ThinkPHP3.2 G函数代码及 使用方法
  4. 去重 指定区域数据_大数据分析常用去重算法分析
  5. java中四类八中_JAVA中的八中基本数据类型
  6. Android 系统(218)---Android的事件分发机制以及滑动冲突的解决
  7. andrew ng 机器学习笔记_所有笔记目录 | 数据分析 | 机器学习 | 深度学习等
  8. 1+2+3+...+100 不允许使用乘法和除法,条件分支循环等
  9. [Swift] 成语我抖Wordle成语猜谜游戏
  10. python问题解决:TypeError: ufunc 'add' output (typecode 'O') could not be coerced to provided output para
  11. 用python下载视频代码_python实现视频下载
  12. 网络安全红蓝军对抗完整战术周期
  13. 悬针纹怎么去除 悬针纹化解方法有哪些
  14. 用Python制作自己的炫酷二维码
  15. AST实战|AST入门与实战星球高频问题汇总(二)
  16. 机上娱乐(IFE)的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
  17. VIP服务器间转送文件,vip服务器
  18. platformIO配合vscode搭建STM32开发平台
  19. EGE绘图之三 动画
  20. JAVA中的字符编码

热门文章

  1. python csdn博客_GitHub - 1783955902/CSDNBlogBackup: Python实现CSDN博客的完整备份
  2. pythonpptx 楷体_python-pptx 实践 4:添加形状、文本
  3. yii2 提供接口给java_yii2写api接口步骤
  4. 配置frp报错start error: type [http] not support when vhost_http_port is not set
  5. matlab如何实现降维,matlab怎么把矩阵降维
  6. 决策算法python_GitHub - nxety/MachineLearning_Python: 机器学习算法python实现
  7. spss数据_怎么建立SPSS数据库、录入数据?
  8. java创建链表成绩管理系统_成绩管理系统 链表版
  9. Mina网络通信框架
  10. @Autowired注解能用在static属性吗?autowired注入static属性上为null