静岡理工科大学 菅沼ホーム 演習解答例 付録 索引

Java と C/C++

Java と C/C++ の一括ダウンロード

  Java,および,C/C++ についての解説です.「C/C++ と Java」においては,C/C++ をベースに解説を行ったため,Java に関する説明がおろそかになっていたかと思います.そこで,ここでは,Java をベースに解説を行っていき,C/C++ に関しては,その違いを述べるに留めていきたいと思います.基本的には,初心者を対象として記述したつもりです.Java を初めて学ぶ人は,このホームページにある「 Java 自学・自習」を利用したほうが良いかもしれません.Java について学習し,ゲームや Web ページを作成したいと考えている人は,ゲームや Webページの作成を通して Java について学ぶのも一つの方法かと思います(「ゲームプログラミング」,「Java アプレットを使ってみよう!」参照).また,C/C++ に関しては,「C/C++ と Java」,「 C/C++ 自学・自習」などもご利用下さい..

  また,特定の言葉,Java のクラスやメソッド,C/C++ の標準関数,コマンド等の意味.機能について調べたいときは索引や付録を利用するとより便利だと思います.なお,索引や付録,本文中のプログラム例・演習問題等のかなりの部分は,「C/C++ と Java」と共通のものを使用しています.

付録 : Java のクラスとメソッド,C/C++ の標準関数,標準ライブラリ,STL,コマンド等(本文及び付録のキーワードによる検索機能もある)
索引 : 本文及び付録の索引
Java 概説C/C++ 概説) : Java( C/C++ )に対する概説.既に他の言語に精通している方はここを読むだけで十分かもしれません.

目次

注: (Java) と表示のある箇所は,Java 独自部分

はじめに

第T部 コンピュータと言語

第1章 コンピュータ入門

  1. 1.1 コンピュータの構造と動作
  2. 1.2 情報の表現
    1. 1.2.1 2 進数
    2. 1.2.2 10 進数から 2 進数への変換
    3. 1.2.3 数値の表現
      1. 1.2.3.1 整数の表現
      2. 1.2.3.2 浮動小数の表現
    4. 1.2.4 文字の表現
  3. 演習問題1

第2章 プログラム作成手順

  1. 2.1 アルゴリズム
  2. 2.2 コーディング
  3. 2.3 コンパイルと実行
  4. 演習問題2

第U部 基本的な文法

第3章 簡単なプログラム

  1. 3.1 プログラムの書き方
    1. 3.1.1 基本原則
    2. 3.1.2 わかりやすいプログラム
  2. 3.2 データ型
    1. 3.2.1 定数
    2. 3.2.2 変数
    3. 3.2.3 列挙型変数
  3. 3.3 算術演算子と代入演算子
    1. 3.3.1 算術演算子
    2. 3.3.2 代入演算子
    3. 3.3.3 インクリメント,デクリメント演算子
    4. 3.3.4 型変換( cast 演算子)
  4. 3.4 簡単なプログラム
    1. (プログラム例 3.1 ) 2 つのデータの和と差
    2. (プログラム例 3.2 ) 2 つのデータの和と差( Console クラスの利用)
    3. (プログラム例 3.3 ) 2 つのデータの和と差( 1 行に 2 つ以上のデータを入力)
  5. 3.5 その他
    1. 3.5.1 キーワード
    2. 3.5.2 アスキーコード
    3. 3.5.3 エスケープシーケンス
  6. 演習問題3

第4章 演算子

  1. 4.1 関係演算子,等値演算子,及び,論理演算子
    1. (プログラム例 4.1 ) 関係式と論理式
  2. 4.2 ビット演算子とシフト演算子
    1. (プログラム例 4.2 ) ビット演算とシフト演算
  3. 4.3 その他の演算子
  4. 演習問題4

第5章 制御文

  1. 5.1 分岐
    1. 5.1.1 if 文
      1. (プログラム例 5.1 ) 円周と面積の計算
      2. (プログラム例 5.2 ) 坪・m2 間の単位変換
      3. (プログラム例 5.3 ) 3 つのデータの最大値と最小値
      4. (プログラム例 5.4 ) データの比較
    2. 5.1.2 switch 文
      1. (プログラム例 5.5 ) データの比較( switch 文)
  2. 5.2 繰り返し
    1. 5.2.1 繰り返し文
      1. (プログラム例 5.6 ) 平均値の計算
      2. (プログラム例 5.7 ) ファイル入出力
      3. (プログラム例 5.8 ) for 文のネスト
      4. (プログラム例 5.9 ) 入力の繰り返し( do-while )
      5. (プログラム例 5.10 ) 最大値(初期設定)
    2. 5.2.2 繰り返しの中断
      1. 5.2.2.1 break 文
        1. (プログラム例 5.11 ) 繰り返しの中断( break )
      2. 5.2.2.2 continue 文
        1. (プログラム例 5.12 ) 繰り返しの中断( continue )
  3. 5.3 変数の有効範囲
    1. (プログラム例 5.13 ) 変数の有効範囲
  4. 演習問題5

第6章 配列

  1. 6.1 new 演算子と配列
    1. 6.1.1 new 演算子
      1. (プログラム例 6.1 ) new 演算子( C++ の場合)
      2. (プログラム例 6.2 ) new 演算子( Java の場合)
    2. 6.1.2 1 次元配列
      1. (プログラム例 6.3 ) 平均値と平均値以下の人の出力
      2. (プログラム例 6.4 ) 平方根の計算とファイルへの出力
      3. (プログラム例 6.5 ) 大文字から小文字への変換
    3. 6.1.3 多次元配列
      1. (プログラム例 6.6 ) 多次元配列
  2. 6.2 配列とポインタ
    1. (プログラム例 6.7 ) 1 次元配列,初期設定,及び,ポインタ
    2. (プログラム例 6.8 ) 多次元配列,初期設定,及び,ポインタ
  3. 演習問題6

第V部 クラスとメソッド

第7章 クラスとメソッド

  1. 7.1 メソッド
    1. (プログラム例 7.1 ) 階乗の計算
    2. (プログラム例 7.2 ) 階乗の計算(関数の利用)
    3. (プログラム例 7.3 ) 階乗の計算(再帰呼び出し)
    4. (プログラム例 7.4 ) nrの計算
  2. 7.2 クラス
    1. (プログラム例 7.5 ) クラス宣言とメンバーの参照( C/C++ との違い)
    2. (プログラム例 7.6 ) private 変数
    3. (プログラム例 7.7 ) 静的変数・メソッドとインスタンス変数・メソッド
  3. 7.3 コンストラクタ
    1. (プログラム例 7.8 ) コンストラクタ
  4. 7.4 メソッドとのデータの受け渡し
    1. (プログラム例 7.9 ) 様々なデータ型の引き渡し
    2. (プログラム例 7.10 ) 複数結果の受け取り
    3. (プログラム例 7.11 ) 関数名の引き渡し
  5. 7.5 main メソッド
    1. (プログラム例 7.12 ) main メソッドの引数(数字の和)
  6. 7.6 パッケージ(Java)
    1. (プログラム例 7.12 ) パッケージ
  7. 7.7 いくつかの例
    1. (プログラム例 7.14 ) プラントモデル
    2. (プログラム例 7.15 ) ベクトルの内積と大きさ
    3. (プログラム例 7.16 ) リスト構造
    4. (プログラム例 7.17 ) ソート(並べ替え)
    5. (プログラム例 7.18 ) カレンダー
    6. (プログラム例 7.19 ) 基本アルゴリズム(その1)
    7. (プログラム例 7.20 ) 基本アルゴリズム(その2)
  8. 演習問題7

第8章 継承

  1. 8.1 継承
    1. (プログラム例 8.1 ) 継承の基本
    2. (プログラム例 8.2 ) フレームの表現
  2. 8.2 抽象クラス
    1. (プログラム例 8.3 ) 抽象クラス
  3. 8.3 インタフェース(Java)
    1. (プログラム例 8.4 ) インタフェース
  4. 演習問題8

第9章 その他

  1. 9.1 例外処理
    1. (プログラム例 9.1 ) 例外処理
  2. 9.2 マルチスレッド(Java)
    1. (プログラム例 9.2 ) マルチスレッド

第10章 クラスライブラリ

  1. 10.1 入出力クラス
    1. 10.1.1 標準入出力
      1. (プログラム例 10.1 ) 標準入出力
    2. 10.1.2 書式付き入出力
      1. (プログラム例 10.2 ) 書式付き出力
    3. 10.1.3 ファイル入出力
      1. (プログラム例 10.3 ) ファイル入出力
  2. 10.2 java.util パッケージ 内のクラス
  3. 10.3 Math クラス
  4. 演習問題10

第11章 プログラム例:数値計算とその周辺

  1. 11.1 はじめに
  2. 11.2 数値計算
    1. (プログラム例 11.1 ) 連立線形方程式,逆行列(ガウス・ジョルダン)
    2. (プログラム例 11.2 ) 非線形方程式(二分法)
    3. (プログラム例 11.3 ) 非線形方程式(セカント法)
    4. (プログラム例 11.4 ) 非線形方程式(ニュートン法)
    5. (プログラム例 11.5 ) 代数方程式(ベアストウ)
    6. (プログラム例 11.6 ) 行列の固有値(フレーム法+ベアストウ法)
    7. (プログラム例 11.7 ) 実対称行列の固有値・固有ベクトル(ヤコビ法)
    8. (プログラム例 11.8 ) 最大固有値と固有ベクトル(べき乗法)
    9. (プログラム例 11.9 ) 数値積分(台形則)
    10. (プログラム例 11.10 ) 数値積分(シンプソン則)
    11. (プログラム例 11.11 ) 微分方程式(ルンゲ・クッタ)
    12. (プログラム例 11.12 ) 補間法(ラグランジュ)
    13. (プログラム例 11.13 ) 補間法(スプライン)
    14. (プログラム例 11.14 ) 補間法(ベジエ曲線)
  3. 11.3 最適化
    1. (プログラム例 11.15 ) 最適化(線形計画法)
    2. (プログラム例 11.16 ) 最適化(黄金分割法)
    3. (プログラム例 11.17 ) 最適化(多項式近似法)
    4. (プログラム例 11.18 ) 最適化(最急降下法)
    5. (プログラム例 11.19 ) 最適化(共役勾配法)
    6. (プログラム例 11.20 ) 最適化( Newton 法)
    7. (プログラム例 11.21 ) 最適化(準 Newton 法)
    8. (プログラム例 11.22 ) 最適化(シンプレックス法)
    9. (プログラム例 11.23 ) 最適化(動的計画法)
    10. (プログラム例 11.24 ) 巡回セールスマン問題(分割法)
    11. (プログラム例 11.25 ) 巡回セールスマン問題(逐次改善法)
    12. (プログラム例 11.26 ) 遺伝的アルゴリズム( TSP,関数の最大値への応用)
  4. 11.4 確率と統計
    1. (プログラム例 11.27 ) ガンマ関数
    2. (プログラム例 11.28 ) 二項分布
    3. (プログラム例 11.29 ) ポアソン分布
    4. (プログラム例 11.30 ) 一様分布
    5. (プログラム例 11.31 ) 指数分布
    6. (プログラム例 11.32 ) 正規分布
    7. (プログラム例 11.33 ) χ2 分布
    8. (プログラム例 11.34 ) t 分布
    9. (プログラム例 11.35 ) F 分布
    10. (プログラム例 11.36 ) Fisher の直接確率
  5. 11.5 モンテカルロ法
    1. (プログラム例 11.37 ) 乱数の発生
    2. (プログラム例 11.38 ) 待ち行列(簡単な例)
    3. (プログラム例 11.39 ) 待ち行列(複雑な例)
  6. 11.6 多変量解析
    1. (プログラム例 11.40 ) 最小二乗法
    2. (プログラム例 11.41 ) 重回帰分析
    3. (プログラム例 11.42 ) 正準相関分析
    4. (プログラム例 11.43 ) 主成分分析
    5. (プログラム例 11.44 ) 因子分析
    6. (プログラム例 11.45 ) クラスター分析
    7. (プログラム例 11.46 ) 分散分析
  7. 11.7 ニューラルネットワーク
    1. (プログラム例 11.47-0 ) Hopfield ネットワーク
    2. (プログラム例 11.47 ) パーセプトロン学習
    3. (プログラム例 11.48 ) Winner-Take-All
    4. (プログラム例 11.49 ) 競合学習
    5. (プログラム例 11.50 ) バックプロパゲーション
  8. 11.8 その他
    1. (プログラム例 11.51 ) ファジイ推論
    2. (プログラム例 11.52 ) 伝達関数(ゲインと位相の計算)

