1.コンピュータの仕組みとプログラミング言語 1 |
1.1 コンピュータの中では 1 |
1.2 プログラムが実行されるまで 3 |
2.変数の型と宣言 7 |
2.1 変数,キーワード,基本型 7 |
2.2 浮動小数点数の表現 12 |
2.3 変数の宣言と代入 15 |
2.4 数値リテラルの表記法 17 |
2.5 式の値と型唾 19 |
2.6 型が異なる式の代入 19 |
2.7 演算子の演算規則と優先順位 21 |
2.7.1 インクリメント・ディクリメント演算子 21 |
2.7.2 代入演算子 23 |
2.7.3 多重代入演算子の動作 24 |
2.7.4 文字型(Char型) 24 |
2.7.5 文字列リテラル 26 |
2.7.6 文字列結合演算子 26 |
演習問題2 27 |
3.条件分岐と繰り返し 31 |
3.1 論理演算子と関係演算子理 31 |
3.2 条件分岐(1)-if-else文の使い方 32 |
3.3 条件分岐(2)-switch-case文 35 |
3.4 繰り返し(1)-for文 36 |
3.5 繰り返し(2)-while文,do-while文 37 |
3.6 breakとcontinue 39 |
演習問題3 41 |
4.クラスとインスタンス 47 |
4.1 オブジェクト指向の考え方 47 |
4.2 クラスの定義 47 |
4.3 可視性(visibility)とアクセス修飾子 50 |
4.4 インスタンスの生成 52 |
4.5 フィールドへのアクセス方法 53 |
4.6 メソッドの呼び出し方 54 |
4.7 コンストラクタ 56 |
4.8 メソッドのオーバーロード 57 |
演習問題4 60 |
5.配列 65 |
5.1 配列の宣言 66 |
5.2 配列要素と配列変数 67 |
5.3 配列のサイズを知る 68 |
5.4 クラスの配列 69 |
5.5 配列の応用-べき級数と多項式の計算法 69 |
5.6 配列の応用-並べ替え(ソーティング) 73 |
5.6.1 選択ソート 73 |
5.6.2 マージソート 75 |
5.6.3 クイックソート 77 |
5.7 多次元配列 82 |
演習問題5 86 |
6.クラス変数とインスタンス変数 93 |
6.1 クラス変数 93 |
6.2 クラスメソッド 95 |
6.3 ローカル変数 96 |
6.4 final修飾子 98 |
演習問題6 99 |
7.継承-オブジェクト指向の3大原則 103 |
7.1 オブジェクト同士の関係性-継承関係 103 |
7.2 集約関係 105 |
7.3 継承の実装 106 |
7.4 継承とコンストラクタ 107 |
7.5 継承の禁止(f1nalキーワード) 110 |
7.6 メソッドのオーバーライド 110 |
7.7 抽象クラスと抽象メソッド 113 |
7.8 親・子クラスにおける参照型変数の互換性 114 |
7.9 Objectクラス 115 |
7.10 オブジェクトの比較とコピー 116 |
7.11 Stringクラス 117 |
7.11.1 Stringクラスの演算子 117 |
7.11.2 Stringクラスの配列 118 |
演習問題7 120 |
8.数値計算のアルゴリズム 125 |
8.1 非線形方程式の解法(1)-はさみうち法 125 |
8.2 非線形方程式の解法(2)-ニュートン法 130 |
8.3 数値微分と微分方程式の差分化 132 |
8.4 数値積分法 135 |
8.5 微分方程式の解法-オイラー法 137 |
8.6 行列クラスの設計と実装 140 |
8.6.1 行列の積の計算 140 |
8.6.2 実数を行列要素とする行列クラスの実装 142 |
8.7 ガウスの消去法による連立1次方程式の解法 146 |
8.7.1 ガウスの消去法の手順 147 |
8.7.2 ガウスの消去法アルゴリズム 151 |
8.7.3 ピボット選択を考慮したガウスの消去法アルゴリズム 152 |
8.7.4 ガウスの消去法のRMatrixクラスへの実装 154 |
演習問題8 159 |
参考となる情報源 163 |
演習問題の解答例 165 |
キーワードー覧表 188 |
索引 193 |