1998年「ソフトウェア論T(C クラス)」片山敏之
Last updated :
- 課題については次の3つの事項を含めて印刷したもの提出すること。
- @プロジェクトのメインプログラム(プロジェクトファイル***.dpr)
- Aプロジェクトに含まれる各ユニットのソースプログラム (***.pas)
- B実行中!のフォームをペイント画面やWord文書などに取り込んで印刷したもの
- 上の印刷物には、課題番号、学籍番号、氏名、提出日、を記入しておく
- 締切日など
- 締切日は1次締切日で、その日の16時まで受理します。その後も受理しますが減点します.
- 提出先: 研究室(806)の指定のフォルダ
- 課題7まで掲示してあります。
《課題1》p01- 締め切り: 5月30日(土)
2つの整数を0〜9が表示されたボタンをクリックして入力して、その和と差を計算できる電卓を作成しなさい。
ただし、和と差の計算は+と−が表示されたボタンをクリックして指定する方式を実現しなさい。
ビットボタンで実行の終了を行い、ユーザへの適切なガイドを表示するなど、電卓の使用法について自明なようにフォームを設計しなさい。
- プロジェクト名: p01dentaku
- プロジェクトに合ったアイコンを独自にデザインし登録する。
- ユニット名: p01dentakuUn
- ヒント:テキストの第1章「Numsetプロジェクト」と講義資料のSample 1-5「Counterプロジェクト」に倣い、双方から必要な技法を選び組合わせる。
計算スタートの仕掛けはどれが良いか、どれをデフォルトボタンにするか、どのコンポーネントをフォーカスしないかなどよく考えて完成できればすばらしい。
- 解答例
《課題2》p02- 締め切り: 6月20日(土)
フォーム上をボタン1が位置と大きさをランダムに変更して動き回るテキストのSample Project 2-3のプログラムに次のような修正を加えたプロジェクトを完成しなさい。動きの速さはタイマーで制御する。
タイマー1のスタートとストップ用にそれぞれボタン2とボタン3をアクセラレータキーとして作る。タイマー・コンポーネントについてはデジタルタイマーの例を参照すること。
- ボタン1が移動範囲の壁(境界線)にぶつかったら、ボタン1に「ギャー」という文字を表示する。衝突回数をカウントしてラベル1に表示する。(赤色で表示するから変更)
- 終了の仕方は、ストップボタンを押してタイマーを止めた状態にしておくとボタン1の動きは止まるので、ボタン1を押すことで容易に行なえるようにする。
- プロジェクト名: p02random , ユニット名: p02randomUn
- ヒント:壁にぶつかることの判定は、ボタンは上下左右にしか形を変えないので、ボタンのプロパティでTop, Left (Top+Height, Left+Width)の値と上下左右の壁の値を比べればよい。
- 解答例
《課題3》p03- 締め切り: 6月27日(土)
次の3つ例題を完成しなさい。ここらで息抜きする為の課題です。そこで提出物はこの課題にかぎり各例題について、@プロジェクトファイル、A実行前のフォーム、B実行中のフォーム、のセットとする。
- Sample6「標準体重のチェック」(5月21日の例題)
- Sample Project 2-3「ボタンの位置と大きさの変更」(6月19日の例題)
- Sample Project 2-4「四角形の表示」(6月19日の例題)
《課題4》p04- 締め切り: 7月27日(月)
前期定期試験の問題を解いて出す.ただし,締め切り日までに提出されたもののみを受理する.評価は,定期試験の点数に加味する.
《課題5》p05- 締め切り: 9月09日(水)
Delphiの「タブ付きノートブック」と「メモ」について適当な参考書とDelphiのヘルプで調べて, 次のようなプロジェクトを完成しなさい.
メモとタブ付きノートブックはコンポーネントパレットのそれぞれStandardとAddtionalグループとにある.
- ノートの1枚目のタブ名を「四角形の表示」とし Sample2-5を実行できるようにし,
2枚目のタブ名を「リストボックス」として例題9をそれぞれ実行できるようにする.
- 3枚目のノートからはタブ付きノートブックの使い方について説明を「メモ」コンポーネントを用いて記入する. (説明の為に画像を貼り付けることは, 後期で取り扱うので, 必要ない)
- プロジェクト名: p04tnote
- ユニット名: p04tnoteUn