package Test4;
import java.util.Scanner;
class A{
int a;
int b;
int a1;
int b1;
int getGCD() {
Scanner s=new Scanner(System.in);
System.out.println("請輸入正整數a的值");
a=s.nextInt();
System.out.println("請輸入正整數b的值");
b=s.nextInt();
s.close();
int temp;
if(a<b) {
temp=a;
a=b;
b=temp;
}
a1=a;
b1=b;
while(b!=0) {
temp=a%b;
a=b;
b=temp;
}
System.out.println(a1+"和"+b1+"的最大公約數是"+a);
return a;
}
}
class B{
A x=new A();
void getLCM() {
System.out.println(x.a1+"和"+x.b1+"的最小公倍數是"+(x.a1*x.b1)/x.getGCD());
}
}
public class Test4_4 {
public static void main(String[] args) {
A a=new A();
a.getGCD();
B b=new B();
b.getLCM();
}
}
uj5u.com熱心網友回復:
把 s.close();注釋掉 你執行完一次就關閉了uj5u.com熱心網友回復:
你代碼中Scanner進行了關閉,所以之后呼叫的時候會報錯,將s.close();注釋掉即可;你在類B中呼叫了類A的成員變數a1和b1,由于你在使用該變數之前沒有對其賦值,所以這兩個值在類B中是默認值0,注意成員變數和區域變數的作用范圍。
uj5u.com熱心網友回復:
講的很詳細了

uj5u.com熱心網友回復:
好滴好滴(??ω?)?
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/108856.html
標籤:Eclipse
