zoukankan      html  css  js  c++  java
  • 软件工程第二次作业

    一、需求分析 

      (1)自动生成10道100以内的2个操作数的四则运算算式(+ - *  /),要求运算结果也在100以内

      (2)剔除重复算式。  2 + 3 =    和  2 + 3 =     是重复算式      2 + 3 =   和   3 + 2 =  不属于重复算式

      (3)题目数量可定制

      (4)相关参数可控制

                是否包含乘法和除法

                操作数数值范围可控(如操作数 在100以内   还是1000以内)

                操作数是否含负数    

       (5)生成的运算题存储到外部文件result.txt中

    二、功能设计

      基本功能:自动生成四则运算试题

      扩展功能:(1)算出答案

           (2)多操作数运算

           (3)用户可以自己选择用加减,乘除,正负,整分

           (4)预留了多余的空间

    三 测试运行

    输入题目数量,结果参数大小,是否包含乘法除法

     

     

     

     五 相关代码

    选择题目数量,结果大小,乘法除法

    Scanner rea=new Scanner(System.in);
       System.out.println("请输入题目数量");
       int total=rea.nextInt();
       System.out.println("请输入参数大小");
       int nsieze=rea.nextInt();
       System.out.println("是否包含乘法,如果包含,请输入1");
       int flag=rea.nextInt();
       System.out.println("是否包含除法,如果包含,请输入1");
       int fl=rea.nextInt();
       int a,b;
       int k=0;
       for(;k<total;){
                    int i;
        a=(int)(Math.random()*100);
        b=(int)(Math.random()*100);
        i=(int)(Math.random()*4);//加减乘除参数控制
        int n = 0;
       switch (i){
        case 0:  
         //int k=(int)(Math.random()*3);
                      if(i==0&&n<=nsieze)
         {n=a+b;
         k++;
         out.println(a+"+"+b+"="+n);
         System.out.println(a+"-"+b+"="+n);
         }

    case 2:
        if(i==2&&n<=nsieze&&flag==1)
         n=a*b;
       {k++;
       out.println(a+"*"+b+"="+n);
       System.out.println(a+"*"+b+"="+n);
    }  

    导出到外部文件相关代码

    PrintWriter out;//定义变量
                try{
                out=new PrintWriter("d:/test.txt");//输出的路径和文件名


                }catch(FileNotFoundException e){throw new RuntimeException(e);}

       out.println(a+"+"+b+"="+n);

    判断重复

     for(int j=i;j>0&&j<5;j--){//从当前位置向前遍历数组元素       
                                         if(aa[i]==aa[j-1]){//比较操作数x是否重复
                                             if(dd[i]==dd[j-1]){//如重复比较操作符是否重复
                                                 if(ee[i]==ee[j-1]){//如重复比较最后一个操作数是否重复
                                                     c=1;

    六 总结

    创建1个类,数字随机,选择题目数量,结果大小,乘法,除法,并且去除重复参数

    最后输入结果,导出到外部文件

    七、PSP

     

    PSP2.1

    任务内容

    计划共完成需要的时间(min)

    实际完成需要的时间(min)

    Planning

    计划

    15

    20

    ·       Estimate

    ·  估计这个任务需要多少时间,并规划大致工作步骤

    15

    20

    Development

    开发

    350

    410

    ··       Analysis

      需求分析 (包括学习新技术)

    10

    20

    ·       Design Spec

    ·  生成设计文档

    0

    0

    ·       Design Review

    ·  设计复审 (和同事审核设计文档)

    0

    0

    ·       Coding Standard

      代码规范 (为目前的开发制定合适的规范)

    5

    5

    ·       Design

      具体设计

    15

    20

    ·       Coding

      具体编码

    300

    340

    ·       Code Review

    ·  代码复审

    10

    10

    ·       Test

    ·  测试(自我测试,修改代码,提交修改)

    10

    15

    Reporting

    报告

    30

    40

    ··       Test Report

    ·  测试报告

    20

    25

    ·       Size Measurement

      计算工作量

    0

    0

    ·       Postmortem & Process Improvement Plan

  • 相关阅读:
    XML(学习笔记)
    css样式学习笔记
    Request(对象)
    sql一些错误修改的总结
    转载(如何学习C#)
    sql server(学习笔记2 W3Cschool)
    sql sqrver(学习笔记1 W3Cschool)
    关于 flutter开发碰到的各种问题,有的已经解决有的一直没解决或者用其他方法替代
    关于 Flutter IOS build It appears that your application still contains the default signing identifier.
    关于 flutter本地化问题 The getter 'pasteButtonLabel' was called on null
  • 原文地址:https://www.cnblogs.com/chenxiangyuu/p/11506646.html
Copyright © 2011-2022 走看看