zoukankan      html  css  js  c++  java
  • 20165301结对编程项目-四则运算 (第二周)

    结对编程项目-四则运算 (第二周)

    需求分析

    • 实现一个命令行程序,要求:

      • 自动生成小学四则运算题目(加、减、乘、除)
      • 支持整数
      • 支持多运算符(比如生成包含100个运算符的题目)
      • 支持真分数
      • 统计正确率
        请输入要生成的题目数:<输入6>
    • 如下所示

    题目1:
    3 + 4 = <输入7>
    正确!
    
    题目2:
    5 ÷ 8 = <输入5/6>
    错误,正确答案为:5/8
    
    题目3:
    2/3 - 1/5 = <输入7/15>
    正确!
    
    题目4:
    1/6 * 3/7 = <输入3/42>
    正确!
    
    题目5:
    10 - 5 * 4 = <输入20>
    错误,正确答案为:-20
    
    题目6:
    (1/3 + 1/2) * 11/20 = <输入55/120>
    错误,正确答案为:11/24
    
    完成6道题目,正确率为50%
    

    设计思路

    • 通过命令行参数形式来指定生成题目数量以及运算符数量
    • 去重

    实现过程中的关键代码解释

    • 加减乘除的条件语句
    char z =op.charAt(0);
         if(z=='+')
         System.out.printf("%f",x+y);
         else if(z=='-')
         System.out.printf("%f",x-y);
         else if(z=='*')
         System.out.printf("%f",x*y);
         else if(z=='/'){
         if(y==0){
         System.out.println("you can not do that");
         }
         else{
         System.out.printf("%f",x/y);
    

    运行截图

    代码链接

    代码分析

    • 先写一个循环来计数生成的算式个数for (int i = 0; i < number; i++)
    • 判定运算的类型,用if-else if-else语句,如果是‘+’就执行add(a,b)如果输入的数据等于正确结果,则输出right
    • 如果运算类型为“-”就执行minus(op1,op2),如果输入数据等于正确结果,则输出right
    • 如果运算类型为“*”就执行times(op1,op2)
    • 如果运算类型为“*”就执行Div(op1,op2)
    • 最后统计right的数量与输入的number比,right/number求出正确率输出

    结对总结(对组员的评价)

    • 本次实验对我来说以一次很难得的历练,我个人编程能力一般,在通关过与队友20165302的共同讨论,翻阅课本、浏览网站寻找思路,最终顺利地完成了本次实验。在实验中,队友经常主动找我讨论问题,这让我逐渐拜托懒惰,开始积极主动起来。这是小组学习为我带来的巨大优势。

    结对学习照

  • 相关阅读:
    [Android Studio] Android studio 多渠道打包(超简洁版)
    AlarmManager、PendingIntent的使用附件Home监听十分钟后再度启动应用取消服务
    share Windows下AndroidStudio 中使用Git(AndroidStudio项目于GitHub关联)
    Flex 调用webService
    mac下安装应用及常用快捷键
    mac下设置maven环境
    0302关于软件工程的思考
    文法评论
    C语言文法
    44-小组词法分析
  • 原文地址:https://www.cnblogs.com/CTF5301/p/8910494.html
Copyright © 2011-2022 走看看