リスト 11.1 台形法による定積分 行 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 プログラムの内容 // 台形法による定積分 class Daikeihou { public static void main(String args[]) { // 条件の定義 double a = 2.0; double b = 10.0; int n = 1000; // 変数の定義 double h; double dXleft, dYleft, dXright, dYright; double dDaikei; double dSekibun; // 初期値の設定 h = (double)(b - a)/n; dSekibun = 0.0; dXleft = a; // 区間 a // 区間 b // 分割数 n // // // // 台形の高さ 座標値 台形の面積 定積分の結果 // キャスト // 台形法の繰返し処理 for(int i=1; i<=n; i++) { dYleft = dXleft*dXleft*dXleft - 7.0*dXleft + 10.0; dXright = dXleft + h; dYright = dXright*dXright*dXright - 7.0*dXright + 10.0; dDaikei = (dYleft + dYright) * h / 2.0; // 面積計算 dSekibun += dDaikei; // 面積の加算 dXleft = dXright; } System.out.println("定積分:" + dSekibun); // 結果の表示 } } 1 ↓ (修正後の実行画面) 図-11.4 コマンドプロンプトの実行画面 2 ↓ (修正後の実行画面) 図-11.5 Eclipse の実行画面 3 103 ページ:図-15.3 開始 バブルソート i=1 , i=i+1 , i>n-1 入替処理 j=n-1 , j=j-1 , j<i iData(j)<iData(j-1) NO YES work = iData(j) iData(j) = iData(j-1) iData(j-1) = work 入替処理 バブルソート 終了 図-15.3 バブルソートのフローチャート 4 リスト 17.1 コンストラクタを使ったクラス Total4 行 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 プログラムの内容 class Total4 { // フィールド long lTotal; // コンストラクタ Total4() { lTotal = 0; } // メソッド getTotal public static long getTotal(int iData[]) { for (int i=0; i<iData.length; i++) { lTotal += iData[i]; } return lTotal; } } リスト 17.3 コンストラクタに引数を使ったクラス Total5 行 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 プログラムの内容 class Total5 { // フィールド long lTotal; // コンストラクタ Total5(long lSet) { lTotal = lSet; } // メソッド getTotal public static long getTotal(int iData[]) { for (int i=0; i<iData.length; i++) { lTotal += iData[i]; } return lTotal; } } 5 リスト 20.2 オーバーライドのクラス Total5 行 1 2 3 4 5 6 7 8 9 10 11 12 プログラムの内容 // バブルソート(オーバーライド) class Tool5 extends Tool4 { // データ表示:int 型 public void doDisp(int iData[]) { System.out.println("[ ソートデータ ]int 型"); for(int i=0; i<iData.length; i++) { System.out.printf(" %2d 番目:%3d\n", i+1, iData[i]); } } // メソッド終端 } // クラス終端 リスト 22.3 インターフェースを使ったクラス Square 行 1 2 3 4 5 6 7 8 9 10 11 プログラムの内容 // 四角形の面積計算 class Square implements Area { // メソッド getArea // 縦:dData[0]、横:dData[1] public double getArea(double dData[]) { double dArea = dData[0] * dData[1]; return dArea; } } // クラス終端 6 リスト 24.1 テキストデータの出力クラス Tool9 行 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 プログラムの内容 // テキストデータ出力 import java.io.*; // ファイル出力クラスのパッケージ class Tool9 { // フィールド FileWriter fw; BufferedWriter bw; String errorMessage; // エラーメッセージ // コンストラクタ Tool9(String fileName) { try { fw = new FileWriter(fileName); // インスタンス生成 bw = new BufferedWriter(fw); // インスタンス生成 // エラー処理 } catch(IOException e) { errorMessage= "ファイルを作成できません。"; } } // メソッド public String writeString(int iData[]) { String sWork; errorMessage = null; try { for(int i=0; i<iData.length; i++) { sWork = Integer.toString(iData[i]); // テキスト変換 bw.write(sWork); // テキストデータ出力 bw.newLine(); // 改行 } bw.close(); // クローズ // エラー処理 } catch(IOException e) { errorMessage = "ファイル書き込みエラー"; } return errorMessage; } } 7
© Copyright 2025 ExpyDoc