• 需求分析
    能生成简单四则运算题目并判断用户回答对错。
    能正确统计回答正确的概率。
    能正确处理混合四则运算的优先级的问题。
    能正确输出负数等结果。
    能处理简单的加,减,乘,除运算。
    能正确的处理有括号的情况并输出正确的运算结果,能正确处理输入异常的情况。
  • 运行截图

  • 代码实现
    import java.util.;
    public class sizeyunsuan {
    public static void main(String[] args) {
    System.out.println("输入测试题数目:");
    Scanner sc=new Scanner(System.in);
    int number=sc.nextInt();
    double right = 0;
    double wrong = 0;
    for (int i = 0; i < number; i++) {
    System.out.println("第"+(i+1)+"道题,请在下方输入答案:");
    double op1=(int)(Math.random()
    10);
    double op2=(int)(Math.random()10);
    Random r3 = new Random();
    int m = r3.nextInt(4);
    char[] chs = {'+','-','
    ','/'};
    String Operator = String.valueOf(chs[m]);
    //生成题目
    if(Operator.equals("+")){
    System.out.println(op1+"+"+op2+"=");
    boolean b = add(op1,op2);
    if(b == true){
    right++;System.out.println("right! ");
    }
    else{
    wrong++;System.out.println("no ");
    System.out.println("right answer: "+(op1+op2));
    }
    }
    else if(Operator.equals("-")){
    System.out.println(op1+"-"+op2+"=");
    boolean b =minus(op1,op2);
    if(b == true){
    right++;System.out.println("right! ");
    }
    else{
    wrong++;System.out.println("no ");
    System.out.println("right answer: "+(op1-op2));
    }
    }
    else if(Operator.equals("")){
    System.out.println(op1+"×"+op2+"=");
    boolean b =times(op1,op2);
    if(b == true){
    right++;System.out.println("right! ");
    }
    else{
    wrong++;System.out.println("no ");
    System.out.println("right answer: "+(op1
    op2));
    }
    }
    else{
    System.out.println(op1+"÷"+op2+"=");
    boolean b =Div(op1,op2);
    if(b == true){
    right++;System.out.println("right! ");
    }else{
    wrong++;System.out.println("no ");
    System.out.println("right answer: "+op1/op2);
    }
    }
    }
    System.out.println("做对了"+right+"道题.");
    System.out.println("做错了"+wrong+"道题.");
    System.out.println("正确率为"+(right/(wrong+right))100+"%");
    }
    private static boolean add(double x,double y) {
    Scanner sc = new Scanner(System.in);
    double num1 = sc.nextDouble();
    double result = x + y;
    if(num1 == result){
    return true;
    }else{
    return false;
    }
    }
    private static boolean minus(double x,double y) {
    Scanner sc = new Scanner(System.in);
    double num1 = sc.nextDouble();
    double result = x - y;
    if(num1 == result){
    return true;
    }else{
    return false;
    }
    }
    private static boolean times (double x,double y) {
    Scanner sc = new Scanner(System.in);
    double num1 = sc.nextDouble();
    double result = x
    y;
    if(num1 == result){
    return true;
    }else{
    return false;
    }
    }
    private static boolean Div(double x,double y) {
    Scanner sc = new Scanner(System.in);
    double num1 = sc.nextDouble();
    double result =x/y;
    if(num1 == result){
    return true;
    }else{
    return false;
    }
    }
    }

  • whitestar运行图
  • 码云链接
    https://gitee.com/BESTI-IS-JAVA-2018/20165303WeiYujava/tree/master/src

  • 结对感受
    通过这周的不断修改代码,不断地和小伙伴争论,终于修改出了基本实现功能的代码,然后就是实现功能,但是在运行的过程中还是有一些bug,不是太完美,由于时间紧张,本周的实验比较多,然后实现的比较粗糙,我会在以后的学习过程中继续实现这个代码。

20165303 2017-2018-2 《Java程序设计》结对编程练习_四则运算的更多相关文章

  1. 2017-2018-2 165X 『Java程序设计』课程 结对编程练习_四则运算

    2017-2018-2 165X 『Java程序设计』课程 结对编程练习_四则运算 经过第一阶段的学习,同学们已经熟悉了这门语言基本的用法.在一次又一次对着电脑编写并提交代码,进行练习的时候,有没有觉 ...

  2. 20175312 2018-2019-2 《Java程序设计》结对编程练习_四则运算(第二周:整体性总结)

    20175312 2018-2019-2 <Java程序设计>结对编程练习_四则运算(第二周:整体性总结) 结对对象与其博客链接 20175309 刘雨恒:https://www.cnbl ...

  3. 20175312 2018-2019-2 《Java程序设计》结对编程练习_四则运算(第一周:阶段性总结)

    20175312 2018-2019-2 <Java程序设计>结对编程练习_四则运算(第一周:阶段性总结) 结对对象与其博客链接 20175309 刘雨恒:https://www.cnbl ...

  4. 2017-2018-2 20172310『Java程序设计』课程 结对编程练习_四则运算_第二周

    2017-2018-2 20172310『Java程序设计』课程 结对编程练习_四则运算_第二周 博客要求 组内同学需各自发表博客 博客中需包含以下内容: 相关过程截图 关键代码解释 遇到的困难及解决 ...

  5. 2017-2018-20172309 『Java程序设计』课程 结对编程练习_四则运算_第三周

    2017-2018-20172309 『Java程序设计』课程 结对编程练习_四则运算 组队成员: 仇夏 学号: 20172310 博客地址: @王志伟 四则运算第一周博客 @仇夏四则运算第一周博客 ...

  6. 2017-2018-20172309 『Java程序设计』课程 结对编程练习_四则运算——第一周

    2017-2018-20172309 『Java程序设计』课程 结对编程练习_四则运算 组队成员: 仇夏 学号: 20172310 博客地址:点击这里 1. 需求分析: 可生成题目: - 输入要想生成 ...

  7. 2017-2018-2 20165225『Java程序设计』课程 结对编程练习_四则运算

    2017-2018-2 20165225『Java程序设计』课程 结对编程练习_四则运算 需求分析: 支持整数,可进行多运算符运算,有优先级. 设计思路: 在有括号的情况下,先计算得出括号中的结果,如 ...

  8. 20165236 2017-2018-2 《Java程序设计》结对编程练习_四则运算

    20165236 2017-2018-2 <Java程序设计>结对编程练习_四则运算 结对小组:叶佺.郭金涛 一.需求分析: 1.能随机生成n道四则运算题目,n由使用者输入: 2.支持多种 ...

  9. 20172325『Java程序设计』课程 结对编程练习_四则运算第三周阶段总结

    20172325『Java程序设计』课程 结对编程练习_四则运算第三周阶段总结 结对伙伴 学号:20172306 姓名:刘辰 在这次项目的完成过程中刘辰同学付出了很多,在代码的实践上完成的很出色,在技 ...

  10. 20172311『Java程序设计』课程 结对编程练习_四则运算第一周阶段总结

    20172311『Java程序设计』课程 结对编程练习_四则运算第一周阶段总结 结对伙伴 学号 :20172307 姓名 :黄宇瑭 伙伴第一周博客地址: http://www.cnblogs.com/ ...

随机推荐

  1. darknet中的若干问题

    2018-04-20: https://github.com/pjreddie/darknet/issues/717 改了一下午,然后/usr/include/c++/4.8/bits/stl_rel ...

  2. App Store 审核指南

    App Store 审核指南 https://developer.apple.com/app-store/review/guidelines/cn/ https://developer.apple.c ...

  3. Junit的套件使用

    定义一个类,在类的上方添加@RunWith(Suite.class)和@SuiteClasses({XX.class,YY.class,...}) 实例有两个类分别为:public class Log ...

  4. 快速自动安装dart

    @"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat Non ...

  5. HDU1285 确定比赛问题【拓扑排序+优先队列】

    题目 有N个比赛队(1<=N<=500),编号依次为1,2,3,....,N进行比赛,比赛结束后,裁判委员会要将所有参赛队伍从前往后依次排名,但现在裁判委员会不能直接获得每个队的比赛成绩, ...

  6. IDEA入门及maven配置

    idea基本使用 下载安装 idea下载地址 激活方法 上面的失效使用这个 配置SDKs和编译版本 选择jdk 我是主要用于Java开发,因此配置JDK8 配置编码 其他配置 个人配置主题等 注意 与 ...

  7. LOJ6283 数列分块入门7(分块)

    pushdown的addtag[x]打成addtag[i],结果WA了一次 #include <cstdio> #include <algorithm> #include &l ...

  8. GCN code parsing

    GCN code parsing 2018-07-18 20:39:11 utils.py  --- load data  def load_data(path="../data/cora/ ...

  9. Docker网络配置概述

    Overview One of the reasons Docker containers and services are so powerful is that you can connect t ...

  10. 如何在 sublime text 中以当前文件目录打开 cmd

    需求描述 sublime 固定可以自己设置和添加新的编译环境,比如在我们写 js 的时候可能会添加 node 来对 js 文件进行运行.但是,这样做的结果是,我们只能看到运行结果.有时候还希望能做些其 ...