web实验——Java编程输出数字斜塔

一、实验目的

建立数学模型并运用Java面向对象的技术进行JSP脚本编程

二、实验内容与设计思想

编写JSP页面并在本地Eclipse for JavaEE中测试,要求在命令行窗口以及浏览器上输出如下图所示的数字斜塔(必须画出程序流程图),鼓励一题多解!页面测试通过后发布到云端ECS服务器并浏览访问效果。

三、实验使用环境

操作系统:  Windows 10

编程环境:JDK1.8  、 TOMCAT 8.0 、 Eclipse IDE for JavaEE Developer

四、实验步骤和调试过程(建议画出程序流程图,要求给出源码并配有清晰的效果截图

1.代码编写和流程图

<%@ page contentType="text/html; charset=utf-8" language="java" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>数字斜塔</title>

<style>

.blue-number {

color: blue;

font-weight: bold;

font-size: 20px;

margin-right: 15px; /* 新增间距控制 */

}

</style>

</head>

<body>

<%

int size = 5;

int base = 1;

for (int line = 1; line <= size; line++) {

for (int indent = 1; indent < line; indent++) {

out.print(" ");

}

int current = base;

int elements = size - line + 1;

for (int col = 1; col <= elements; col++) {

out.print("<span class='blue-number'>" + current + "</span>");

current += line + col;

}

base += line;

out.println("<br>");

}

%>

</body>

</html>

  1. 命令行输出

进入D盘:

进入文件所在目录:

使用javac编译文件:

编译成功后生成number.class文件

在命令行窗口运行结果:

以下是在命令行运行的代码:

1.设定图案行数size为 5,起始数字start为 1。

2.外层for循环控制行数,从第 1 行到第 5 行。

3.内层for循环控制每行的数字个数,每行数字从当前start开始。

4.按col + 1的步长递增数字并输出,每行结束后换行。

5.更新start值进入下一行。

package a1;

public class Number {

    public static void main(String[] args) {

        int size = 5;

        int start = 1;

        for (int line = 1; line <= size; line++) {

            int current = start;

            for (int col = line; col <= size; col++) {

                System.out.printf("%-4d   ", current);

                current += col + 1;

            }

            start += line;

            System.out.println();

        }

    }

}

  1. 浏览器输出

Eclipse内置浏览器中输出效果:

本地浏览器中输出效果:

  1. 云端输出

①在DreamWeaver新建站点,站点目录和jsp文件目录一致,站点要选用FTP链接,并且链接网址是云端ecs服务器的公网地址。

②建立云端ecs服务器与本地服务器的远程连接。

③将jsp文件从站点中上传到云端,要在远程服务器中可以看到,然后在云端服务器的浏览器中输入http://<公网地址>:9090/项目名/文件名,即可在云端浏览jsp文件的效果。(因为我前面修改了端口号,所以这里使用了9090)

实验小(必写环节,要体现每位组员的解题思路、调试过程,鼓励小组写实验博客分享心得

1.HTML 部分:构建了基本的网页结构,包括设置页面编码为 UTF - 8,定义页面标题为 “数字斜塔”,并引入了 CSS 样式来设置数字的显示效果,如蓝色字体、加粗、20px 字号以及每个数字右侧 15px 的间距。​

2.Java 部分:在 JSP 页面的<body>标签内嵌入 Java 代码。通过定义变量size来控制数字斜塔的规模(本实验设置为 5),变量base作为数字计算的基础起始值(初始化为 1)。

3.成功在浏览器中打开 JSP 页面,展示出了预期的数字斜塔结构。

4.实验实现了特定数字图案的输出功能,通过 Java 代码完成。核心思路是利用嵌套for循环,外层循环控制行数,内层循环控制每行数字个数与输出。

5.在实现过程中,设定了起始数字和行数,数字按特定规律递增。这让我加深了对循环结构的理解与运用,体会到循环嵌套在处理复杂输出模式上的作用。

6.一开始没办法在命令行输出,找不到或无法加载主类,后发现是类路径出现问题,设置不正确,java无法找到相应的类文件,通过使用-cp明确指定类路径,最后成功输出

7.云端ecs服务器访问过程中,出现了输入网址后页面出现404的情况,但若只输入端口号又可正常运行,所以配置上没有问题的,问题出在文件上。查阅资料并经过尝试后发现,应该新建一个文件夹并把jsp文件放入文件夹里面,或可以是在上传文件时直接上传一整个项目,这样可以保证文件的正常运行。

    

六、附录参考

《Web编程技术》,余元辉,清华大学出版社,2019.5第2版

《JSP设计》(第三版),Hans Bergsten主编,林琪、朱涛江翻译 O'Reilly Media,Inc 2019年。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值