<script language="javascript">
function test()
{
var a=document.form1.textfielda.value;
var b=document.form1.textfieldb.value;
for(i=a;i>1;i--)
{
if((a%i)||(b%i))
{
document.form1.textfieldc.value=i;
return;
}
}
}
</script></head><body>
<form name="form1" method="post" action="">
  <p>&nbsp;</p>
  <p>输入第一个数:
    <input name="textfielda" type="text" value="0">
  </p>
  <p>输入第二个数:
    <input name="textfieldb" type="text" value="0">
  </p>
  <p>
    <input name="Submit" type="submit" onClick="test()" value="提交">
</p>
  <p>&nbsp;  </p>
  <p>最大公约数是 
    <input name="textfieldc" type="text" value="0"> 
  </p>我的程序是这样写的,但实现不了

解决方案 »

  1.   

    <script language="javascript">
    function test()
    {
    var a=Number(document.form1.textfielda.value);
    var b=Number(document.form1.textfieldb.value);
    if(a>b)min = b;
    else min = a;
    for(i=min;i>=1;i--)
    {
    if(!(a%i) && !(b%i))
    {
    document.form1.textfieldc.value=i;
    return;
    }
    }
    }
    </script></head><body>
    <form name="form1" method="post" action="">
      <p>&nbsp;</p>
      <p>输入第一个数:
        <input name="textfielda" type="text" value="0">
      </p>
      <p>输入第二个数:
        <input name="textfieldb" type="text" value="0">
      </p>
      <p>
        <input name="Submit" type="button" onClick="test()" value="提交">
    </p>
      <p>&nbsp;  </p>
      <p>最大公约数是 
        <input name="textfieldc" type="text" value="0"> 
      </p>