js中如何判断一个数是不是素数(三种方法)

素数:又叫质数,在大于1的自然数中,除了1和它本身以外不再有其他因数。即只能被1和它本身整除的数就是素数

这是作为编程入门时,经常会做的一道题。

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
</head>

<body>
	请输入一个数:<input id="num" type="text" />
	<input type="button" value="  看看是不是合数 " onclick = "test()" />
	
</body>
</html>
<script type="text/javascript">


//	判断一个数是不是素数(质数)。(只能被1和自身整除的数,或者说:除了1和它自身以外,再没有其它数能整除它)
//方法一:

function test(){
	//1、输入
	var num = parseInt(document.getElementById("num").value);//9
	//2、业务逻辑
	
	for(var i=2;i<=num-1;i++){//i=7  num=7
		if(num%i==0){
			break;
		}
	}
	
	if(i>num-1){
		alert(num+"是素数");
	}else{
		alert(num+"是合数");
	}	
}

//方法二:

/*

function test(){
	//1、输入
	var num = parseInt(document.getElementById("num").value);//9
	//2、业务逻辑
	var isSu=true;//isSu:表示是否为素数;假设是素数;
	
	for(var i=2;i<=num-1;i++){
		if(num%i==0){
			isSu = false;
			break;
		}
	}	
	if(isSu==true){
		alert(num+"是素数");
	}else{
		alert(num+"是合数");
	}	
}

*/

//方法三
/*
function test(){
	//1、输入
	var num = parseInt(document.getElementById("num").value);//9
	
	//2、业务逻辑
	var count=0;//记录整除的次数
	for(var i=2;i<=num-1;i++){//
		if(num%i==0){
			count++;
			break;
		}
	}
	
	if(count==0){
		//3、输出
		alert(num+"是素数");		
	}else{
		alert(num+"是合数");		
	}
	
}
*/

</script>


猜你喜欢

转载自blog.csdn.net/jiang7701037/article/details/80100703