我如何在 JSP 中创建一个程序来生成您可以回答的随机加法方程式,然后检查您是否正确?
How I create a program in JSP that produces random addition equations that you can answer which then checks to see if you're correct or not?
让我先这样说:我是 JSP 的绝对初学者。我仍在努力理解基础知识,同时也在不向老师寻求帮助的情况下及时完成我的工作(感谢他们在我和其他一些同学就工作和诸如缺失信息之类的事情伸出援手时从不回复电子邮件或链接)。
我的任务是在 JSP 中编写一个生成随机加法问题的程序。用户可以输入他们认为是写的答案,提交后,程序会告诉他们他们的答案是对还是错。到目前为止,我已经编写了一个程序,当它运行时,它实际上并没有在浏览器中显示任何内容。它只是不断地说“等待本地主机”。这是我到目前为止所做的:
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@ page import = "java.util.*"%>
<>
<!DOCTYPE html>
<html>
<head>
<title>Addition Quiz</title>
</head>
<body>
<%
int a, b, answer;
Random rand = new Random();
a = rand.nextInt(1000);
b = rand.nextInt(1000);
%>
<form>
<%= a %> + <%= b %> =
<input type="number" value="answer" name="answer"><br><br>
<input type="submit" value="Submit">
</form>
<%
request.getParameter("answer");
answer = a + b;
if (answer==a+b) {
out.print("Correct");
} else if (answer!=(a+b)) {
out.print("Incorrect");
}
%>
</body>
</html>
我在这里做错了什么,在您看来,我应该怎么做?我正在使用 NetBeans 和 GlassFish。
编辑:根据 Swati 的建议添加到程序中。当它现在输出时,页面会自动说正确,每当我提交一个数字来回答方程式时,页面就会刷新为一个新的方程式。
当您提交时,它正在重新加载页面,因此新的随机数是 generating.Please 找到下面的代码。
index.html
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@ page import="java.util.*"%>
<>
<!DOCTYPE html>
<html>
<head>
<title>Addition Quiz</title>
</head>
<body>
<%
int a, b, answer;
Random rand = new Random();
a = rand.nextInt(1000);
b = rand.nextInt(1000);
%>
<form action="result.jsp">
<%= a %>
+
<%= b %>
<%
request.setAttribute("a", a);
request.setAttribute("b", b);
%>
= <input type="number" value="answer" name="answer"><br>
<input type="hidden" name="a" value="<%=a%>">
<input type="hidden" name="b" value="<%=b%>">
<br><input type="submit" value="Submit">
</form>
</body>
</html>
result.html
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<h1>answer is::<%=Integer.parseInt(request.getParameter("answer")) %></h1>
<h1>a+b is::<%=Integer.parseInt(request.getParameter("a"))+Integer.parseInt(request.getParameter("b")) %></h1>
<h1>RESULT IS <%= (Integer.parseInt(request.getParameter("answer")) == (Integer.parseInt(request.getParameter("a"))+Integer.parseInt(request.getParameter("b"))) )?"Correct":"InCorrect"%></h1>
</body>
</html>
让我先这样说:我是 JSP 的绝对初学者。我仍在努力理解基础知识,同时也在不向老师寻求帮助的情况下及时完成我的工作(感谢他们在我和其他一些同学就工作和诸如缺失信息之类的事情伸出援手时从不回复电子邮件或链接)。
我的任务是在 JSP 中编写一个生成随机加法问题的程序。用户可以输入他们认为是写的答案,提交后,程序会告诉他们他们的答案是对还是错。到目前为止,我已经编写了一个程序,当它运行时,它实际上并没有在浏览器中显示任何内容。它只是不断地说“等待本地主机”。这是我到目前为止所做的:
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@ page import = "java.util.*"%>
<>
<!DOCTYPE html>
<html>
<head>
<title>Addition Quiz</title>
</head>
<body>
<%
int a, b, answer;
Random rand = new Random();
a = rand.nextInt(1000);
b = rand.nextInt(1000);
%>
<form>
<%= a %> + <%= b %> =
<input type="number" value="answer" name="answer"><br><br>
<input type="submit" value="Submit">
</form>
<%
request.getParameter("answer");
answer = a + b;
if (answer==a+b) {
out.print("Correct");
} else if (answer!=(a+b)) {
out.print("Incorrect");
}
%>
</body>
</html>
我在这里做错了什么,在您看来,我应该怎么做?我正在使用 NetBeans 和 GlassFish。
编辑:根据 Swati 的建议添加到程序中。当它现在输出时,页面会自动说正确,每当我提交一个数字来回答方程式时,页面就会刷新为一个新的方程式。
当您提交时,它正在重新加载页面,因此新的随机数是 generating.Please 找到下面的代码。 index.html
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@ page import="java.util.*"%>
<>
<!DOCTYPE html>
<html>
<head>
<title>Addition Quiz</title>
</head>
<body>
<%
int a, b, answer;
Random rand = new Random();
a = rand.nextInt(1000);
b = rand.nextInt(1000);
%>
<form action="result.jsp">
<%= a %>
+
<%= b %>
<%
request.setAttribute("a", a);
request.setAttribute("b", b);
%>
= <input type="number" value="answer" name="answer"><br>
<input type="hidden" name="a" value="<%=a%>">
<input type="hidden" name="b" value="<%=b%>">
<br><input type="submit" value="Submit">
</form>
</body>
</html>
result.html
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<h1>answer is::<%=Integer.parseInt(request.getParameter("answer")) %></h1>
<h1>a+b is::<%=Integer.parseInt(request.getParameter("a"))+Integer.parseInt(request.getParameter("b")) %></h1>
<h1>RESULT IS <%= (Integer.parseInt(request.getParameter("answer")) == (Integer.parseInt(request.getParameter("a"))+Integer.parseInt(request.getParameter("b"))) )?"Correct":"InCorrect"%></h1>
</body>
</html>