张继军 董卫 《java web 应用开发技术与实案列教程》课后习题之第三章第4题

  • 题解
    • 题目内容
    • 源代码
      • input.jsp
      • sum.jsp
      • positive.jsp
      • negetive.jsp
  • 遇到的问题:Syntax error on token "else", delete this token
  • 运行结果

题解

题目内容

4.设计求任意两个整数和的web程序,要求,用户通过提交页面(input.jsp)输入两个整数,并提交给一个sum.jsp程序,在sum.jsp中计算这两个数的代数和,如果代数和为非负数,则跳转positive.jsp页面,给出“结果为正!”信息提示并显示计算结果,否则跳转到negative.jsp页面,给出“结
果为负!”信息提示并显示计算结果。

源代码

input.jsp

<body/>中代码如下:
<body><form action="sum.jsp" method="post"> 数据1:<input type="text" name="shuju1"><br>数据2:<input type="text" name="shuju2"><br><input type="submit" value="提交"><br></form>
</body>

sum.jsp

使用JSP内置对象request的 getParameter(String name) 方法获得参数值:
 <%String str1 = request.getParameter("shuju1");String str2 = request.getParameter("shuju2");double s1 = Double.parseDouble(str1);double s2 = Double.parseDouble(str2);double s3 = s1 + s2;request.setAttribute("st1", s1);request.setAttribute("st2", s2);request.setAttribute("st3", s3);if(s3>=0){%><jsp:forward page="positive.jsp"/><%}else{%><jsp:forward page="negative.jsp"/><%}%>

positive.jsp

<p>结果为正!</p><%Double a1 = (Double) request.getAttribute("st1"); //获取的是对象类型,必须强制转换类型Double a2 = (Double) request.getAttribute("st2");Double a3 = (Double) request.getAttribute("st3");%><%=a1%>+<%=a2 %>=<%=a3 %><br>

negetive.jsp

<p>结果为负!</p> <%Double a1 = (Double) request.getAttribute("st1"); //获取的是对象类型,必须强制转换类型Double a2 = (Double) request.getAttribute("st2");Double a3 = (Double) request.getAttribute("st3");%><%=a1%>+<%=a2%>=<%=a3%><br>

遇到的问题:Syntax error on token “else”, delete this token

哎,写题的时候是对仿照课本例题写的,可没想到在if else语句处出了问题。一开始在sum.jsp中是这么写的

if(s3>=0)%><jsp:forward page="positive.jsp"/>
<%else%><jsp:forward page="negative.jsp"/>

结果运行出错:Syntax error on token “else”, delete this token
把if语句块用花括号{ }括起来之后就解决了!

if(s3>=0){%><jsp:forward page="positive.jsp"/><%}else{%><jsp:forward page="negative.jsp"/><%} %>

其实一开始仿课本例题写这段代码我就觉得别扭,<jsp:forward>动作元素不包含在JSP代码块中,也就是不能包含在 <% %>里面,然后if(s3>=0)%> 直接使用“%>”结束一段JSP代码块,让我感觉后面的<jsp:forward page="positive.jsp"/>不是if语句控制的,有点别扭。

运行结果


