用Scratch实现十二星座查询
授权转载自: 小海豚科学馆 公众号
欢迎大家想进阶学习Scratch数学算法的可以关注她!
星座是占星学中必不可少的组成部分之一,也是天上一群群的恒星组合。自从古代以来,人类便把三五成群的恒星与他们神话中的人物或器具联系起来,每个星座都有自己独特的故事和传说。
在西方占星学上,黄道12星座是宇宙方位的代名词,一个人出生时,各星体落入黄道上的位置,说明了一个人的先天性格及天赋。黄道12星座象征心理层面,反映出一个人行为的表现的方式。于是将黄道分成12个星座,称为黄道12星座。
星座名称 |
开始日期 |
结束日期 |
白羊座 |
3月21日 |
4月20日 |
金牛座 |
4月21日 |
5月21日 |
双子座 |
5月22日 |
6月21日 |
巨蟹座 |
6月22日 |
7月22日 |
狮子座 |
7月23日 |
8月23日 |
处女座 |
8月24日 |
9月23日 |
天秤座 |
9月24日 |
10月23日 |
天蝎座 |
10月24日 |
11月22日 |
射手座 |
11月23日 |
12月21日 |
摩羯座 |
12月22日 |
1月20日 |
水瓶座 |
1月21日 |
2月19日 |
双鱼座 |
2月20日 |
3月20日 |
根据上面星座日期对照表,请你用Scratch编写程序,通过输入一个人的生日查询出所属的星座。
【编程解题】
1、数据整理。
我们把星座名称、开始日期和结束日期分别保存到3个不同的文本文件中,每个数据占据一行。日期格式为:mmdd,即月和日分别用两位数字表示,比如1月1日,则输入0101。查询星座时也要按此格式输入日期。小海豚科学馆(微信公众号)提示您,使用windows系统自带的记事本软件。
2、数据导入。
分别创建三个列表:星座、开始日期、结束日期,再将星座数据导入这个三个列表中。在舞台上的列表的空白区域点击鼠标右键,在弹出的右键菜单中使用“导入”命令把整理好的三个数据文件的内容分别导入对应的列表中。
3、编写入口程序。
使用“询问……并等待”指令接收用户输入的出生日期,然后调用模块“星座查询”来查询用户属于哪个星座。
4、编写模块“星座查询”。
创建一个名为“星座查询”的模块,参数为:出生日期。再用“重复执行直到……”指令构建一个循环结构来遍历十二星座的开始日期和结束日期,并在循环体内“如果……那么”指令判断用户输入的出生日期是否在哪个星座所属的范围内。依次判断“开始日期”列表和“结束日期”列表中的各项,直到找到匹配的星座,就将星座名称用“说”指令输出,并结束程序运行。
判断出生日期是否在开始日期和结束日期的范围内有两种方式,可用伪码表示为:
(1) “与”方式:
如果 开始日期 ≤ 出生日期 与 出生日期 ≤ 结束日期 那么
#找到星座
否则
#继续查找
由于Scratch中没有“≤”运算符,就需要把“<”和“=”两种运算符结合使用。这样整个表达式就显得长而复杂。
(2) “或”方式:
如果 出生日期 < 开始日期 或 出生日期 > 结束日期 那么
#继续查找
否则
#找到星座
小海豚科学馆(微信公众号)建议你使用这种简洁的方式。
模块“星座查询”的代码如下:
到这里,小海豚科学馆(微信公众号)已经带领你把星座查询的程序编写完毕。点击绿旗运行程序,就可以输入日期查询星座了。赶快试试吧!
5、试一试
如果你是摩羯座的,那么将查不到结果的,而是找到了一个严重的BUG。小海豚科学馆(微信公众号)请你查看前面的星座日期对照表中的摩羯座的数据,想想这是为什么?
摩羯座 |
12月22日 |
12月31日 |
摩羯座 |
1月1日 |
1月20日 |
如果把摩羯座的数据修改为上面两行,并重新导入各个列表中,就能查询到结果了。
你想明白了吗?作为一个耐心而又细心的摩羯座,请你赶快修复这个BUG吧!
Scratch案例推荐
????▷Scratch课堂丨空战游戏-保卫南海
????▷Scratch课堂丨雪花曲线【递归解说】
????▷Scratch课堂丨在Scratch上制作打地鼠
????▷Scratch课堂丨在Scratch上画五环等图形
????▷Scratch课堂丨在Scratch上制作接红包游戏
????▷Scratch中做一个简单迷宫小游戏,值得您收藏!
????▷Scratch中实现一个按钮的动画效果,值得您收藏!
????▷Scratch课堂丨在Scratch上制作植物大战僵尸游戏
????▷Scratch课堂丨什么是云变量?怎么用它来做数据排名?
????▷圣诞节快乐!用Scratch来制作圣诞老人发礼物,值得你收藏!
????▷Scratch课堂丨用Scratch来制作谷歌浏览器中的奔跑小恐龙游戏!
????▷Scratch课堂丨模拟物理算法:万有引力、曲线运动,值得您的收藏!
更多算法案例,大家可以买这本书进行研究
用Scratch实现十二星座查询相关推荐
- 十二星座的美丽传说——星座查询api接口
星座的美丽传说 十二星座的美丽传说,相信大家都有所耳闻,如果要说出它的来源可不是人人都能说来的,这里让我们一起来听听星座文明起源的故事吧:星座起源为米索不达亚文明,是天上的恒星组合,也是用来确定天空方 ...
- 【资源搜集】7 款不错的聊天机器人 API 接口搜集
前段时间玩微信爬虫,仿佛打开了新世界的大门. 使用 wxpy 库调用微信的接口,可以获取好友信息,聊天消息收发等功能. 脑洞一开,这样不就可以用来做 聊天消息防撤回,红包提醒,自动回复这些有意思的玩意 ...
- 生活常用类API推荐
之前在网上看到了一些很不错的生活常用类的API,今天在这里整理出来分享给大家~ 阿里云 中华万年历API,中华万年历 宜忌测开张.测乔迁.测结婚.测签约.测动工.测栽种.测出行.测入宅.测纳彩:逢凶化 ...
- 【资源搜集】聊天机器人 API 搜集汇总
搜集整理了一些比较好用的 "聊天机器人" 的 API 接口. 如果后期有机会的话,把它们接入我的程序中,做一个陪聊小助手,也是一个不错的选择. 小 i 机器人 有网页版和手机版,网 ...
- 数据结构与算法(C语言)
第一章: 数据结构绪论 1.什么是程序:程序 = 数据结构 + 算法 2.逻辑结构&物理结构的区别用法 基本的目标就是将数据及其逻辑关系存储到计算机的内存中 一:逻辑结构: 逻辑结构是指数据对 ...
- 微信小程序:十二星座运势查询
不错,这是一款星座查询小程序 该款小程序支持分男女查询 支持给综合运势,爱情运势,事业运势,财富运势等等打星 支持每种运势解说,支持查看特点等等功能 另外该款小程序还支持激励视频提前查看明日往后日子的 ...
- 【小程序源码】十二星座运势查询
这是一款星座查询小程序 该款小程序支持分男女查询 支持给综合运势,爱情运势,事业运势,财富运势等等打星 支持每种运势解说,支持查看特点等等功能 总得来说还是挺好的! 下面就来看看小编的测试演示图吧: ...
- 十二星座运势查询微信小程序源码
不错,这是一款星座查询小程序 该款小程序支持分男女查询 支持给综合运势,爱情运势,事业运势,财富运势等等打星 支持每种运势解说,支持查看特点等等功能 另外该款小程序还支持提前查看明日往后日子的运势 总 ...
- 小程序源码:十二星座运势查询-多玩法安装简单
不错,这是一款星座查询小程序 该款小程序支持分男女查询 支持给综合运势,爱情运势,事业运势,财富运势等等打星 支持每种运势解说,支持查看特点等等功能 另外该款小程序还支持激励视频提前查看明日往后日子的 ...
最新文章
- 关于linux的root用户密码忘记处理成绩
- E - 数据结构实验之排序五:归并求逆序数
- 通过js判断不同终端类型,跳转到不同的页面
- CSS :before :after 伪类选择器
- 【渝粤题库】陕西师范大学200401 初等代数研究 作业(专升本)
- sonarqube对接maven
- linux创建更改目录,Linux中目录的创建与删除命令使用说明
- 黄聪:详解 ManualResetEvent(转)
- Atitit 项目管理之沟通管理概论问题管理 艾提拉著 跨语言沟通 群组沟通 书面沟通 目录 1. 沟通方式	2 1.1. 书面沟通 vs 当面沟通	2 1.2. 群组沟通(公开沟通) vs
- Microsoft Edge无法打开测试平台的解决方法
- Google Earth Engine —— LandTrendr JavaScript 模块API(2万多字长文)
- html 怎么设置hr的颜色,html hr标签能设置黄颜色吗
- 将1自动补位为01_自动补位为辅助后游戏就输了一半?那是你不懂辅助的正确打开方式...
- 【CTF WriteUp】UTCTF 2020部分题解
- 法语的小舌音哪个比较难学
- MFC在两控件间画线
- java实现多媒体播放器_Java swing实现简单的视频多媒体播放器源码附带视频指导运行教程...
- 数学期望 极小值的几种求法
- 织梦功能模块模板路径对应表
- Pycharm简单的爬虫实现——打开网页