JavaScript循环语句练习
1, 一个新入职,月工资为2000元的员工,每年涨当年工资5%,20年后的月工资是多少?
var salary = 2000 var year = 1 while (year <= 20){ salary = salary*1.05 year++; } console.log(salary);
2, 山上有一口缸可以装50升水,现在有15升水。老和尚叫小和尚下山挑水,每次可以挑5升。问:小和尚要挑几次水才可以把水缸挑满?通过编程解决这个问题。
var sum = 15 var every = 0 while(sum<50){ sum = sum +5 every++ } console.log(every);
3, 打印100–200之间所有能被3或者7整除的数
for(var i=100;i<200;i++){ if(i % 3 == 0 || i % 7 == 0){ console.log(i); } }
4, 计算10的阶乘 (1*2*3*4*5*6*7*8*9*10 n的阶乘1*2……*n)
var i = 1; var product = 1; while (i<10){ i++ product*=i } console.log(product);
5, 计算1+3+5+...+99的和
var i = 1; var sum = 0; while (i<=100){ sum=sum+i; i=i+2; } console.log(sum);
6, 99乘法表
for (var a=1;a<=9;a++) { for (var b=1;b<a+1;b++) { document.write(b+"×"+a+"="+a*b+" ") } document.write("<br/>"); document.write("<br/>"); }
7, 输出20~80之间能被3整除的整数, 每行5个
var a=0,b=""; for(i=20;i<=80;i++){ if(i%3==0){ a++; b+=i+" "; if(a%5==0){ document.write(b+"<br>"); b=""; } } }
8, 打印1000~2000年中所有的闰年, 每行4个
var a=0,b=""; for(num=1000;num<=2000;num++){ if(num%4==0 && num%100!=0 || num%400==0){ a++; b+=num+" "; if(a%4==0 && num<=1988){ document.write(b+"<br>"); b=""; } if(num>1988){ document.write(b); b=""; } } } document.write("<br>");
9, 求: 1-1/2+1/3-1/4 … 1/100的和
var a=0,b=0; for(i=1;i<=100;i++){ if(i%2==0){ a-=1/i; }else{ b+=1/i; } } document.write(a+b);
9, 输入两个数,求两个数的最小公倍数(****) 如: 9和6的最小公倍数是18, 1, 先找出两个数中的最大数 // 9 -> 6*9 2, 最大数++,找出能被两个数整除的数(退出循环)
var a=prompt("1.请输入第一个数:",24),b=prompt("1.请输入第二个数:",36); if(a==0 || b==0){ document.write("两个数没有公倍数!"); }else if(a>b){ for(i=a;i<=a*b;i++){ if(i%a==0 && i%b==0){ document.write("两个数的最小公倍数是:"+ i); break; } } }else{ for(i=b;i<=a*b;i++){ if(i%a==0 && i%b==0){ document.write("两个数的最小公倍数是:"+ i); break; } } } document.write("<br>");
10, 输入两个数n,a,如果n==3, a == 2; 输出 2 + 22 + 222 的值。(不用输出式子)(****) 如: n == 4, a == 3; 输出 3 + 33 + 333 + 3333的值。 提示: 1、n = 3,相加三次,每次相加比前一次相加的数,多一位 2、每次多的这个位数的值为a, 3, 3*10+3(33), 33*10+3(333),...
var n=3,a=2 var sum =0 var str ="" for(var i=0;i<n;i++){ str+=a sum+=Number(str) } console.log(sum);
11, 五位数中,对称的数称为回文数,找出所有的回文数。 如: 12321
for(i=10000;i<100000;i++){ if((i-i%10000)/10000 == i%10 && (i%10000-i%1000)/1000==(i%100-i%10)/10){ document.write(i +" "); if((i%1000-i%100)/100==9){ document.write("<br>"); } } }
12, 宰相的麦子:相传古印度宰相达依尔,是国际象棋的发明者。有一次,国王因为他的贡献要奖励他,问他想要什么。达依尔说:“只要在国际象棋棋盘上(共64格)摆上这么些麦子就行了:第一格一粒,第二格两粒,……,后面一格的麦子总是前一格麦子数的两倍,摆满整个棋盘,我就感恩不尽了。”国王一想,这还不容易,刚想答应,如果你这时在国王旁边站着,你会不会劝国王别答应,为什么?
var a=1; for(i=2;i<64;i++){ a*=2; } document.write(a);
13, 求1!+2!+3!+4!+5!
var result = 0 for(var i=1;i<=5;i++){ var sum = 1 for(var j=1;j<=i;j++){ sum*=j } result+=sum } console.log(result);
14, 找出所有的水仙花数,三位数,各位立方和等于该数本身。 如: 153 = 1 ^ 3 + 5 ^ 3 + 3 ^ 3
for(i=100;i<1000;i++){ if(Math.pow((i-i%100)/100,3)+Math.pow((i%100-i%10)/10,3)+Math.pow(i%10,3)==i){ document.write(i +"<br>"); } } document.write("<br>");
15, 输入任意两个数,如果第一个数小,从第一个数打印到第二个数,如果第二个数小,从第二个数打印到第一个数
var a=prompt("15.请输入第一个数:",24),b=prompt("15.请输入第二个数:",36); if(a>b){ a=b; document.write(a +" and "+ b); }else if(a<b){ b=a; document.write(a +" and "+ b); }else{ document.write(a +" and "+ b); } document.write("<br><br>");
16, 输入两个数,求两个数的最大公约数(*****) 如: 12和8的最大公约数是4, 提示: 能够同时整除两个数的最大数 1, 先找出两个数中最小的那个数, 2, 最小数--, 找出能被两个数整除的数(退出循环break)
var a=prompt("16.请输入第一个数:",24),b=prompt("16.请输入第二个数:",36); if(a==0 || b==0){ document.write("两个数没有公约数!"); }else if(a>b){ for(i=b;i>0;i--){ if(a%i==0 && b%i==0){ document.write("两个数的最大公约数是:"+ i); break; } } }else{ for(i=a;i>0;i--){ if(a%i==0 && b%i==0){ document.write("两个数的最大公约数是:"+ i); break; } } }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律