for i=1;i*i<n;i=i+1
{
if....
elseif ....
}
后面自己发挥,只能给你点提示

解决方案 »

  1.   

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <!-- saved from url=(0011)about:blank -->
    <HTML><HEAD>
    <META http-equiv=Content-Type content="text/html; charset=unicode">
    <META content="MSHTML 6.00.2800.1528" name=GENERATOR>
    <script>
    <!--
    var a=new Array()
    var j=prompt("&Ecirc;&auml;&Egrave;&euml;&Ograve;&raquo;&cedil;&ouml;&Ecirc;&yacute;×&Ouml;",1000)
    j=parseInt(j)
    if(isNaN(j))
    {
    j=1000
    }
    for(var i=parseInt(j/10);i<j;i++)
    {
    var temp=i*i
    var tempstr=temp.toString()
    var len=tempstr.length-1
    var a=tempstr.substr(0,Math.round(parseFloat(len/2)))
    var b=tempstr.substr(Math.round(parseFloat(len/2)),len)
    var sum=parseInt(a)+parseInt(b)
    var sqrts=Math.sqrt(sum)
    if(sqrts==Math.round(sqrts))
    {
    document.write(i)
    document.write("<br>")
    }
    }
    -->
    </script>
    </HEAD>
    <BODY>
    <form action="http://www.baidu.com">
    </form>
    </BODY>
    </HTML>
      

  2.   

    我做的前补0的保存为htm看结果吧
      

  3.   

    要达到这个效果
    也就是说 要显示出来才可以的http://www.hehuisoft.com/wt.gif
      

  4.   

    <script>
    // 程序功能:
    // 求一定范围内符合平方之后分两段分别相加再开平方仍为整数这一条件的数
    // 输入:范围上限;
    // 输出:符合条件的数及相应的平方根。
    // 示例1:968的平方为937024, 分为两段937和024,两段相加,和为961,再开平方,根为31,仍是整数;
    // 示例2:956的平方为913936, 分为两段913和936,两段相加,和为1849,再开平方,根为43,仍是整数;
    // 其他: 956到958之间的数都符合这一条件。而且最后的平方根也是依次差1, 从43到31。
    // 再如:88的平方为7744, 分为两段77和44,两段相加,和为121,再开平方,根为11,仍是整数;
    // 其他:86到90之间的数也都符合这一条件。num=0;// num 记录符合条件的数的个数
    ik=prompt("n:",1000);// 输入搜索范围的上限(以1000为例)n=ik;
    cmax=100;   //表格列数
    rmax=parseInt(ik/cmax);  //表格行数pxsize=5;   //单元格宽高pxd=document;
    d.w=document.write;
    d.w('<table border=0 cellpadding=0 cellspacing=0 width='+pxsize*cmax+' height='+pxsize*rmax+'>');
    d.w('<tr>');
    for(i=ik/10,g=0;i<=ik-1;i++,g++)// 循环,从100开始,到999结束,每次加1
    {  
      sq=i*i;//求平方
      sum=(sq-sq%ik)/ik+sq%ik;// 分段求和 %为取余数 
      bsq=Math.sqrt(sum);// 再求平方根
      nrest=bsq%1;
      if(nrest==0)// 如果是整数,用的是除1的余数非常小这样一个条件
      {
      num++;// 个数加1
      bsqrt=1;
      }
      else {bsqrt=0;}
      
      scolor=(bsqrt==1)?"yellow":"black";
      d.w('<td width='+ pxsize+' height='+ pxsize+' bgcolor='+scolor+'></td>')
      if((g%cmax ==0)&& (g>0) ) d.w('</tr><tr>')
    }   //end ford.w('</tr>')
    d.w('</table>');d.w("<p>"+"total:"+num+"</p>");// 输出共有多少个符合条件的数</script>
      

  5.   

    <script>
    // 程序功能:
    // 求一定范围内符合平方之后分两段分别相加再开平方仍为整数这一条件的数
    // 输入:范围上限;
    // 输出:符合条件的数及相应的平方根。
    // 示例1:968的平方为937024, 分为两段937和024,两段相加,和为961,再开平方,根为31,仍是整数;
    // 示例2:956的平方为913936, 分为两段913和936,两段相加,和为1849,再开平方,根为43,仍是整数;
    // 其他: 956到958之间的数都符合这一条件。而且最后的平方根也是依次差1, 从43到31。
    // 再如:88的平方为7744, 分为两段77和44,两段相加,和为121,再开平方,根为11,仍是整数;
    // 其他:86到90之间的数也都符合这一条件。num=0;// num 记录符合条件的数的个数
    ik=prompt("n:",1000);// 输入搜索范围的上限(以1000为例)rmax=1000;
    cmax=1000;
    n=ik;pxsize=1;
    d=document;
    d.w=document.write;
    d.w('<table border=0 cellpadding=0 cellspacing=0 width='+pxsize*cmax+' height='+pxsize*rmax/2+'>');
    d.write('<tr>');
    for(i=Math.ceil(Math.sqrt(1000));i<=ik-1;i++)// 循环,从100开始,到999结束,每次加1
    {
    sq=i*i;//求平方
    sum=(sq-sq%ik)/ik+sq%ik;// 分段求和 %为取余数 
    bsq=Math.sqrt(sum);// 再求平方根
    nrest=bsq%1;
      if(nrest==0)// 如果是整数,用的是除1的余数非常小这样一个条件
      {
      num++;// 个数加1
      bsqrt=1;
      }
      else 
      {
        bsqrt=0;
    }
    if (i%Math.floor(Math.sqrt(ik))==0) d.write('</tr></tr>')
    scolor=(bsqrt==1)?"yellow":"black";
    d.write('<td bgcolor='+scolor+'></td>')
    }d.write('</tr>')
    d.write('</table>');document.write("<p>"+"total:"+num+"</p>");// 输出共有多少个符合条件的数</script>