如何以相反的顺序打印此逻辑的值?

时间:2014-10-10 05:03:15

标签: html jsp

在我的代码中我打印值1到64.但是我需要以相反的顺序打印这些值,从64开始到1.并且单个表中的所有值。对于我当前的逻辑值是打印在2个表中。第一个表中的数字1到56和第二个表中的57到64.如何更改此逻辑。

<%
        int apps = 64;
        int N = 1, k;
        label:
        for (int i = 1; i <= apps; i++) {
            out.println("<table>");
            for (int j = 1; j <= 7; j++) {
                out.println("<tr>");
                for (k = N; k <= N + 7; k++) {
                    out.println("<td>");
                    out.println("" + k + "");
                    out.println("</td>");
                    if (k == apps) {
                        break label;
                    }
                }
                out.println("</tr>");
                N = N + 8;
            }
            out.println("</table>");
        }
    %>      

您的帮助将不胜感激。

2 个答案:

答案 0 :(得分:0)

out.println("<table>");
int row=8;
int col =8;

int count = 64;
for(int i = row;i>0 ;i--){
out.println("<tr>");
  for(int j=col;j>0;j--){
    out.println("<td>"+count+"</td>");
    count--;
  }
out.println("</tr>");
}

out.println("</table>");

试试这个。

答案 1 :(得分:0)

我可以按如下方式编写行和列变量:

 out.println("<table>");
        int apps = 64;
        double rowColumn = Math.sqrt(apps);
        for (double i = rowColumn; i > 0; i--) {
            out.println("<tr>");
            for (double j = rowColumn; j > 0; j--) {
                out.println("<td>" + apps + "</td>");
                apps--;
            }
            out.println("</tr>");
        }
        out.println("</table>");

它会正常工作。