关于四则运算进一步优化的构思

根据上次程序的实现过程和最后的编程结果,可以发现有许多固定的数值可以是从键盘输入的,从而满足不同用户的多种不同要求,其中包括题目的数目,数值的范围,以及数值的类型等,下面我简单的叙述一下我对本次设计要求的看法。

一.题目避免重复

所谓重复,就是在程序自动生成的习题中,有两道或者多道题目的第一位数,第二位数以及符号都分别对应相等,所以可以通过添加一个循环分支程序和一个条件分支程序实现筛选。

二.可定制数量

上次实验的固定题目数量是30,所以可以将其该成用户键盘输入。

三.是否有负数

如果只有两个数参与运算,可以通过比较两个数的大小直接判断,如果有多个数参与运算则可以通过运算结果是否为负数再进行筛选。

四.是否有乘除法

在程序中每种运算符号都有特定的条件,通过添加一个条件分支可以选择是否有乘除运算。

五.是否有小数

与添加乘除法类似,添加一个条件分支,对于一个整数缩小多少倍还是比较容易的,不过对于分数精确度目前还没有想好怎么实现。

时间: 2024-10-10 20:08:43

关于四则运算进一步优化的构思的相关文章

利用Trie树求多个字符串编辑距离的进一步优化

1.引言 题目的意思应该是:在一个给定的字典中,求与给定的字符串的编辑距离不大于2的所有的单词.原先写过两片关于此问题的文章,那两片篇章文章给出两种解决思路:其一是暴力求解法,这种方法最容易想到.就是将词典中的词一一与给定的字符串计算编辑距离,不大于2的输出,大于2的舍弃,这种方法思路简单但是很费时间.其二根据词典中这些词之间的编辑距离建立一个以单词为节点的Trie树,遍历的时候,通过计算根节点与给定字符串的编辑距离就可以排除掉一部分分支了,然后继续计算该字符串与剩余的分支的根的编辑距离,继续排

进一步优化SPA的首屏打开速度(模块化与懒载入) by 嗡

前言 单页应用的优点在于一次载入全部页面资源,利用本地计算能力渲染页面.提高页面切换速度与用户体验.但缺点在于全部页面资源将被一次性下载完,此时封装出来的静态资源包体积较大,使得第一次打开SPA页面时候须要的载入时间较长. 在上一篇文章Angular2 单页应用一些优化总结 中提到的利用压缩.混淆.开启gzip传输后,我们成功将3.5兆的资源包压缩到350k.可是假设SPA应用的页面数进一步添加,100个甚至1000个页面的时候,还是无法避免巨大的首页资源包载入的问题. 所以350k的资源包是否

进一步优化SPA的首屏打开速度(模块化与懒加载) by 嗡

前言 单页应用的好处在于一次载入所有页面资源,利用本地计算能力渲染页面,提高页面切换速度与用户体验.但缺点在于所有页面资源将被一次性下载完,此时封装出来的静态资源包体积较大,使得第一次打开SPA页面时候需要的载入时间较长. 在上一篇文章Angular2 单页应用一些优化总结 中提到的利用压缩.混淆.开启gzip传输后,我们成功将3.5兆的资源包压缩到350k.但是如果SPA应用的页面数进一步增加,100个甚至1000个页面的时候,还是无法避免巨大的首页资源包加载的问题.所以350k的资源包是否还

采用DTO和DAO对JDBC程序进行进一步优化

采用DTO和DAO对JDBC程序进行进一步优化 DTO:数据传输对象,主要用于远程调用等需要远程调用对象的地方DAO:数据访问对象,主要实现封装数据库的访问,通过它可以把数据库中的表转换成DTO类 引入DTO其实就是新建实体类. 那么DAO呢,就是封装访问数据的方法,比如对某一个表插入,更新,删除等方法可以放进对应的dao中 代码如下: 这是访问User表所使用方法的接口,里面放的是访问过程中会使用到时方法 public interface UserDao { public void save(

almond进一步优化requirejs

这里只是调侃一下,“杏仁”其实指的是almond,requirejs作者的另一个开源项目,它的定位是作为requirejs的一个替代品. 使用场景 什么情况下需要使用almond呢?假设你手头有个基于requirejs的小项目,所有业务代码加起来就几十K(压缩后可能更小).出于性能优化的考虑,你可能在想:如果能够去掉requirejs的依赖就好了,毕竟,gzip后的requirejs还有大概20k(2.1.6版本). almond就是为了这个目的而诞生的,开发过程,你可以照常使用requirej

进一步优化ListView

之前我已经分享过一篇:viewHodler的通用写法,就是专门用来优化listview的加载的,但是对于复杂的布局,我们还需要在listview滑动和不滑动时进行自己的处理,今天我看到一篇文章就是讲这方面的,虽然不是很完善,但思想已经对了. 主要思想: 监听滑动据加载,异步加载数据 避免同一个视图重复加载 getView 函数一定不能耗时,有耗时任务要异步加载 实现方法: 先判断当前 ListView 的状态,只有 ListView 停止滑动或缓慢滑动的时候才开启新线程加载数据,其他状态(快速滑

百度MP3+图片+文字:生成结果文件;(声音58秒,视频59秒,同步性需要进一步优化)

import os os_sep = os.sep this_file_abspath = os.path.abspath(__file__) this_file_dirname, this_file_name = os.path.dirname(this_file_abspath), os.path.abspath(__file__).split(os_sep)[ -1] f_mp3 = '{}{}{}'.format(this_file_dirname, os_sep, 'auido.mp3

第三次作业---四则运算的进一步完善

这次作业的要求是让对上次作业的四则运算进一步改善,不能在减法中出现负数,不能出现除不尽的情况. 就像这种情况,不知道怎么规定一个数值必须是正整数,所以我们就采用最笨的方法来做,定义一个f,其值为e,d的倍数. 而d做为除数,f做为被除数,所以无论如何f都是d的e倍,而我们定义的e的取值范围又为(1,10)之间的正整数,所以不管怎么随机,f都是d的正整数倍数,不会存在有余数的情况. using System;using System.Collections.Generic;using System

0428数字口袋精灵app优化

"数字口袋精灵app"优化 目录: 一.项目github总仓库推送 二.开发成员 三.分工与合作 四.各模块成果 五.团队成员贡献分 内容: 一.项目github总仓库: https://github.com/LiangZhilin/We-have-bing 二.开发人员: 223孙海林(商软2班) 225江志彬(商软2班) 256林集团(商软2班) 224颜文生(商软2班) 404曹嘉琪(商软1班) 142梁植淋(商软1班) 三.分工与合作: 林集团.颜文生:从开发者的角度出发,进一