设计求任意两个整数和的web程序,用户通过提交页面(input.jsp)输入两个整数,并提交给一个(sum.jsp)程序相关推荐

  1. python 使用input函数输入两个数字,比较两个数字的大小,并输出较大的数

    # python 使用input函数输入两个数字,比较两个数字的大小,并输出较大的数 """ 任务 1.定义变量x和y,用于存放输入的两个数值 2.判断x与y是否相等,相 ...

  2. python怎么从键盘输入两个数然后求和并输出_C语音的题:从键盘输入两个整数,要求求和然后输出和。应该怎么做?...

    展开全部 代码如下: using System; using System.Collections.Generic; namespace TestProject { class Program { s ...

  3. Java编程之图形化设计求任意输入数的阶乘

    问题描述:下面是我使用Java编程所实现的图形化的能求输入的任意数的阶乘. 程序源码: import java.awt.*; import java.awt.event.*; import javax ...

  4. 首先从键盘上两个矩阵的行数n和列数m,然后输入两个矩阵A和B的元素值,最后求出两个矩阵的和C并输出其元素值。

    输入格式: 第1行包含两个整数n和m,表示矩阵的行数和列数. 接下来n行,每行m个整数,表示矩阵A的元素值. 再接下来n行,每行m个整数,表示矩阵B的元素值. 相邻两个整数之间用空格分隔. 输出格式: ...

  5. Vue input控制输入内容(整数,小数,带有符号的数字)

    //a.vue文件 <el-input v-model="aaa" @keyup.native="()=>{aaa=checkInput(aaa,'parse ...

  6. input只能输入两位小数_四十三、Python的输入与输出

    Python的输入与输出 一.输出格式美化 Python常见的有两种输出值的方式:表达式语句和print()函数.而第三种方式是使用文件对象的write()方法,标准输出文件可以用sys.stdout ...

  7. c语言while输入n求n个奇数,任意输入n个整数,输出这n个数中的奇数个数和偶数个数.用while语句...

    C语言 输入n并输入n个数,输出这n个数中的所有奇数的乘积 #includevoidmain(){inti,n,arr[100],mul=1;printf("请输入n值:");sc ...

  8. c语言求3个整数的平均数程序,c语言求余(c语言求任意三个数的平均值)

    C语言提供了一个取余数的运算符%,称之为"模"运算符.只有两个整数之间才可以进行模运算!a % b 表示 用b来整除a,商整数,得到余数.如:5%3 = 2 4%3 =13%3 . ...

  9. 在python中输入10个整数并求出最大值_python练习题 :用户任意输入10个整数到列表中,然后由大到小排列并输出。...

    一:填空题: 1.python是一种面向_对象 __的高级语言. 2.python可以在多种平台运行,这体现了python的___可移植___特性. 3.python源代码被解释器转换后的格式为___ ...

最新文章

  1. mysql40190_MySQL 内核深度优化
  2. 精选NLP、CV领域论文TOP10(附链接)
  3. 北大开源了 Python 中文分词工具包,准确度远超 Jieba
  4. P4070-[SDOI2016]生成魔咒【SA,平衡树】
  5. 迷你版Spring MVC 实现
  6. Python入门之PyCharm中目录directory与包package的区别
  7. python必背代码-Python高手必修课:如何让 Python 代码更易读,推荐收藏
  8. leetcode[232]用栈实现队列/Implement Queue using Stacks
  9. Joda-Time 用法
  10. yyyy-mm-dd yyyymmdd互相转换
  11. Excel应用技巧之二——常用函数
  12. 灯神动态规划(Dynamic Programing)学习笔记 打劫问题 凑整问题 背包问题 例题+原理+源码超详细讲解
  13. Spark学习笔记1
  14. 完全免费一级域名强注册地址 免费二级域名注册地址
  15. 罗技c270摄像头支持linux,罗技C270摄像头的使用心得
  16. html获取微信code,微信授权获取code(微信支付)
  17. TDA4862G 经过优化,完全兼容世界标准,能够实现极其紧凑并且极具成本效益的 PFC 解决方案
  18. 医药之家:医疗器械龙头企业排名变动,11家中国企业入选全球百强!
  19. pandas转json去掉index索引
  20. deepin linux 桌面环境,Linux Deepin 新桌面环境的目标

热门文章

  1. 卷积神经网络(原理与代码实现)
  2. 使用卷积神经网络(CupCnn)训练人脸检测模型
  3. 最糟糕的一年?2020的所有混乱或许对我们的大脑有好处
  4. 【Python 基础教程】一文理清Python函数的细枝末节
  5. 海川QK1209 低压按键台灯充电 LED 驱动 IC- 昱灿电子
  6. 【玩转华为云】手把手教你用Modelarts实现猫狗数据集的智能标注
  7. QT实现电子时钟(计时器)毫秒级
  8. Python扩展包:Unofficial Windows Binaries for Python Extension Packages
  9. 百度翻译金山词霸API
  10. 10大ppt免费模板网站,拿走不谢