[サイトマップ] [トップページ]

トップページ > 授業のページ > コンピュータプログラミングII >
プログラミング課題


更新日
4/25 Fri 09:50

第3回課題

  1. [pe3-1.c] (必須) 3つのサイコロを振って,出目の和が 偶数ならば Even と表示し, 奇数ならば Odd と表示するプログラムを作りなさい。

    プログラムではサイコロ振りを行う関数 roll3dice を定義すること。 roll3dice は三つのサイコロ振りを乱数で模擬し,合計を返すように定義すること。 また,roll3dice の本体では,各サイコロの出目を表示させること。

    関数 main では,関数 roll3dice を呼び出し,戻り値が 2 で割り切れるかどうかによって, サイコロの出目の和が偶数か奇数かを表示させること。

  2. [pe3-2.c] (必須) 課題 1 のプログラムを次の三つのファイルに分割し,コンパイルして実行しなさい。
    • 関数 main の定義: pe3-2.c
    • 関数 roll3dice の定義: pe3-2-sub.c
    • 関数 roll3dice のプロトタイプ宣言(ヘッダファイル): pe3-2.h

  3. [pea3-1.c] 変数 m と n に正の整数を読み込んで,m から n の間に存在するすべての自然数について,その逆数の和 1/m + 1/(m + 1) + ... + 1/(n - 1) + 1/n を求めるプログラムを作りなさい。和は関数 interval_sum に求めさせること。



4/18 Fri 12:03

第2回課題

  1. [pe2-1.c] (必須) 画面に Hello World! と表示するプログラムを作りなさい。 ただし, 画面に Hello World! と表示して改行する関数 hello を定義し, 関数 main から関数 hello を呼び出すことによって動作するプログラムとすること。

  2. [pe2-2.c](必須)次の 1, 2 を順に行いなさい。
    1. 変数 n に正の整数を読み込んで 1 + 2 + ... + n を求めて表示するプログラムを作りなさい。 ただし,和の計算は関数 interval_sum を作って行うこと。

      関数 main が行うことは, 変数 n にキーボードから正の整数を入力し, 和を求める関数 interval_sum を呼び出し, 計算結果である interval_sum の戻り値を表示するだけである。

      和の計算は interval_sum に行わせること。 関数 interval_sum は和を計算して,それを呼び出し元に戻り値として返す関数とすること。 interval_sum の本体には,計算結果を表示する文は書かないこと。

    2. 先のプログラムを, 変数 m と n に正の整数を読み込んで,m から n の間に存在するすべての自然数の和 m + (m + 1) + ... + (n - 1) + n を求めるプログラムに変更しなさい。 和は関数 interval_sum に求めさせること。

  3. [pea2-1.c] キーボードから入力した整数を一辺の長さとする正方形を,* で描くプログラムを作りなさい。 ただし,関数 printsquare を定義して,関数 main から呼び出すようにすること。 関数 printsquare は,引数を通じて整数を一つ受け取り,その値を一辺の長さとする正方形を * で出力する関数とすること。

    例えばキーボードから 3 を入力したときに,このプログラムは画面に次の出力をする。

    ***
    ***
    ***
    
    また,キーボードから 0 以下の数を入力したときには,
    Invalid number.
    
    のようなメッセージを出すことが望ましい。

4/11 Fri 00:49

第1回課題

  1. [pe1-1.c](必須) 変数 a と b に標準入力(キーボード)から値を読み込み, それらの値を一度出力した後で,変数 ab に a と b の積を代入し,「? x ? = ?」(数の表示は小数点以下第2位まで)の形で結果を出力するプログラムの空白部分 (a) から (e) を埋めなさい。

    (変数,四則演算,scanf と printf による入出力)

    /* pe1-1.c: multiplication program */
    #include <stdio.h>
    
    int main()
    {
        double a, b, ab;
    
        scanf("%lf%lf", [(a)    ]);
        printf("a: %f\n", [(b)  ]);
        printf("b: %f\n", [(c)  ]);
    
        [(d)      ];
        [(e)                     ];
    
        return 0;
    }
    

  2. [pe1-2.c](必須)変数 n に正の整数を読み込んで 1 + 2 + ... + n を求めるプログラムの空白部分 (a) から (e) を埋めなさい。 なお,このプログラムは n までの和を求める途中の過程も表示する。

    (反復構造,合計を求めるアルゴリズム)

    /* pe1-2.c: summation program */
    #include <stdio.h>
    
    int main()
    {
        [(a) ]  i, n, sum;
    
        printf("Enter integer.\n");
        scanf([(b)        ]);
    
        sum = [(c) ];
        for (i = 1; [(d)         ]) {
            sum += [(e)  ]
            printf("%d\t%d\n", i, sum);
        }
    
        return 0;
    }
    

  3. [pea1-1.c] 変数 n に正の整数を読み込んで 1 + 1/2 + ... + 1/n を求めるプログラムを作りなさい。

    (データ型)





[サイトマップ] [トップページ]