Skip to content

Yottwui0911/ObjectOrientedProgramingSkillUp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

概要

以下の問題をC#のコンソールアプリを用いて出力してみましょう

目的

以下のような想定
三角形の面積を計算するアプリケーションを作りたい。
しかし、次第に長方形や円の面積も計算したいと要求は膨れる。
それら要求、またはさらに未知なる追加要求を吸収するためにオブジェクト指向を駆使し、保守性、拡張性高いクラス設計を行う。
オブジェクト指向でやりたいことは introduction.mdのオブジェクト指向の思想を参照

課題

※まずは Preparation.mdを読んでください

クラス作成編

  1. 三角形クラス(Triangleクラス)を作って、図形の面積の数値を返すメソッドを持たせる
    -> コンストラクタで底辺と高さを受け取り、publicなプロパティに値をセットしてください。
  2. 100組の底辺と高さの組み合わせの数値列を読み込ませて、面積を計算して出力する

Linq特訓編

参考:http://d.hatena.ne.jp/chiheisen/20111031/1320068429

  1. 2のデータで、面積が1000以上の三角形が存在するかを"Linqを用いずに"判断する
    (for文を使わず、foreachを用いるようにしてください)
  2. 2のデータで、面積が1000以上の三角形が存在するかを"Linqを用いて"判断する
  3. 2のデータで、面積が1000を初めて超えるたときの三角形の面積を"Linqを用いて"出力
  4. 2のデータで、面積が1000以上の三角形の列番号を"Linqを用いて"出力
    参考:https://qiita.com/RyotaMurohoshi/items/118d4aa4d5be8c71c9ce
  5. 2のデータで、面積が1000以上の三角形の数を"Linqを用いて"出力
  6. 2のデータで、三角形の面積の平均値を"Linqを用いて"出力
  7. 2のデータで、三角形の面積を降順に並べる

疑似クラス作成編

  1. 長方形クラス(Squareクラス)を作って、図形の面積の数値を返すメソッドを持たせる
    -> コンストラクタで底辺と高さを受け取り、publicなプロパティに値をセットしてください。
  2. 100組の底辺と高さの組み合わせの数値列を読み込ませて、面積を計算して出力する
  3. 11のデータで、面積が1000以上の正方形が存在するかを"Linqを用いて"判断する
  4. 円クラス(Circleクラス)を作って、図形の面積の数値を返すメソッドを持たせる
    -> コンストラクタで半径を受け取り、publicなプロパティに値をセットしてください。
  5. 100組の半径の数値列を読み込ませて、面積を計算して出力する
  6. 11のデータで、面積が1000以上の円が存在するかを"Linqを用いて"判断する

インターフェース作成編

  1. IShapeインターフェースを作成し、面積を計算するメソッドを用意し、Triangleクラス、Squareクラス、Circleクラスに継承させる

ポリモーフィズム特訓編

  1. 三角形クラス、長方形クラス、円クラスの面積の合計をまとめて計算してくれるメソッドを作成する
    -> 上記計300組のデータを用いて面積計算
    メソッドの引数は IEnumerable<double> ではなく、 IEnumerable<IShape> を必ず用いるようにする

About

オブジェクト指向の練習用問題

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors