_Graphics2011/ex05
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
*グラフィックス基礎・演習 2011年度 第5回 [#e9701092]
#contents
//&color(#ff0000){工事中};
**注意 [#b90cec8d]
&color(Blue){前回同様に,TurtleクラスおよびTurtleクラスを使うプログラムとそうでないプログラムで保存するディレクトリを分けること.};
**課題A 締切: 今回の演習終了時(3点) [#kadaiA]
この課題の解答は講義時に配布した用紙に記入し,課題Bのチェックを受ける際にTAさんに提出してください(今回中に課題Bのチェックを受けられそうにない場合は課題Aの用紙のみをTAさんに提出してください).採点は高橋が後日行う予定です.
aという名前の整数配列に格納された値の「和」,「0以上100未満の数の個数」,「最小値」,「最小値を与える配列のインデックスのうち一番小さいもの」を表示するプログラムを作りなさい.
クラス名は G05Array とすること.
例えば,int[]型の変数aを
int[] a = { 11, -99, 123, 200, -99, 0, 7, 77, 100 };
と初期化すると,次のような出力が得られるようにすること(インスタンス変数 length を使おう).
#pre{{
$ java G05Array
0:11 1:-99 2:123 3:200 4:-99 5:0 6:7 7:77 8:100
和 = 320
0以上100未満の数の個数 = 4
最小値のインデックス = 1
最小値 = -99
}}
次の例などでも実行してみること(紙に書くのは↑の例の方でよい (^^) ).
#pre{{
int[] a = { 868, 260, 304, 382, 962, 576, 855, 310, 157, 376,
814, 18, 587, 686, 400, 528, 651, 431, 738, 333,
404, 760, 778, 921, 870, 998, 697, 722, 622, 459,
699, 245, 872, 66, 634, 100, 699, -999, 657, 424,
802, 977, 816, 799, 732, 21, 627, 525, 411, 980 };
}}
**課題B 締切: 今回の演習終了時(2点) [#kadaiB]
教科書p.44のリスト5.1のプログラムを次のように改造しなさい.
-クラス名を G05Kame とする
-i 番目のタートルは (2*i + 2) 角形を描くようにする
-配列のインスタンス変数 length を用いるようにする
**課題C 締切: 次回演習開始直後(2点) [#kadaiC]
教科書p.47の練習問題5.10をやりなさい(Graph51).
ただし,次のようにすること.
-addMesh()する
-最初の点までの移動時には線をひかない
-次のような場合にもエラーになってしまわないようにする
++配列 graph の長さが奇数のとき(最後の値を無視するようにしよう)
int graph[] = { 50, 300, 100, 100, 300 };
++配列 graph の長さが0のとき
int graph[] = {};
練習問題に示された例や上記の例がうまくいったら,次の例でも実行してみること.
#pre{{
int graph[] = {
200, 175, 200, 100, 140, 100, 140, 120,
160, 120, 160, 100, 100, 100, 100, 175,
125, 175, 125, 150, 175, 150, 175, 175,
275, 175, 275, 150, 325, 150, 325, 175,
350, 175, 350, 100, 290, 100, 290, 115,
310, 115, 310, 100, 250, 100, 250, 175,
250, 100, 350, 100, 350, 300, 325, 300,
325, 275, 75, 275, 75, 250, 350, 250,
350, 300
};
}}
**課題D 締切: 次回演習開始直後(2点) [#kadaiD]
課題Aのプログラムを元にして,以下のような動作をするプログラムを作りなさい.
#pre{{
$ java G05Array2 100 200 3.14
0:100.0 1:200.0 2:3.14
和 = 303.14
0以上100未満の数の個数 = 1
最小値のインデックス = 2
最小値 = 3.14
}}
ただし…
-クラス名は,G05Array2 とすること.
-入力が数でない場合のことは考えなくてよい.
-引数なしで実行してもエラーにならないようにすること.
-課題Aと同様に,数値を保存するために適切な型で a という名前の配列を作成して使用すること.
ヒント: 配列 a の大きさは args.length で決めたらよい.
文字列をint型に変換するにはIntegerというラッパークラスを使ったのだから,doubleに変換するには...(p.59とJava API仕様参照)
**課題S(おまけ) 締切: 次回演習開始直後(2点) [#kadaiS]
龍谷大学大学院理工学研究科数理情報学専攻の大学院入試問題に挑戦してみよう.
課題は,2007年9月に行なわれた2008年度入試の専門IIの問題V.
次のいずれかで問題を閲覧することができる.
+(おすすめ)[[数理情報学科のWikiのサイト>https://www.math.ryukoku.ac.jp/wiki/index.php/%E3%83%A1%E3%82%A4%E3%83%B3%E3%83%9A%E3%83%BC%E3%82%B8]]から大学院入試の過去問のページをたどり,
「大学院秋期試験(2007.9).pdf」というファイルの8ページ目.
>
数理情報学科のwikiサイトのアクセス時に求められるユーザ名とパスワードは,全学統合認証のものと同じ.
学力認定試験や定期試験の過去問,教員による授業自己点検報告書なども閲覧できる.
<
+[[理工学部/理工学研究科のウェブサイト>http://www.rikou.ryukoku.ac.jp/]] → 入試 → 過去の大学院入試問題 → 2008年度秋期の専門IIのPDFファイルの5ページ目.
実際に問題Vに取り組む際には,配列の値の設定の仕方は以下のどちらかにしましょう
-コマンドライン引数で入力
-Scannerクラスを使って入力
ちなみに,「クラスメソッドを作れ」に従いながらプログラム全体を書くには,以下をヒントにすればよい.
この場合,sortというメソッドは,自分が作っている EvenSort クラスのクラスメソッドであり(staticがついてるから),戻り値なし(voidだから)ということになる.
呼び出し時に sort(引数) と書いているが,EvenSort.sort(引数) と書いてもよい.
#pre{{
public class EvenSort{
static void sort(int[] a, int n){
配列 a をの内容をソートする
}
public static void main(String[] args){
入力
sort(引数);
出力
}
}
}}
終了行:
*グラフィックス基礎・演習 2011年度 第5回 [#e9701092]
#contents
//&color(#ff0000){工事中};
**注意 [#b90cec8d]
&color(Blue){前回同様に,TurtleクラスおよびTurtleクラスを使うプログラムとそうでないプログラムで保存するディレクトリを分けること.};
**課題A 締切: 今回の演習終了時(3点) [#kadaiA]
この課題の解答は講義時に配布した用紙に記入し,課題Bのチェックを受ける際にTAさんに提出してください(今回中に課題Bのチェックを受けられそうにない場合は課題Aの用紙のみをTAさんに提出してください).採点は高橋が後日行う予定です.
aという名前の整数配列に格納された値の「和」,「0以上100未満の数の個数」,「最小値」,「最小値を与える配列のインデックスのうち一番小さいもの」を表示するプログラムを作りなさい.
クラス名は G05Array とすること.
例えば,int[]型の変数aを
int[] a = { 11, -99, 123, 200, -99, 0, 7, 77, 100 };
と初期化すると,次のような出力が得られるようにすること(インスタンス変数 length を使おう).
#pre{{
$ java G05Array
0:11 1:-99 2:123 3:200 4:-99 5:0 6:7 7:77 8:100
和 = 320
0以上100未満の数の個数 = 4
最小値のインデックス = 1
最小値 = -99
}}
次の例などでも実行してみること(紙に書くのは↑の例の方でよい (^^) ).
#pre{{
int[] a = { 868, 260, 304, 382, 962, 576, 855, 310, 157, 376,
814, 18, 587, 686, 400, 528, 651, 431, 738, 333,
404, 760, 778, 921, 870, 998, 697, 722, 622, 459,
699, 245, 872, 66, 634, 100, 699, -999, 657, 424,
802, 977, 816, 799, 732, 21, 627, 525, 411, 980 };
}}
**課題B 締切: 今回の演習終了時(2点) [#kadaiB]
教科書p.44のリスト5.1のプログラムを次のように改造しなさい.
-クラス名を G05Kame とする
-i 番目のタートルは (2*i + 2) 角形を描くようにする
-配列のインスタンス変数 length を用いるようにする
**課題C 締切: 次回演習開始直後(2点) [#kadaiC]
教科書p.47の練習問題5.10をやりなさい(Graph51).
ただし,次のようにすること.
-addMesh()する
-最初の点までの移動時には線をひかない
-次のような場合にもエラーになってしまわないようにする
++配列 graph の長さが奇数のとき(最後の値を無視するようにしよう)
int graph[] = { 50, 300, 100, 100, 300 };
++配列 graph の長さが0のとき
int graph[] = {};
練習問題に示された例や上記の例がうまくいったら,次の例でも実行してみること.
#pre{{
int graph[] = {
200, 175, 200, 100, 140, 100, 140, 120,
160, 120, 160, 100, 100, 100, 100, 175,
125, 175, 125, 150, 175, 150, 175, 175,
275, 175, 275, 150, 325, 150, 325, 175,
350, 175, 350, 100, 290, 100, 290, 115,
310, 115, 310, 100, 250, 100, 250, 175,
250, 100, 350, 100, 350, 300, 325, 300,
325, 275, 75, 275, 75, 250, 350, 250,
350, 300
};
}}
**課題D 締切: 次回演習開始直後(2点) [#kadaiD]
課題Aのプログラムを元にして,以下のような動作をするプログラムを作りなさい.
#pre{{
$ java G05Array2 100 200 3.14
0:100.0 1:200.0 2:3.14
和 = 303.14
0以上100未満の数の個数 = 1
最小値のインデックス = 2
最小値 = 3.14
}}
ただし…
-クラス名は,G05Array2 とすること.
-入力が数でない場合のことは考えなくてよい.
-引数なしで実行してもエラーにならないようにすること.
-課題Aと同様に,数値を保存するために適切な型で a という名前の配列を作成して使用すること.
ヒント: 配列 a の大きさは args.length で決めたらよい.
文字列をint型に変換するにはIntegerというラッパークラスを使ったのだから,doubleに変換するには...(p.59とJava API仕様参照)
**課題S(おまけ) 締切: 次回演習開始直後(2点) [#kadaiS]
龍谷大学大学院理工学研究科数理情報学専攻の大学院入試問題に挑戦してみよう.
課題は,2007年9月に行なわれた2008年度入試の専門IIの問題V.
次のいずれかで問題を閲覧することができる.
+(おすすめ)[[数理情報学科のWikiのサイト>https://www.math.ryukoku.ac.jp/wiki/index.php/%E3%83%A1%E3%82%A4%E3%83%B3%E3%83%9A%E3%83%BC%E3%82%B8]]から大学院入試の過去問のページをたどり,
「大学院秋期試験(2007.9).pdf」というファイルの8ページ目.
>
数理情報学科のwikiサイトのアクセス時に求められるユーザ名とパスワードは,全学統合認証のものと同じ.
学力認定試験や定期試験の過去問,教員による授業自己点検報告書なども閲覧できる.
<
+[[理工学部/理工学研究科のウェブサイト>http://www.rikou.ryukoku.ac.jp/]] → 入試 → 過去の大学院入試問題 → 2008年度秋期の専門IIのPDFファイルの5ページ目.
実際に問題Vに取り組む際には,配列の値の設定の仕方は以下のどちらかにしましょう
-コマンドライン引数で入力
-Scannerクラスを使って入力
ちなみに,「クラスメソッドを作れ」に従いながらプログラム全体を書くには,以下をヒントにすればよい.
この場合,sortというメソッドは,自分が作っている EvenSort クラスのクラスメソッドであり(staticがついてるから),戻り値なし(voidだから)ということになる.
呼び出し時に sort(引数) と書いているが,EvenSort.sort(引数) と書いてもよい.
#pre{{
public class EvenSort{
static void sort(int[] a, int n){
配列 a をの内容をソートする
}
public static void main(String[] args){
入力
sort(引数);
出力
}
}
}}
ページ名: