プログラミング実習I : 課題 R1

目次

目標

  • 1 章の内容に基づいて,Java プログラミングの基本概念を理解する
  • 2 章の 2.4 節までの内容を理解し,Java の変数に関する基礎知識を得る
  • 教科書にはないが以下の理解を深める
    • 実数型の計算
    • キャスト

R1_1

準備

  • 教科書 p.8 から p.22 までをよく読み,1 章の内容を理解せよ.

課題

  • Java に関する以下の質問とその回答( 1 〜 3 行程度 )をレポートにまとめよ(プログラムの作成は行わなくてよい).教科書に答えが載ってない場合は,Web 検索等を用いて調べよ.
    1. オブジェクト指向とは何か?
      • 特に,手続き型言語との違いが分かるように答えよ
    2. 標準出力やコンソールとは何か?
    3. 左余白(インデント)を入れるのはなぜか?
    4. 「.java」 の拡張子を持つファイルはどのようなファイルか?
    5. 「.class」 の拡張子を持つファイルはどのようなファイルか?
    6. 以下の用語の意味は何か?
      • ソースファイル
      • コンパイル
      • クラスファイル
    7. コメントはどのような時にプログラムに追加するか?
      • また,コメントを追加するにはどのようにしたらよいか?
    8. 命令の後にセミコロンが無かったらどうなるか?
      • 実際に p.17 のリスト 1.2 に示されたプログラム (Start.java) にあるセミコロンを実際に削除し,削除したプログラムを実行してその結果を踏まえて答えよ.
    9. p.19 の図 1.22 のエラーの原因は何か?どのようにすれば解決するか?

R1_2

準備

  • 以下の手順に従って,p.17 のリスト 1.2 にある Start.java を作成し,実行せよ.
    1. 課題名(R1_2) を名前に持つプロジェクトを新規作成
    2. 新規作成したプロジェクトの中に,新規クラス(Start) を作成
    3. 新規作成された Start.java に,p.17 のリスト 1.2 にある Start.java と同じ内容を書き込む
    4. Start.java を実行し,問題なく動作することを確認
  • ※ 他のプログラム作成課題でも同様の手順を踏むこと

課題

  • リスト 1.2 を参考に,アスキーアート を使って自分の署名をコンソールに出力するプログラム(Start.java)を作成せよ.
    • 準備で作成した Start.java を変更していけばよい
    • ヒント
      • 複数行の文章を表示するためには,複数個の System.out.println 命令を用いればよい
        • 一つの System.out.println 命令を実行すると改行される
 /\_/\          石浦 菜岐佐 (Nagisa ISHIURA) 工学部 情報工学専攻
= o o =    )    内線 8445, MAIL ishiura@kwansei.ac.jp
   ^ Nagisa     http://ist.ksc.kwansei.ac.jp/~ishiura/

R1_3

準備

  • 教科書 p.24 から p.38 までによく読み,2 章の 2.1 節から 2.4 節までの内容を理解せよ

課題

  • Java に関する以下の質問とその回答をレポートにまとめよ(プログラムの作成は行わなくてよい).
    1. 以下の用語が教科書でどのように説明されていたか? 「モノ」や「ラベル」を用いて答えよ
      • 変数
      • 値またはオブジェクト
      • 変数の型
      • 代入
    2. プログラムで変数を使うためには,まず何をしなければいけないか?
    3. 変数を宣言するためには何と何を書かないといけないか?
    4. あらかじめ用意されている型にはどのようなものがあるか?
    5. int 型に実数値を代入したときにどのようなエラーがでるか?
      • スクリーンショットを取って説明せよ.
    6. 以下の中から変数名としてふさわしくないもの(Java の文法上使えないもの)はどれか? すべて答えよ.また,ふさわしくない理由も答えよ.
      • name
      • class
      • 1st_name
    7. 以下の式はどういう意味か?
      • x+=10;
      • x*=10;
      • x++;
      • x--;
    8. 文字列や真偽値を扱うためには,それぞれどのような型を用いればいいか?

R1_4

準備

  • リスト 2.2 にある Start.java を作成し,実行してみる

課題

  • リスト 2.2 を参考に,以下の式を計算した結果をコンソールに出力するプログラム(Start.java)を作成せよ.
    • \(4 \times 5 + 3\)
    • \(12 / 4 + 3\)
    • \(4^3\) (※ 4 の 3 乗)

R1_5

準備

  • リスト 2.3 から 2.5 にある Start.java をそれぞれ作成し,実行してみる
    • 最初に作成したリスト 2.3 の Start.java を修正 → 実行を繰り返していけばよい

課題

  • リスト 2.5 を参考に,以下の処理を順番に実行するプログラム(Start.java)を作成せよ.
    • int 型の変数 \(x\) と \(y\) を作成する
    • 変数 \(x\) と \(y\) に以下を代入
      • \(x\) に,自分の学籍番号の上位 4 桁を代入
      • \(y\) に,自分の学籍番号の下位 4 桁を代入
        • ※ ただし,学籍番号の下位 4 桁が「0123」といった場合は 「123」を代入
    • 以下の式を計算した結果をコンソールに出力する
      • \(x + y\)
      • \(x \times y\)
      • \(x/y\)  (☆1)
    • double 型の変数 \(z\) を作成する
    • 変数 \(z\) に以下の式を計算した結果を代入 (☆2)
      • \(z = (\mathrm{double}) x/y\)
    • 変数 z をコンソールに出力する(☆3)

R1_6

課題

  • R1_5 に対する以下の質問とその回答( 1 〜 3 行程度 )をレポートにまとめよ(プログラムの作成は行わなくてよい).
    1. (☆1) と (☆3) の出力結果にどのような違いがあるか?
    2. (☆2) で,「(double) 」を書かなかった場合にどのような結果になるか?
    3. Java におけるキャストの意味は何か? Web 検索で調べてみよ.また,上の 2 つの問で答えた結果とキャストの関係を説明せよ.

R1_7

準備

  • リスト 2.13 にある Start.java を作成し,実行してみる

課題

  • リスト 2.13 を参考に,R1_2 で作成した自分の署名を一つの System.out.println 命令で出力するプログラム(Start.java) を作成せよ.
    • その際に,以下の条件を満たすこと
      • 署名の各行の文字列を別々の String 型の変数に格納する
        • 変数の最後に,「\n」(改行コード)を入れること
          • 例えば,以下のような感じ

            String message = "こんにちは\n"
            

著者: Yusuke Sakumoto

Created: 2023-09-08 金 14:31

Validate