java四则运算
题目描述:
从《构建之法》第一章的 “程序” 例子出发,像阿超那样,花二十分钟写一个能自动生成小学四则运算题目的命令行 “软件”,满足以下需求:
除了整数以外,还要支持真分数的四则运算,真分数的运算,例如: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四则运算的更多相关文章
- JAVA四则运算(读写文件)
完成时间:17:10 package 四则运算试题; import java.io.BufferedReader; import java.io.PrintStream; import java.ut ...
- JAVA四则运算字符串解释器
最近学习到后缀表达式,于是基于后缀表达式的思想,写了一个四则运算解释器,输入字符串类型的四则运算表达式,可以直接得到结果,支持括号嵌套. 实现时主要考虑以下两点: 字符串中运算符和数字分离 运算符优先 ...
- JAVA四则运算算法
一.程序要求 解析一般数学算式,实现简单的带括号的加减乘除运算. 二.基本思路 前面两篇介绍了直接解析字符串和用数组容器辅助解析的两种方式,这次再介绍最常用的解析算法——解析后缀表达式(逆波兰表达式) ...
- java四则运算----前缀、中缀、后缀表达式
接到一个新需求,需要实现可配置公式,然后按公式实现四则运算. 刚拿到需求,第一反应就是用正则匹配‘(’,‘)’,‘+’,‘-’,‘*’,‘/’,来实现四则运算,感觉不复杂. 然后开始coding.发现 ...
- Java四则运算总结
Java结对编程四则运算第二周总结 需求分析 要随机产生规定数量的式子. 要对分式进行计算. 要支持多语言. 要自动判断对错. 设计思路 确定要选用的语言: 要产生随机数: 在产生随机数的时候就要产生 ...
- Java四则运算和验证码生成
四则运算 程序设计思想 使用随机数生成100或1000以内数字,用字符串数组实现+-*/的输出.For循环打印出所需要的题数. 程序流程图 package yunsuan; import java.u ...
- java四则运算生成器
题目描述: 从<构建之法>第一章的 "程序" 例子出发,像阿超那样,花二十分钟写一个能自动生成小学四则运算题目的命令行 "软件",满足以下需求: 除 ...
- java四则运算 界面化
本次作业要求来自:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE2/homework/2232 项目的地址:https://github.com/kdays ...
- Java四则运算——图形化界面
一.前提 (1)作业来源:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE1/homework/2213 (2)GitHub地址:https://github ...
随机推荐
- Linux下栈溢出导致的core dump
1 问题产生 前两天在干活的时候,写好的一个daemon程序,一跑就core,连main函数都进不去.从来没见过这阵势的职场新人被吓尿了,幸好不是在生产环境上测试.找来同事帮忙,看了好久也没看出问题, ...
- kafka在windows下的安装和配置
博主最近在学习有关kafka的配置安装以及在spring的集成使用.但网上关于kafka的配置参考资料基本都是于linux下的配置,于是博主在整理了相关windows下kafka的配置记录在博客里.由 ...
- MongoDB安全策略
一,修改启动端口 mongo的默认端口为27017 如果启用的是27017端口并且在公网上很容易被人攻击,所以第一点我们要修改端口 sudo ./mongod --dbpath=/data/db -- ...
- UITableView移除某行的分割线和让分割线宽度为cell的宽度
1.移除 UITableView 某一行的分割线 所谓移除,其实就是使其偏移出 cell 的显示范围,看不到即移除. 方法1: 移除系统的分割线,自己定义每行的分割线 self.tableView.s ...
- theOS环境搭建
http://joeyio.com/ios/2014/01/01/make-a-mobile-substrate-tweak-using-theos/~/Doucment>: cd mytwea ...
- 【Spring】的【bean】管理(XML配置文件)
Bean实例化的三种方式 说明:通过配置文件创建对象就称为Bean实例化. 第一种:使用类的无参构造创建(重点) 实体类 package com.tyzr.ioc; public class User ...
- shell 编程之函数
shell 函数的定义和普通的c语言函数定义差不多 function(){ } shell 函数的返回值,可以显示的return 语句,如果没有return 那么就会把最后一条语句的执行结果作为返回 ...
- 第48篇 说说.Net与Java中的字符串
原文地址:http://blog.laofu.online/2017/08/18/String-In-dotnet-Java/ Java字符串碰到的问题 在写Java程序碰到一个问题,而正是这个问题引 ...
- 对lea与mov的理解
lea不止可以完成mov的功能,他还可以加载存储器的有效地址,即D<-&S 借鉴深度理解计算机系统里: 指令Leal实际上是movl指令的变形.他的指令形式是从存储器读数据到寄存器,但实 ...
- 有返回值的函数,如果包含try/catch块,经常会出现没有return的错误
public static Connection getConnection(){ try { return datasource.getConnection(); } catch (SQLExcep ...