以下是一个简单的Servlet程序,用于计算三角形数据:

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class TriangleServlet extends HttpServlet {

  public void doGet(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {
    // 获取输入的自然数
    String input = request.getParameter("number");
    int n = 0;
    try {
      n = Integer.parseInt(input);
    } catch (NumberFormatException e) {
      // 如果输入不合法,返回错误信息
      response.setContentType("text/html");
      PrintWriter out = response.getWriter();
      out.println("<html><body>");
      out.println("<h2>Error: Invalid input</h2>");
      out.println("</body></html>");
      return;
    }

    // 计算三角形数据
    int[][] triangle = new int[n][];
    for (int i = 0; i < n; i++) {
      triangle[i] = new int[i+1];
      triangle[i][0] = 1;
      triangle[i][i] = 1;
      for (int j = 1; j < i; j++) {
        triangle[i][j] = triangle[i-1][j-1] + triangle[i-1][j];
      }
    }

    // 输出三角形数据
    response.setContentType("text/html");
    PrintWriter out = response.getWriter();
    out.println("<html><body>");
    out.println("<table>");
    for (int i = 0; i < n; i++) {
      out.println("<tr>");
      for (int j = 0; j <= i; j++) {
        out.print("<td style=\"background-color: ");
        out.print((i+j)%2 == 0 ? "#DDDDDD" : "#EEEEEE");
        out.print(";\">");
        out.print(triangle[i][j]);
        out.print("</td>");
      }
      out.println("</tr>");
    }
    out.println("</table>");
    out.println("</body></html>");
  }
}

在这个程序中,我们首先获取页面中输入的自然数,并尝试将其转换为整数。如果转换失败,说明输入不合法,我们就返回一个错误信息。否则,我们就使用一个二维数组来计算三角形数据,并输出到页面上。在输出时,我们使用了HTML表格,并设置了单元格的背景色,使得相邻行的背景色不同


原文地址: https://www.cveoy.top/t/topic/ebQa 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录