<html>
<head>
<title>求1000以内,连续数和1000</title>
</head>
<body>
<per><script language="Javascript">
var i,n,sum,count=0;
for(i=1;1<=1000;i++){
for(n=i,sum=0;n<=1000&&sum<1000;n++)
sum+=n;
if(sum==1000){
count++;
document.write("第"+count+"串:");
for(j=i;j<=n;j++){
document.write(j);
if(j<n) document.write(",");
else document.write("\n");
}
}
}
</script></pre>
</body>
</html>
输出的结果:
第1串:28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53 第2串:55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71 第3串:198,199,200,201,202,203 第4串:1000,1001
怎么改可以让输出结果是:
第1串:28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52
第2串:55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70
第3串:198,199,200,201,202
第4串:1000
好没有意义的程序!实现过程:<script>var tmp1 = new Array();var tmp2 = new Array();var tmp3 = new Array();var tmp4 = new Array();for(var i=1;i<=1000;i++){
//第1串:28--52 第2串:55--70 第3串:198--202 第4串:1000
if(i>27&&i<=52){tmp1.push(i)} if(i>54&&i<=70){tmp2.push(i)} if(i>197&&i<=202){tmp3.push(i)} if(i==1000){tmp4.push(i)}}alert("第一串:"+tmp1.join(",")+"\n"+ "第二串:"+tmp2.join(",")+"\n"+ "第三串:"+tmp3.join(",")+"\n"+ "第四串:"+tmp2.join(","));</script>
document.write("<br>第"+count+"串:");
直接在 第"+count+"串: 字符前加上 <br>标签。
js低手飘过。。没看懂程序,不过效果很容易弄出来。。。代码如下
<html>
<head>
<title>求1000以内,连续数和1000</title>
</head>
<body>
<per><script language="Javascript">
var i,n,sum,count=0;
for(i=1;i<=1000;i++)
{
for(n=i,sum=0;n<=1000&&sum<1000;n++)
sum+=n;
if(sum==1000)
{
count++;
document.write("第"+count+"串:");
for(j=i;j<=n-1;j++)
{
document.write(j);
if(j<n-1)
document.write(",");
else
document.write("\n");
}
document.write("<br>");
}
}
</script></pre>
</body>
</html>