一边吃夜宵,一边敲代码
先来个JS版本的
<!DOCTYPE html>
<html>
<head>
<title>查找某范围质数</title>
<script type="text/javascript">
function $ (id) {
return document.getElementById(id);
}
function isPrim (num) {
if(num <=1) {return false};
if(num ==2) {return true};
var top = Math.floor(Math.sqrt(num));
var i;
for( i=2;i<=top;i++) {
if(num%i == 0)
{break ;}
}
return i == top+1 ;
}
function findPrim () {
beginNum = parseInt($("begin").value);
endNum = parseInt($("end").value);
// alert(beginNum);
// alert(endNum);
var result= "" ;
var cnt = 0;
for(var i = beginNum;i<=endNum;i++) {
if(isPrim(i)){
result+="<span>"+i+"</span>" ;
cnt ++ ;
if(cnt%10 ==0){
result+="<br/>";
}
}
}
alert(result);
$("result").innerHTML= result;
}
// alert(isPrim(100));
</script>
<style type="text/css">
#result span{
width:70px;
color:blue;
text-align: center;
font-weight: bold;
font-size: 20px;
display: inline-block;
}
</style>
</head>
<body>
<h3>查找某范围质数</h3>
<div>
<span>开始范围:
<input type="text" value= "" id= "begin">
</span>
</div>
<div>
<span>结束范围:
<input type="text" value= "" id ="end">
</span>
</div>
<div>
<button οnclick="findPrim();">点击查找</button>
</div>
<div id = "result"></div>
</body>
</html>
package edu.fjnu.Harry.Prim;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class PrimServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
int beginNum = Integer.parseInt(request.getParameter("beginNum"));
int endNum = Integer.parseInt(request.getParameter("endNum"));
int cnt = 0 ;
for(int i = beginNum ;i<endNum;i++){
if(isPrim(i)){
System.out.print(" "+i);
cnt++;
}
if(cnt%10 == 0)
System.out.println();
}
request.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=utf-8");
}
private boolean isPrim(int num){
if(num == 1 ) return false ;
if(num == 2 ) return true;
int i = 2;
int top = (int)(Math.floor(Math.sqrt(num)));
for(i=2;i<Math.sqrt(num);i++){
if(num%i == 0)
break;
}
return i == top+1 ;
}
}
与上面servlet相对应的jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>My JSP 'isPrim.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
<form action="<c:url value ="/prim"/>" method="get" >
<div>
<span>请输入起始数字<input type="text" name ="beginNum"></span>
</div>
<div>
<span>请输入结束数字<input type="text" name ="endNum"></span>
</div>
<input type ="submit" value = "查找">
</form>
</body>
</html>
夜宵吃完了~