编程语言
首页 > 编程语言> > 程序员50题(JS版本)(八)

程序员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-=1; break; } } } } console.log('最后留下的是原来第'+(arr.lastIndexOf(1)+1)+'号的那位'); console.log(arr); 结果 最后留下的是原来第2号的那位 [ 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ] 程序37:写一个函数,求一个字符串的长度,在main函数中输入字符串,并输出其长度 function main(str){ for(var i=0;;i++){ if(str[i]==undefined){ return i; } } } console.log('长度为'+main('atfggdrsrgfdst')); 结果 长度为14 程序38:编写一个函数,输入n为偶数时,调用函数求1/2+1/4+...+1/n,当输入n为奇数时,调用1/3+1/5+...+1/n function fn(n){ for(var i=n,sum=0;i>1;i-=2){ sum+=1/i; } return sum; } console.log(fn(1452)); 结果 3.582727113427774 程序39:海滩上有一堆桃子,五只猴子来分。第一只猴子把这堆桃子平均分为五份,多了一个,这只猴子把多的一个扔入海中,拿走了一份。第二只猴子把剩下的桃子又平均分为五份,又多了一个,它同样把多的一个扔入海中,拿走了一份,第三、第四、第五只猴子都是这样做的,问海滩上原来最少有多少个桃子? for(var i=2;;i++){ var tag=0; for(var j=1,res=i,get=0;j<=5;j++){ get=(res-1)*0.2; res=(res-1)*0.8; if(get%1!=0){ break; } tag+=1;   } if(tag==5){ console.log('海滩上原来最少有'+i+'个桃子'); break; } } 结果 海滩上原来最少有3121个桃子 程序40:809*??=800*??+9*??+1 其中??代表的两位数。8*??的结果为两位数,9*??的结果为3位数。求??代表的两位数,及809*??的结果 for(var i=10;i<=99;i++){ if(8*i>=10&&8*i<=99&&9*i>=100&&9*i<=999){ console.log('??代表的两位数是'+i); console.log('809*??的结果'+809*i); } } 结果 ??代表的两位数是12 809*??的结果9708

 

标签:五份,sum,50,猴子,JS,程序员,&&,var,桃子
来源: https://www.cnblogs.com/xutao1517588477/p/10625220.html