1、输入年份,再输入月份,弹出这个月有多少天?
思路分析:1,3,5,7,8,10,12不管哪一年都是31天,可以通过if或switch,case来实现如下情况下都是31天,然后判断年份是闰年还是平年,来确定2月是29天还是28天,其余的月份为30天。
<script type="text/javascript"> var year = Number(prompt("请输入年份")); var month = (prompt("请输入月份")); switch(month) { case"1":alert("该月有31天"); break; case"3":alert("该月有31天"); break; case"5":alert("该月有31天"); break; case"7":alert("该月有31天"); break; case"8":alert("该月有31天"); break; case"10":alert("该月有31天"); break; case"12":alert("该月有31天"); break; case"2":if (year%100 != 0 && year%4 == 0) { alert("该月有29天") } else if(year%400 == 0){ alert("该月有29天") } else{ alert("该月有28天") };break; default: alert("该月有30天"); } </script>
2、1000以内的水仙花数
(三位数 各个数字的立方和等于本身
例如 1*1*1 + 5*5*5 + 7*7*7 = 157)
思路分析:百位数上的数字取值范围为1~9,十位和个位数的取值范围都是0~9,通过三个for循环的嵌套,实现100~999的数字都能轮到,然后判断(百位数的立方)+(十位数的立方)+(个位数的立方)==100*百位数+10*十位数+个位数,是的话打印出数字
<script type="text/javascript"> var zs= 0; var m = 0; for(var a=1;a<10;a++){ for (var b=0;b<10;b++) { for(var c=0;c<10;c++){ if(a*a*a+b*b*b+c*c*c==100*a+10*b+c){ zs++; m=100*a+10*b+c; document.write("该数字为:"+m+";"+"<br />"); } } } } console.log(zs); </script>