别在IF语句直接返回RETURN的值就可以了
可是为什么总是返回1呢,呵呵
再研究………………
[此贴子已经被作者于2006-4-28 16:58:08编辑过]
我的眼里常饱含泪水,因为我对这片土地爱的深沉!QQ:38461725
哈哈,成功了!!!
import java.io.*;
class GreatestCommonDivisor
{
public int getcd(int a,int b)
{
int i,j;
int m=1;
j=(a>b)?b:a;
for(i=j;i>0 ;i--)
if(a%i==0&&b%i==0)
{
break;
}
return i;// 缺少返回语句。
}
public static void main(String args[])
{
try
{
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
String str=new String();
String str1=new String();
System.out.println("Enter two numbers:");
str=br.readLine();
str1=br.readLine();
int m=Integer.parseInt(str);
int n=Integer.parseInt(str1);
GreatestCommonDivisor cd=new GreatestCommonDivisor();
int e=cd.getcd(m,n);
System.out.println("The Greatest Common Divisor is: "+e);
}
catch(IOException e)
{
e.printStackTrace();
}
}
}
最终修订版,呵呵
import java.io.*;
class GreatestCommonDivisor
{
public int getcd(int a,int b)
{
int i,j;
j=(a>b)?b:a;
for(i=j;i>0 ;i--)
if(a%i==0&&b%i==0)
{
break;
}
return i;// 缺少返回语句。
}
public static void main(String args[])
{
try
{
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
String str=new String();
String str1=new String();
System.out.println("Enter two numbers:");
str=br.readLine();
str1=br.readLine();
int m=Integer.parseInt(str);
int n=Integer.parseInt(str1);
GreatestCommonDivisor cd=new GreatestCommonDivisor();
int e=cd.getcd(m,n);
System.out.println("The Greatest Common Divisor is: "+e);
}
catch(IOException e)
{
e.printStackTrace();
}
}
}