• 第三次作业:个人项目小学四则运算


    博客园:https://www.cnblogs.com/zpfs/

    github仓库:https://github.com/rg-zpf/rg-software

    第一部分:要求

            具体要求:任何编程语言都可以,命令行程序接受一个数字输入,然后输出相应数目的四则运算题目和答案。例如输入数字是 30, 那就输出 30 道题目和答案。 运算式子必须至少有两个运算符,运算数字是在 100 之内的正整数,答案不能是负数。 如:23 - 3 * 4 = 11。

    第二部分:设计

    1.需求设计

       ①随机产生题目

       ②题目中至少有二个以上的运算符

       ③提示用户输入题目数量

       ④判断答案对错,统计分数

       ⑤能出和真分数 (二分之一, 十二分之五,等)相关的练习题

    2.功能设计

       ①根据用户输入题目数,循环n次,代表n道题目

       ②判断对错,答案与误差之间相差0.1,如果大于0.1,则为错误

       ③答案不能出现负数,小于0,则跳转重新出题

       ④count记录答案正确数,便于统计分数

    第三部分:代码实现

       ①首先产生数字为100以内的四则运算,按照用户输入题目数n去循环输出

       ②因为有一道题目中有两个运算符,所以要判断计算优先级问题。我的做法是把两个运算符存入到一个字符数组中,如果第一个运算符ku[0]是“*”或“/”,那就直接运算,第二个云算法只要判断是什么就也可以直接运算了;如果第一个运算符ku[0]不是“*”或“/”,就要判断第二个运算符ku[1]是否为“*”或“/”,如果是,就先计算后面两个数,然后在将后面计算结果与前面相加或者相减(因为前面肯定不是“*”或“/”,所以只有是“+”或“-”);如果不是,则式子中只有“+”和“-”的运算,只要判断符号就可以顺序计算了。

       ③答案与用户结果之间的误差为0.1,并要记录正确结果数目count,再用(float)count/n*100输出分数。

     

    部分代码:

    Scanner input = new Scanner(System.in);
    float result = input.nextFloat();
    if(Math.abs(result-sum)<0.1){
    System.out.println("恭喜你,计算正确,答案是:"+sum);
    count=count+1;
    }else{
    System.out.println("很遗憾,计算错误,答案是:"+sum);
    }

    注:具体代码,请到github上查看。

    结果测试:

    第四部分:存在问题

    ①不能够产生分数

    ②代码可优化

    个人软件过程耗时估计与统计表:

    PSP2.1 Personal Software Process Stages Time Senior Student(h) Time(h)
    Planning 计划 1 1
    · Estimate 估计这个任务需要多少时间 25 30
    Development 开发 1 1
    · Analysis 需求分析 (包括学习新技术) 1 1
    · Design Spec 生成设计文档 1 1
    · Design Review 设计复审 2 2
    · Coding Standard 代码规范 5 5
    · Design 具体设计 1 1
    · Coding 具体编码 5 8
    · Code Review 代码复审 3 3
    · Test 测试(自我测试,修改代码,提交修改) 4 6
    Reporting 报告 2 2
    · 测试报告 0.5 0.5
    · 计算工作量 1 1
    · 并提出过程改进计划 0.5 0.5
  • 相关阅读:
    2018-3-8-WPF-UncommonField-类型是什么
    PHP mysqli_set_charset() 函数
    PHP mysqli_select_db() 函数
    PHP mysqli_rollback() 函数
    PHP mysqli_refresh() 函数
    PHP mysqli_real_escape_string() 函数
    使用Pam_Tally2锁定和解锁SSH失败的登录尝试
    MySQL的LIMIT与分页优化
    转mysql存储引擎memory,ndb,innodb之选择
    转mysql复制主从集群搭建
  • 原文地址:https://www.cnblogs.com/zpfs/p/9752593.html
Copyright © 2020-2023  润新知