<演習1>の解答例
 
import java.util.Scanner;

class Bunsuu // 分数を扱うクラス
{
  int bunshi; // 分子
  int bunbo; // 分母

  double getVal(){ // 分数を数値で返す
    return (double)bunshi/bunbo;
  }
}

class Ensyu0901
{
  public static void main(String[] args)
  {
    int a,b;
    Bunsuu v = new Bunsuu();
    Scanner sc = new Scanner(System.in);

    System.out.print("分子-->");
    a = sc.nextInt();
    System.out.print("分母-->");
    b = sc.nextInt();

    v.bunshi = a;
    v.bunbo = b;
    System.out.println(a+"/"+b+" = "+v.getVal());
  }
}

 
 
<演習2>の解答例
 
import java.util.Scanner;

class Bunsuu // 分数を扱うクラス
{
  private int bunshi;
  private int bunbo;

  public void setBunshi( int x ){
    bunshi = x;
  }
  public void setBunbo( int y ){
    if( y==0 ){
      System.out.println("【警告】分母は0を設定できません");
    }
    bunbo = y;
  }
  public double getVal(){ // 分数を数値で返す
    return (double)bunshi/bunbo;
  }
}

class Ensyu0902
{
  public static void main(String[] args)
  {
    int a,b;
    Bunsuu v = new Bunsuu();
    Scanner sc = new Scanner(System.in);

    System.out.print("分子-->");
    a = sc.nextInt();
    System.out.print("分母-->");
    b = sc.nextInt();

    //v.bunshi = a;
    //v.bunbo = b;
    v.setBunshi(a);
    v.setBunbo(b);
    System.out.println(a+"/"+b+" = "+v.getVal());

  }
}

 
 
<演習3>の解答例
 
import java.util.Scanner;

class Bunsuu // 分数を扱うクラス
{
  private int bunshi;
  private int bunbo;

  public void setNum(){ // 分子=1,分母=10
    setBunshi(1);
    setBunbo(10);
  }
  public void setNum( int s ){ // 分子=s,分母=10
    setBunshi(s);
    setBunbo(10);
  }
  public void setNum( int s, int t ){ // 分子=s,分母=t
    setBunshi(s);
    setBunbo(t);
  }
  public void setBunshi( int x ){
    bunshi = x;
  }
  public void setBunbo( int y ){
    if( y==0 ){
      System.out.println("【警告】分母は0を設定できません");
    }
    bunbo = y;
  }
  public double getVal(){ // 分数を数値で返す
    return (double)bunshi/bunbo;
  }
}

class Ensyu0903
{
  public static void main(String[] args)
  {
    int a,b;
    Bunsuu v = new Bunsuu();
    Scanner sc = new Scanner(System.in);

    System.out.print("分子-->");
    a = sc.nextInt();
    System.out.print("分母-->");
    b = sc.nextInt();

    v.setNum(); // 指定なし
    System.out.println(" (1) "+v.getVal());
    v.setNum(a); // 分子のみ指定
    System.out.println(" (2) "+v.getVal());
    v.setNum(a,b); // 分子、分母を指定
    System.out.println(" (3) "+v.getVal());
  }
}

 
 
<演習4>の解答例
 
class Shinkansen // 新幹線を扱うクラス
{
  private int ryou_num; // 車両数(8両 or 16両)
  private double time; // 東京〜新大阪 所要時間(h)

  public void setData( int x, double y ){
    ryou_num = x;
    time = y;
  }
  public void showData(){ // データを表示する
    System.out.println(" 車両="+ryou_num+"両、所要時間="+time+"(h)");
  }
}

class Ensyu0904
{
  public static void main(String[] args)
  {
    Shinkansen nozomi = new Shinkansen();
    Shinkansen kodama = new Shinkansen();

    nozomi.setData( 16, 2.5 );
    kodama.setData( 8, 4.0 );

    System.out.print("のぞみ:");
    nozomi.showData();
    System.out.print("こだま:");
    kodama.showData();

  }
}

 
 
<演習5>の解答例
 
class Numbers // 数値を扱うクラス
{
  private int [] val; // 配列変数
  private int num; // 要素の個数

  // コンストラクタ
  public Numbers(){
    num = 10;
    val = new int [num]; // 要素数numの領域を確保
    for(int i=0;i<num;i++) val[i] = i+1; // 値を代入
  }
  public void showData(){ // データを表示する
    for(int i=0;i<num;i++){
      System.out.print(" " + val[i]);
    }
    System.out.println("");
  }
}

class Ensyu0905
{
  public static void main(String[] args)
  {
    Numbers nm = new Numbers();

    nm.showData();
  }
}