一.打印金字塔:
这是各种语言学习之处都要做的一道题,最近在重新学习js,看到了这个题,做一下记录。
1 <script type="text/javascript"> 2 var level = prompt('请输入金字塔层数'); //1.prompt():用于显示可提示用户进行输入的对话框 //2.parseFloat可解析一个字符串,并返回一个浮点型,parseInt返回一个整型,Number的作用为如果输入为空,那么转为数字的NaN 3 level=parseFloat(level) && Number(level); 4 if(isNaN(level)){ //isNaN用于判断level是否为数字,true则执行下面的语句 5 alert('金字塔层数必须是纯数字!'); 6 7 } 8 for(var i = 1;i<=level;++i){ 9 //打印空格 10 var blank = level-i; 11 for(var j=0;j<blank;++j){ //内循环用于打印空格  12 document.write(' '); 13 } 14 //打印星星 15 var star =2*i-1; 16 for(var k=0;k<star;++k){ 17 document.write('*'); 18 } 19 document.write('<br>'); 20 } 21 22 </script>
二.求出1~100的素数:
质数,又称素数,定义为在大于1的自然数中,除了1和它本身不再有其他因数。
这里我加入了一个prompt()方法,自己输入数字,作为求素数的范围,没有讨论数字为1的情况。
1 <script type="text/javascript"> 2 var prime = prompt('请输入一个数'); 3 prime = parseInt(prime) && Number(prime); 4 if(isNaN(prime)){ 5 alert('请输入一个整数'); 6 } 7 8 for(var i=2;i<prime;i++){ //范围为2~输入的数,在这之间循环 9 for(var j=2; j<i;j++){ 10 if(i % j ==0){ //将每一个数与小于它的数进行取余,当余数为0时,该数不是素数 11 break; 12 } 13 else if(j=i-1){ //循环至i-1,如i为素数将被输出 14 document.write(i+' '); 15 } 16 17 } 18 } 19 20 21 </script>
三.有红、白、黑三种球若干,其中红、白球共25个,白、黑球共31个,红、黑球共28个,求这三种球各多少个?
1 <script> 2 //有红白黑三种球,其中红+白=25,白+黑=31,红+黑=28. 3 for(var red=0;red<=25;red++){ //假设红球的个数不大于25 4 var w=25-red; //白球满足表达式 5 var b=28-red; //黑球满足表达式 6 if(31==w+b){ //if语句为真,则表达式均成立 7 alert('r='+red+'w='+w+'b='+b); 8 } 9 } 10 </script>