第W部 Network と Windows プログラミング

第12章 Network プログラミング
  1. 19.1 ソケットの利用
    1. (プログラム例 12.1 ) HTTP ポート
    2. (プログラム例 12.2 ) ファイルの転送
    3. (プログラム例 12.3 ) チャットルーム

第13章 Windows プログラミング(Java)
  1. 13.1 Window とアプレット
    1. 13.1.1 アプリケーション( Window の生成・消滅とイベント処理)
      1. (プログラム例 13.1 ) Window の生成
      2. (プログラム例 13.2 ) Window の消滅とイベント処理
    2. 13.1.2 JAR ファイル
    3. 13.1.3 アプレット
      1. (プログラム例 13.3 ) アプレット
  2. 13.2 グラフィックスと AWT,Swing
    1. 13.2.1 グラフィックス
      1. (プログラム例 13.4 ) 2 つの整数の和
    2. 13.2.2 Java AWT,Swing
      1. (プログラム例 13.5 ) 2 つの整数の和
    3. 13.2.3 ダブルバッファリング
      1. (プログラム例 13.6 ) ダブルバッファリング
  3. 13.3 アニメーション
    1. 13.3.1 アニメーションの開始と停止
      1. (プログラム例 13.7 ) アニメーションの開始と停止
    2. 13.3.2 アニメーション作成方法
      1. (プログラム例 13.8 ) ボールの運動(描画)
      2. (プログラム例 13.9 ) ボールの運動(外部の 1 画像)
      3. (プログラム例 13.10 ) ランニング(外部の複数画像)
      4. (プログラム例 13.11 ) 花火(ピクセル値の操作)
  4. 13.4 ネットワーク
    1. (プログラム例 13.12 ) URL へリンク
    2. (プログラム例 13.13 ) URL データの読み込み
    3. (プログラム例 13.14 ) データの転送とサーバへの保存
    4. (プログラム例 13.15 ) 演習問題への解答
  5. 13.5 様々な例題
    1. 13.5.1 パズル & ゲーム
      1. (プログラム例 13.16 ) 8 / 15 パズル
      2. (プログラム例 13.17 ) 巡回セールスマン問題( TSP )
      3. (プログラム例 13.18 ) シューティング風ゲームと作成手順
      4. (プログラム例 13.19 ) ぷよぷよ風ゲームと作成手順
    2. 13.5.2 グラフの表示
      1. (プログラム例 13.20 ) グラフの表示
      2. (プログラム例 13.21 ) データベースとグラフ
    3. 13.5.3 遺伝的アルゴリズム
      1. (プログラム例 13.22 ) GAのステップ実行
      2. (プログラム例 13.23 ) 関数の最大値
    4. 13.5.4 お絵かき
      1. (プログラム例 13.24 ) マウスによる描画
    5. 13.5.5 その他
      1. (プログラム例 13.25 ) Web ページ
      2. (プログラム例 13.26 ) 2次方程式の根
      3. (プログラム例 13.27 ) 剛体振り子の運動
      4. (プログラム例 13.28 ) マニピュレータと LED の点灯制御

静岡理工科大学 菅沼ホーム 演習解答例 付録 索引