#author("2020-06-04T10:01:04+09:00","default:takataka","takataka")
#author("2020-06-04T10:01:33+09:00","default:takataka","takataka")
*グラフィックス基礎及び実習 2020年度 第8回 [#e9701092]
 
#contents
 
//&color(#ff0000){''工事中''}; 


**ex08 課題A [#kadaiA]

//&color(Red){''工事中''};

''提出期限: 0529金17:00''

+ 授業中の指示にしたがって,ImpeiStepper.java と Iyan2.java を作ってください
+ 完成したプログラムのソースファイル(&color(red){''2つとも''};)をこの科目の Moodle コース上の当該の場所へ提出してください.
-- 上記ファイルは締切後に半自動的に処理します.コンパイルエラーになる,ファイル名が違う,といったことのないように注意してください.''ファイル名の間違い(大文字小文字も)に注意''.

**ex08 課題B [#kadaiB]

//&color(Red){''工事中''};

''提出期限: 0529金18:20''

+ 授業中の指示にしたがって,CStepper.java と T52.java を作ってください
-- ''&color(red){注意};'': %%&color(gray){授業中の指示(Q3)では,CStepper の引数なしコンストラクタは「''四角形''を一辺の長さ 100 で描く...」という仕様となっていますが,これを「''三角形''を一辺の長さ 100 で描く...」にしてください.};%% ← &color(red){''この指示は無視して構いません.つまり,もとのまま四角形を描くので構いません.''}; 三角形にしてても,四角形にしてても,okとします.
+ 完成したプログラムのソースファイル(&color(red){''2つとも''};)をこの科目の Moodle コース上の当該の場所へ提出してください.
-- 上記ファイルは締切後に半自動的に処理します.コンパイルエラーになる,ファイル名が違う,といったことのないように注意してください.''ファイル名の間違い(大文字小文字も)に注意''.


**ex08 課題C [#kadaiC]

//&color(Red){''工事中''};

''提出期限: %%0528木23:59%%'' ''&color(red){0604木23:59};''

以下のAPI仕様で定められる機能をもったクラス HW2 を作ろう.以前作った HW と似ているが,一部カプセル化を考慮したものとなっている.&color(red){''HW を拡張するのではなく,独立した新しいクラスとして作ろう.''};

#hr
''★ HW2クラスのAPI仕様''

- ''コンストラクタ'' 
>
:HW2()| 名前 "ほげお",身長 170.0[cm],体重 62.0[kg]のインスタンスを生成.
:HW2(String n, double h, double w)| 名前 n,身長 h[cm],体重 w[kg]のインスタンスを生成.
<
- ''メソッド''  
>
:void print()| このインスタンスの名前,身長,体重を表示する.
:void setWeight(double w)| このインスタンスの体重を w にする.
:double getWeight()| このインスタンスの体重の値を返す.
:void pocha()| このインスタンスの体重を 1.1 倍にする.
:double calcBMI()| このインスタンスのBMIを計算して返す. &mathjax{ \textrm{BMI} = (\mbox{体重[kg]}) / (\mbox{身長[cm]}/100)^2};
:static void printHimando(double bmi)| bmi が Border1 未満,Border1 以上 Border2 未満,Border2 以上の三つの場合に分けてメッセージを出力.順に,「やせてんなぁ」,「ふつー」,「太ってる…かな?」.
<
- ''フィールド''  
>
:static double Border1| BMIの境界値のうち小さい方.初期値は 20.
:static double Border2| BMIの境界値のうち大きい方.初期値は 25.
<

#hr

&color(white,blue){check}; &color(red){''注意''};:
- API仕様のフィールドの欄には Border1, Border2 以外には変数は載っていない.ということは,これらの他に変数を宣言する必要があるなら,他のクラスに非公開としなければならない.
- HW2クラスの引数なしコンストラクタは,HW2クラスの引数ありコンストラクタを呼び出す形で定義すること.
- カプセル化をちゃんと考えるなら,体重だけでなく名前や身長についても setter/getter (setWeight/getWeight のようなメソッド)を定義するのが適切だが,簡単のためこの問題では省略した.クラス変数もカプセル化してもよいが,こちらも省略.

動作確認には,以下の内容の G07Fugayo.java を作って用いること.
&color(blue){ただし,"ふがよ"という名前の部分は,自分の学籍番号と氏名を含む文字列に置き換えること.身長体重は変えてはいけない.};


#ref(https://www-tlab.math.ryukoku.ac.jp/~takataka/course/Graphics/G07Fugayo-Q.png,nolink)

完成したプログラムのソースファイル(&color(red){''2つとも''};)をこの科目の Moodle コース上の当該の場所へ提出してください.
-- 上記ファイルは締切後に半自動的に処理します.コンパイルエラーになる,ファイル名が違う,といったことのないように注意してください.''ファイル名の間違い(大文字小文字も)に注意''.


**ex08 課題S(omake)  [#kadaiS]

//&color(#ff0000){''工事中''}; 


期限: 0605金23:59.これはおまけ課題です.やらなくても減点になりません.やったら加点かも

[[Graphics/2020/ex07#kadaiS]] につづき,p.62 の練習問題 5.16, 5.17 をやりなさい

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS