判断素数
什么是素数:素数是指质数,一个大于1的自然数,除了1和它自身外,不能整除其他自然数的数叫做质数;否则称为合数。所以我们可以利用这个性质来判断这个数是否为素数。
基本代码:
css部分:
.box1,.box2,.box3 {
height: 100px;
width: 500px;
line-height: 100px;
font-size: 70px;
font-weight: 700;
margin: 0 auto;
text-align: center;
}
/*添加颜色方便分辨*/
.box1 {
color: black;
}
.box2 {
color: red;
}
.box3 {
color: gray;
}
js部分:
<script type="text/javascript">
var primeNumber=prompt('请输入一个数');
//判断用户是否输入了值
if (primeNumber == "" || primeNumber == null){
document.write('<div class="box3">');
document.write('请输入一个值');
document.write('</div>');
}else {
// 强制类型转换成number型
primeNumber = Number(primeNumber);
// 判断用户输入的是否是数字
if(isNaN(primeNumber)){
document.write('<div class="box3">');
document.write('请输入一个数字');
document.write('</div>');
}else {
// 由于1和0既不是素数也不是合数,所以要单独判断
if(primeNumber==1||primeNumber==0){
document.write('<div class="box3">');
document.write(primeNumber+'即不是素数也不是合数');
document.write('</div>');
}else {
// 创建一个变量来控制素数
var c=1;
for(var i=2;i<primeNumber;i++){
// 利用素数除了1和它自身外,不能被其他自然数整除
if(primeNumber%i==0){
c=0;
}
}
}
//如果c的值为1就是素数
if(c==1){
document.write('<div class="box1">');
document.write(primeNumber+'是素数');
document.write('</div>');
}else if(c==0){
document.write('<div class="box2">');
document.write(primeNumber+'是合数');
document.write('</div>');
}
}
}
</script>
效果图:
取消输入时:
输入非数字时:
正确输入时:
就是这么神奇,你看懂了吗?