四则运算2设计思路篇

对于四则运算程序的新要求:

1、题目避免重复;

2、可定制(数量/打印方式);

3、可以控制一下参数:

是否有乘除法、数值范围、加减有无负数、除法有无余数、是否支持分数(真分数,假分数,...)

要求一、

首先解决第一个要求:题目避免重复。第一件事就是优化得到随机数的算法,在每次生成算式的循环中,首先排除被除数为0的除法算式,将得到的算式分别赋给四个字符串数组,根据本次随机得到的运算符分别在四个字符串数组中进行比较,默认交换律得到的两个式子满足要求,可以作为交换律的考察。

要求二、 

数量和打印则定义两个参数分别代表需要输出的算式数量和输出的格式。

要求三、

对于各种参数的限制,该如何让各个参数限制进行组合,下面先分块给出了各个问题的解决思路:

1). 是否有乘除法,如果不要乘除法,则抛弃随机出乘除法的算式,跳过此循环。

2).数值范围,第一个参数作为求随机数的范围参数。

3).加减有无负数,如果可以有负数,则设计一个参数来随机随机数的正负,如果为负,则让产生的随机数减去2倍的本身产生相反数。

4).除法是否有余数,如果不可以有余数,则将除不尽的算式抛弃即可。

5).是否支持分数(真分数,假分数,...),如果支持分数,不区分分数的种类,满足分数的条件即可,和加减有无负数类似,设置一个参数来随机是否要产生一个分数,然后重新设置两个随机数来产生分数的分子和分母。

对于各种参数限制的组合,可以让每个算式中的参数产生时,先依次对上述5个限制进行判断和约束,得到满足所有参数限制的参数后组合成为一个算式,再对新要求的第一个要求进行判断。

转载于:https://www.cnblogs.com/little-clever/p/4334892.html

四则运算2之设计思路篇相关推荐

  1. 追梦App系列博客——设计思路篇(重构版)暨第四次例会总结

    文章目录 前言 一.从hope中得到的反思 1.功能并不是越多越好 2.打破传统App的设计观念 3.有趣的交互设计和独特的创意 4.沉浸式体验 5.无处不在的情感渲染,恰到好处的情感共鸣 二.设计思 ...

  2. 追梦App系列博客——设计思路篇

    文章目录 前言 一.追梦体系 1."寻梦" 2.追梦 3.追梦之旅 二.个人账户成长系统 三.积极的反馈机制--任务系统 四.虚拟货币系统 五.社交系统 1.社交新方式--梦见 2 ...

  3. 第02篇:手写JavaRPC框架之设计思路

    作者: 西魏陶渊明 博客: https://blog.springlearn.cn/ 天下代码一大抄, 抄来抄去有提高, 看你会抄不会抄! 一.前言 隔壁老李又在喷我了: "完犊子了,小编这 ...

  4. C++两个函数可以相互递归吗_[算法系列] 搞懂递归, 看这篇就够了 !! 递归设计思路 + 经典例题层层递进

    [算法系列] 搞懂递归, 看这篇就够了 !! 递归设计思路 + 经典例题层层递进 从学习写代码伊始, 总有个坎不好迈过去, 那就是遇上一些有关递归的东西时, 看着简短的代码, 怎么稀里糊涂就出来了. ...

  5. [算法系列] 搞懂递归, 看这篇就够了 !! 递归设计思路 + 经典例题层层递进

    [算法系列] 搞懂递归, 看这篇就够了 !! 递归设计思路 + 经典例题层层递进 从学习写代码伊始, 总有个坎不好迈过去, 那就是遇上一些有关递归的东西时, 看着简短的代码, 怎么稀里糊涂就出来了. ...

  6. 第65篇:探索顶级APT后门Sunburst的设计思路(Solarwinds供应链攻击中篇)

     Part1 前言  大家好,我是ABC_123.上周写了一篇<史上最严重的APT供应链攻击事件,借助Solarwinds攻击欧美的流程图梳理和分析(上篇)>反响还不错.由于该APT供应链 ...

  7. 第65篇:探索顶级APT后门Sunburst的设计思路(修正篇)Solarwinds供应链攻击中篇...

     Part1 前言  由于先前文章存在部分错误,原文ABC_123已删除,上周末把文章修正,重新发布. 大家好,我是ABC_123.之前写了一篇<史上最严重的APT供应链攻击事件,借助Solar ...

  8. 特别提醒蓝牙语音智能药盒的设计思路(二)TTS技术应用篇,附手机小程序界面

    全文3000字,阅读时间约8分钟,建议收藏后慢慢看 目录 引言 蓝牙TTS智能药盒方案系统图 智能药盒是什么 智能药盒为什么需要语音提醒 语音提醒功能为什么要用TTS技术 TTS语音提醒的应用场景 1 ...

  9. 果园机器人的写作思路_《果园机器人》教学设计3篇

    <果园机器人>教学设计3篇 在教学工作者实际的教学活动中,编写教学设计是必不可少的,借助教学设计可以让教学工作更加有效地进行.我们应该怎么写教学设计呢?下面是小编为大家整理的<果园机 ...

  10. 手机号码归属地 API 实现防止骚扰电话,看这一篇就够了(内附设计思路和代码)

    在当今时代,骚扰电话已经成为了很多人日常生活中的一个常见问题,严重影响了人们的工作和生活. 为了避免这种情况的发生,企业和机构可以采用手机号码归属地 API,以提供更好的电话服务,减少骚扰电话的出现. ...

最新文章

  1. 2018-3-8(论文--网络评论中的非结构化信息表示与研究)笔记-----基于证据理论的网络评论综合方法
  2. 【源码分享】用Java写的网页图片、CSS、JavaScript分类下载器
  3. 视频剪辑软件调研分析
  4. 点击链接如何直接跳转到相对应的聊天窗口
  5. [转载] Java中日期格式转换
  6. 百度地图 截图java_[Java教程]百度地图API 简单使用
  7. Chrome浏览器截取全屏(无需安装任何插件)
  8. ssm校园在线点餐系统源码(含数据库)
  9. wps一直显示正在备份怎么办_wps怎么解除自动备份
  10. “不死鸟”号历险记---和扫雷过不去篇(无厘头版)
  11. 【python爬虫】喜欢看小说又手头紧的小伙伴一定要看这篇文章,带你一步步制作一个小说下载器
  12. App Store Connect 等待协议
  13. MySQL大数据量查询方案
  14. 四川交通职业技术学院计算机二级,明天考计算机了。
  15. (亲自整理)如何让你的C盘立马多出来20G空间
  16. VHDL实现USART
  17. 安装cmake 3.6
  18. 现漏洞政府天价难护航
  19. 云计算浅谈之二:云计算介绍(2)
  20. ChatGPT 已经对软件开发行业造成了什么影响?IT老工程师告诉你

热门文章

  1. EMNLP2021 | 标签推理的细粒度实体识别
  2. 基于论辩图谱的互动论点对识别
  3. 【基础】吴恩达机器学习笔记 - 线性回归 代价函数 梯度下降
  4. 【知识图谱】史上最全《知识图谱》2020综述论文,18位作者, 130页pdf
  5. 西瓜书学习笔记2-多元线性回归公式推导
  6. Python中的抽象
  7. 书单丨724运维日,为运维人干杯
  8. 每周送新书:Python数据分析、SSM框架、Redis深度历险
  9. Drawbot赋能商家: 智能助手主打上新详情
  10. 每周荐书:OpenCV、自然语言、SpringBoot2