第一周
這周學習類和對象,編程題目是:
設計一個表示分數的類Fraction。這個類用兩個int類型的變量分別表示分子和分母。
相對來說比較簡單,題目的要求已經把要構造的類的成員變量,成員函數包括構造函數已經描述的很詳細了,我們作為學習者根據它很具體的要求來完成這周的測試是不難,題目的主要用意是讓大家對構造類,使用類有一個初步的認識。
下面是Fraction類的代碼:
public class Fraction { private int den; private int ele;
Fraction(int ele,int den){
this.den=den;
this.ele=ele;
}
public double toDouble(){
if(den!=0){
return ele/((double)den);
}
else
return 0.0;
}
public Fraction plus(Fraction r){
Fraction newFra=new Fraction(1,1);
newFra.den=this.den*r.den;
newFra.ele=this.ele*r.den+this.den*r.ele;
return newFra;
}
public Fraction multiply(Fraction r){
Fraction newFra=new Fraction(1,1);
newFra.den=this.den*r.den;
newFra.ele=this.ele*r.ele;
return newFra;
}
public void print(){
int smaller;
if(den<ele){
smaller=den ;
}
else{
smaller=ele;
}
if(ele==0){
System.out.println(0);
}
else{
if(den==ele){
System.out.println(1);
}
else{
for(int i=1;i<=smaller;i++){
if((den%i==0)&&(ele%i==0)){
den/=i;
ele/=i;
}
}
System.out.println(ele+"/"+den);
}
}
}