zoukankan      html  css  js  c++  java
  • 结对项目四则运算 “软件”之升级版

    本作业要求来自于:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE1/homework/2213

    我的远程github地址为:https://github.com/lawnlawn/ruanjiangongcheng/tree/master/studentFormulaWeb/studentFormularWeb

    一、程序基本要求

      • 自动生成题目,单个题目最多不能超过4个运算符,操作数小于100。
      • 用户可以输入答案
      • 若用户输入答案正确,则提示正确;若答案错误,则提示错误,并要提示正确答案是多少。

    二、四个扩展方向

      • 用户答题结束以后,程序可以显示用户答题所用的时间;(黄泳棋)
      • 用户可以选择出题的个数(最多不能超过5个题目),答题结束可以显示用户答错的题目个数和答对的题目个数;(沈淑)
      • 程序可以出单个整数阶乘的题目:如:4!=24;(沈淑)
      • 程序可以设置答题时间,时间设置为整数,单位为秒,最大不能超过120秒,若超过了答题时间未答题,则提示:时间已到,不能答题。(黄泳棋)

    三、时间记录表

    PSP2.1

    Personal Software Process Stages

    Time Senior Student(h)

    Time(h)

    Planning

    计划

    0

    0

    · Estimate

    估计这个任务需要多少时间

    14.3

    12.3

    Development

    开发

    2

    1.3

    · Analysis

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

    0.2

    0.3

    · Design Spec

    生成设计文档

    0

    0

    · Design Review

    设计复审

    0.2

    0.3

    · Coding Standard

    代码规范

    0.2

    0.3

    · Design

    具体设计

    2

    1.3

    · Coding

    具体编码

    6

    5

    · Code Review

    代码复审

    1

    1.3

    · Test

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

    1

    1

    Reporting

    报告

    0

    0

    Test Report

    测试报告

    0.3

    0.3

    ·workload

    计算工作量

    0.3

    0.3

    ·correction

    并提出过程改进计划

    0.3

    0.3

    四、结对过程

    1、结对成员

      • 本人——沈淑:负责编码扩充两个方向,网页的设计与编码,调试
      • 队友——黄泳棋(https://www.cnblogs.com/lawn/p/9838093.html):负责编码另外两个方向,前端与后端代码的整合,调试

    2、结对开发环境

      • Google浏览器
      • IDEA开发软件

    3、扩展方向

      • 用户答题结束以后,程序可以显示用户答题所用的时间;(黄泳棋)
      • 用户可以选择出题的个数(最多不能超过5个题目),答题结束可以显示用户答错的题目个数和答对的题目个数;(沈淑)
      • 程序可以出单个整数阶乘的题目:如:4!=24;(沈淑)
      • 程序可以设置答题时间,时间设置为整数,单位为秒,最大不能超过120秒,若超过了答题时间未答题,则提示:时间已到,不能答题。(黄泳棋)

    4、结对收获

      • 跟队友的合作不是第一次了,所以默契还是有的,分工可以比较明确,也比较知道各自的强项,好安排任务
      • 觉得做这个项目综合了很多以前的知识,可以对旧知识进行回顾
      • 可能是对项目的开发经验不足,有些地方考虑不周全
      • 一些技术还不是很成熟,就导致项目进行的时候会有一些阻碍

    5、结对学习照片

    五、部分源代码

    1、阶乘实现的部分代码

    result=1;//初始化result为1
                jiecNum=random.nextInt(100)+1;
                fomula=jiecNum+"!=";
                for(int i=jiecNum;i>0;i--){
                    result*=i;
                }

    2、判断答案对错的部分代码

    function trueOfFalse() {
                    clearInterval(timer);
                    var startTime = <%=session.getAttribute("time")%>;
                    var endTime = second;
                    var totalTime = startTime - endTime;
    
                    <%
                        String an= String.valueOf(session.getAttribute("ans"));
                        String[] answer ;
                        answer= an.split(",");
                        int k=0;
                        for(int j=0;j<5;j++){
                            if(answer[j].equals("dd")){
                                k++;
                            }
                        }
                    %>
    
                    var an = new Array(5);
                    var rAn = new Array(5);
                    for (var i = 0; i <<%=session.getAttribute("nums")%>; i++) {
                        an[i] =document.getElementById("formularAn" + i).value;
                        document.getElementById("a" + i).style.display = "flex";
                    }
                    var rTi=0;
                    <% for(int i=0;i<5-k;i++){%>
                    rAn[<%=i%>]=<%=answer[i]%>;
                    if ( an[<%=i%>] == rAn[<%=i%>] ) {
                        document.getElementById("tof" + <%=i%>).innerHTML = "&nbsp;<i class=\"fa fa-check fa-lg mt-4\" style='font-size: 1.3125rem;'>正确答案是:</i>"
                        rTi++;
                    } else {
                        document.getElementById("tof" + <%=i%>).innerHTML = "&nbsp;<i class=\"fa fa-remove fa-lg mt-4\" style='font-size: 1.3125rem;'>正确答案是:</i>"
                    }
                    <%}%>
                    alert("您用时为:"+totalTime+"秒!正确题数为:"+rTi+"题,答错题数为:"+(<%=session.getAttribute("nums")%>-rTi));
                }

    六、运行页面的截图

    1、主页面

    2、出题页面

    3、答题结束弹框

    4、判断对错

      最后,有什么不对或者需要改进的地方,欢迎指正哦~

  • 相关阅读:
    activiti并行和串行区别
    SpringMVC 封装返回结果对象
    maven基础
    activiti表
    SpringBoot进阶
    SpringBoot基础
    javascript ES6模块化
    Vuejs搜索下拉框
    Vuejs2.0 + bootstrap demo
    maven settings.xml
  • 原文地址:https://www.cnblogs.com/sanshuishu/p/9840722.html
Copyright © 2011-2022 走看看