用jsp写出记忆曲线的表格(用学习新概念英语做例子)

本文介绍如何使用JSP技术创建一个记忆曲线的学习计划表格,该表格用于跟踪新概念英语的学习进度,包括新学习和复习任务。通过日期计算和循环输出,实现了85天内的学习与复习计划。

用jsp写出记忆曲线的表格(用学习新概念英语做例子)

第一步:首先要导入包

import java.util.*;

import java.text.*;

第二步:再做出一个表格

<table border="1px">//表格需要边框

    <tr>//第一行

        <td>日期</td>//第几天(第一行的第一列)

        <td>新学习</td>//新学习第几篇的课文(第一行第二列)

        <td>复习前一天</td>//复习前一天的内容(第一行的第三列)

        <td>复习前二天</td>

        <td>复习前四天</td>

        <td>复习前七天</td>

        <td>复习前十五天</td>

    </tr>

    <%

        Date today=new Date();//因为有日期,所以先获取当前日子的时间

        SimpleDateFormat  sdf=new SimpleDateFormat("yyyy-MM-dd");//选择当前日子的格式

        int grount=72;//一共要学习72篇课文

        int days=grount+15;//因为15天是最后的周期  才能把全部72篇课文复习完

        //循环输出85天的列表

        for(int i=0;i<days;i++){  //编号第一天是0开始到第85天的编号是84

          Calendar cal=new GregorianCalendat();//获取日历对象进行运算(因为日历是抽象类,所以要用它的子类Gregorian来创建)

          cal.setTime(today);//把当天的时间作为日历的初始值

          cal.add(Calendar.DATE,i);//你循环多少次,就用你当天的日期加上循环的次数,(比如:今天是5月15,我循环一次,就是加一天就是5月16号,我再循   一次就16号的基础上再加1就是17号)

          String day=sdf.format(cal.getTime());//输出日期

          String task="";//新学习第几篇(我先给它初始值为空)

          String task1="";//复习前一天(我先给它初始值为空)

          String task2="";//复习前二天(我先给它初始值为空)

          String task3="";//复习前四天(我先给它初始值为空)

          String task4="";//复习前七天(我先给它初始值为空)

          String task5="";//复习前十五天(我先给它初始值为空)

 

          if(i<=grount-1){//新学习

            task=i+1+"";//如果编号i小于或者等于71就输出i+1的数

          }else

            task="--";//否则就输出--

 

          if(i<=0||i>=grount+1){//复习前一天

            task1=i+"";//如果编号i小于或者等于0时或者编号i大于等于73时就输出i编号的数值(注意:比如编号为0就代表第1个位置也就是第一天)

          }else

            task="--";

        

          

          if(i-1<=0||i-1>=grount+1){

            task1=i-1+"";//复习前两天的算法

          }else

            task="--";

 

          

          if(i-3<=0||i-3>=grount+1){

            task1=i-3;//复习前四天的算法

          }else

            task="--";

 

          

          if(i-6<=0||i-6>=grount+1){

            task1=i-6;//复习前七天的算法

          }else

            task="--";

 

          if(i-14<=0||i-14>=grount+1){

            task1=i-14;//复习前十五天的算法

          }else

            task="--";

    %>

    <tr>//第二行

        <td><%=day%></td>//我先在日期用123这样的数字表示

        <td><%=task%></td>

        <td><%=task1%></td>

        <td><%=task2%></td>

        <td><%=task3%></td>

        <td><%=task4%></td>

        <td><%=task5%></td>

    </tr>

  <%}%>

 

注意:<%%>这对符号里面的表示的是java执行的代码段

</table>

 

执行代码之后是这样的页面:

 

转载于:https://www.cnblogs.com/panweiwei520/p/6857013.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值