程序员50题(JS版本)(八)】的更多相关文章

程序36:有n个人围成一圈,顺序排号.从第一个人开始报数(从1到3报数),凡报到3的人推出圈子,问最后留下的是原来第几号的那位 var n=20; var arr=[]; for(var i=0;i<n;i++){ arr.push(1); } for(var j=1,least=n;;j++){ if(least==2){ break; } for(var k=0,tag=0;;k++){ if(arr[k]==1){ tag+=1; if(tag==3){ arr[k]=0; least-=…
程序11:判断101~200之间有多少个素数,并输出所有素数 for(var i=101,num=0;i<=200;i++){ for(var j=2;j<=i;j++){ if(i%j==0&&j!=i){ tag=1; break; }else{ if(j==i){ console.log(i); } } } } console.log(num); 结果 101 103 107 109 113 127 131 137 139 149 151 157 163 167 173…
程序41:八进制转换为十进制 var num1=425; var num2=0; num1=num1.toString(); for(var i=num1.length-1,root=1;i>=0;i--){ num2+=Number(num1[i])*root; root*=8; } console.log(num2); 结果 277…
程序31:有一个已经排好序的数组.现输入一个数,要求按原来的规律将它插入数组中 var test=[213,134,134,84,62,11]; const num=33; test.push(num); test.sort(function(a,b){ for(var i=0;i<test.length-2;i++){ if(test[i]>test[i+1]){ return b-a; }else if(test[i]<test[i+1]){ return a-b; } } });…
程序26:给一个不多于5位的正整数.要求:一.求它是几位数,二.逆序打印出各位数字. var test=456; var arr=[]; arr[0]=test%10; arr[1]=parseInt(test%100/10); arr[2]=parseInt(test%1000/100); arr[3]=parseInt(test%10000/1000); arr[4]=parseInt(test/10000); for(var i=4;i>=0;i--){ if(arr[i]==0){ ar…
程序21:有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和. var arr=[]; var count=20; for(var i=0;i<=count;i++){ if(i==0){ arr[i]=1; }else if(i==1){ arr[i]=2; }else{ arr[i]=arr[i-1]+arr[i-2]; } } for(var i=0,sum=0;i<count;i++){ sum+=arr[i+1]/arr[i]; } c…
程序16:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字.例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制 var s=0; var num=0; var loop=5; var a=3; for(var i=1;i<=loop;i++){ num=num*10+a; //console.log(num); s+=num; } console.log(s); 结果 37035 程序17:一个数如果恰好等于它的因子之和,这个数就称为“完数…
程序6:用*号输出字母C的图案 console.log(' ****'); console.log(' ***'); console.log(' **'); console.log(' *'); console.log('*'); console.log(' *'); console.log(' **'); console.log(' ***'); console.log(' ****'); 结果 **** *** ** * * * ** *** **** 程序7:将一个正整数分解质因数.例如:…
程序1:有1.2.3.4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? for(var i=1,sum=0;i<=4;i++){ for(var j=1;j<=4;j++){ if(i!=j){ for(var k=1;k<=4;k++){ if(k!=i&&k!=j){ var sws=''; sws+=''+i+j+k;//+=右侧是个整体,所以强制转换时要专门写个'' console.log(sws); sum++; } } } } } console…
之前一直听说node.js在处理网站大规模并发上十分有用,所以有一定规模的公司都在使用node.我在工作中只用过jquery,属于那种边做功能边学习的那一种.甚至连原生的js都不太会写,只是知道语法差不多吧.于是诚惶诚恐的购买了一本<node.js权威指南>,先看再说吧,边看边学习语法和一些api,遇到不懂的就直接百度.从这两天学习的进程来说,对于我这个将近两年工作经验的.net程序员来说还不算困难. 本文章将会总结我这两天的学习心得,并在一些地方,比如语法等地方对比C#,使大家更容易去理解,…