题目描述:

从《构建之法》第一章的 “程序” 例子出发,像阿超那样,花二十分钟写一个能自动生成小学四则运算题目的命令行 “软件”,满足以下需求:

除了整数以外,还要支持真分数的四则运算,真分数的运算,例如:1/6 + 1/8 = 7/24
运算符为 +, −, ×, ÷
并且要求能处理用户的输入,并判断对错,打分统计正确率。
要求能处理用户输入的真分数, 如 1/2, 5/12 等
使用 -n 参数控制生成题目的个数,例如执行下面命令将生成10个题目
Myapp.exe -n 10

需求分析

  • 1、支持整数、真分数的四则运算;
  • 2、判断用户的回答是否正确,并在最后显示正确率;
  • 3、能够使用参数控制生成题目的个数。

代码说明

public static void main(String[] args)
{
switch (args[0]) {
case "-n":
// 随机生成题目使用的随机数以及输入使用Scanner
Random random=new Random();
Scanner scanner=new Scanner(System.in);
// 总题目个数
Integer num=new Integer(args[1]);
// 计算使用的两个题目分数以及结果数
Fractions fractions1=new Fractions();
Fractions fractions2=new Fractions();
Fractions result=new Fractions();
// 计算分数类
Caculate caculate;
// 用户输入的答案
String answer;
String answer_[];
// 标记当前题目数
int i=0;
// 标记正确题目数
int right=0;

public void setValue(int numerator,int denominator)
{
int temp=maxCommonDivisor(denominator, numerator); //temp为最大公约数
this.numerator=numerator/temp;
this.denominator=denominator/temp;
}
// 求最大公约数

测试运行

随机生成的题目数

运算结果

PSP展示

PSP2.1 Personal Software Process Stages Time (%) Senior Student(/hour) Time (%)(/hour)
Planning 计划 1h 1.5h
Estimate 估计这个任务需要多少时间 20h 16h
Analysis 需求分析 (包括学习新技术) 1h 1.5h

Coding

Standard

代码规范 2h 1.5h
Design 具体设计 4h 4.5h
Coding 具体编码 5h 4h
Test 测试(自我测试,修改代码,提交修改) 1h 1h
Reporting

报告

1.5h 2h

代码地址:https://git.coding.net/w201421123115/test1.git

小结

对于java还不够熟悉,一开始在真分数方面迷茫了很久,请教了身边许多同学才勉强完成作业。在作业完成方面,还有一些不尽如人意的地方,希望以后能够改进自己的不足,多向身边的大神同学学习,争取下次作业能够完成的更好。

java四则运算的更多相关文章

  1. JAVA四则运算(读写文件)

    完成时间:17:10 package 四则运算试题; import java.io.BufferedReader; import java.io.PrintStream; import java.ut ...

  2. JAVA四则运算字符串解释器

    最近学习到后缀表达式,于是基于后缀表达式的思想,写了一个四则运算解释器,输入字符串类型的四则运算表达式,可以直接得到结果,支持括号嵌套. 实现时主要考虑以下两点: 字符串中运算符和数字分离 运算符优先 ...

  3. JAVA四则运算算法

    一.程序要求 解析一般数学算式,实现简单的带括号的加减乘除运算. 二.基本思路 前面两篇介绍了直接解析字符串和用数组容器辅助解析的两种方式,这次再介绍最常用的解析算法——解析后缀表达式(逆波兰表达式) ...

  4. java四则运算----前缀、中缀、后缀表达式

    接到一个新需求,需要实现可配置公式,然后按公式实现四则运算. 刚拿到需求,第一反应就是用正则匹配‘(’,‘)’,‘+’,‘-’,‘*’,‘/’,来实现四则运算,感觉不复杂. 然后开始coding.发现 ...

  5. Java四则运算总结

    Java结对编程四则运算第二周总结 需求分析 要随机产生规定数量的式子. 要对分式进行计算. 要支持多语言. 要自动判断对错. 设计思路 确定要选用的语言: 要产生随机数: 在产生随机数的时候就要产生 ...

  6. Java四则运算和验证码生成

    四则运算 程序设计思想 使用随机数生成100或1000以内数字,用字符串数组实现+-*/的输出.For循环打印出所需要的题数. 程序流程图 package yunsuan; import java.u ...

  7. java四则运算生成器

    题目描述: 从<构建之法>第一章的 "程序" 例子出发,像阿超那样,花二十分钟写一个能自动生成小学四则运算题目的命令行 "软件",满足以下需求: 除 ...

  8. java四则运算 界面化

    本次作业要求来自:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE2/homework/2232 项目的地址:https://github.com/kdays ...

  9. Java四则运算——图形化界面

    一.前提 (1)作业来源:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE1/homework/2213 (2)GitHub地址:https://github ...

随机推荐

  1. swift UIButton边框添加阴影效果

    btn.layer.shadowOpacity = 0.8 //阴影区域透明度 btn.layer.shadowColor = UIColor.black.cgColor // 阴影区域颜色 btn. ...

  2. 弱校ACM奋斗史

    看到这篇文章, 已是大三了, 我的ACM之路也即将走向终点, 感慨自己还是不够努力, 给自己的大学留下诸多遗憾. 和他们相比, 我差的就是太远了, 值得高兴的是我们学校有一个好老师-----赵靖老师, ...

  3. Markdown简明教程

    一.Markdown到底是什么? Markdown是一种轻量级的标记语言,它使用很少量的符号控制文字的样式和排版,简单易学,使你更专注于文字. 二.Markdown的使用 接下来让我们一起来看下Mar ...

  4. UWP:使用Behavior实现FlipView简单缩放效果

    先上效果图 首先安装Behavior SDK:在Nuget中搜索安装 Microsoft.Xaml.Behaviors.Uwp.Managed . 然后新建类,AnimationFlipViewBeh ...

  5. SpringMVC详解(三)------基于注解的入门实例

    前两篇博客我们讲解了基于XML 的入门实例,以及SpringMVC运行的详细流程.但是我们发现基于 XML 的配置还是比较麻烦的,而且,每个 Handler 类只能有一个方法,在实际开发中肯定是不可能 ...

  6. volatile可见性的一些认识

    一.前言 volatile的关键词的使用在JVM内存模型中已是老生常谈了,这篇文章主要结合自己对可见性的一些认识和一些直观的例子来谈谈volatile.文章正文大致分为三部分,首先会介绍一下happe ...

  7. 安装mvn,jdk,rocketmq

    附一个rocketmq各语言客户端仓库:https://github.com/apache/incubator-rocketmq-externals,我用go客户端,但是master分支的go没有pr ...

  8. 原型及原型链,以及prototype和__proto__属性(笔记便于以后复习)

    首先,js的数据结构有 原始类型(5种):Boolean.Number.String.Null.Underfined, 然后是引用类型:Array.Date.Error.RegExp.Function ...

  9. win7系统中如何使文件显示出扩展名或显示文件后缀名

    win7系统中如何使文件显示出扩展名-------------------- 1.点击计算机-->>点击组织,然后选择“文件夹及搜索选项”-->> -------------- ...

  10. 7.11.3 Java简介

    101Java简介 101Java简介及开发环境搭建 Java简介 编程语言简介 机器语言:纯粹的机器代码 机器语言是有0,1,0,1的二进制代码组成,可以有计算机直接执行.效率最高,但是通用性不强, ...