プログラミング実習II知能・機械 の教科書

『キックオフC言語 2023年度用』のサポートページです。

配布物

製本した印刷物は、授業の初回で配布します。

PDF は以下で公開します。

正誤表

2章

p. 31 末尾
マクロ定数についての補足です。「#define 文はインデントせずに、プログラムの冒頭部分(#include のすぐ下)に記述するのが習慣です。」例えば p.135 のソースコード8.8などの使い方を参考にしてください。
p. 34 問題4.
このスワップ動作は、3変数間で同時に行うことを意図しています。順次入れ替えるわけではありません。
p. 34 問題8.
マクロ YEAR_PER_CENTURY は2回使用することに気をつけてください。

3章

p.52
問題9.を7章に移動して、今回の提出対象から除外します。そして、問題6.と、問題4.の考察をオプションにします。
p.52 問題9.
「x の逆正弦を弧度法で返す。」→「x の逆正弦を度数法(度)で返す。」弧度法はラジアンで表すことなので、オリジナルの asin(x) の動作と同じになります。

4章

p.71 問題3.
「1個のelse-if」は「1個のifと1個のelse」と数えます。
p.71 問題5.
動作確認のmain()と補助関数を例示しておきます。
void print_exist_triangle(int a, int b, int c) {
    printf("3辺の長さが %d, %d, %d の三角形は", a, b, c);
    if (exist_triangle(a, b, c)) {
        printf("存在する\n");
    } else {
        printf("存在しない\n");
    }
}

int main(void) {
    print_exist_triangle(1, 1, 1);  // する
    print_exist_triangle(3, 4, 5);  // する
    print_exist_triangle(1, 1, 10); // しない
    print_exist_triangle(10, 5, 5); // しない
    print_exist_triangle(1, 15, 5); // しない
}

6章

p.104 問題4.
whileループは、結果として消滅しても構いません。(案3) は、forループだけにすることを提案しています。
p.104 問題7.
数値の表示形式は、桁数を増やす工夫をしてください。数列Akの0への収束が早いため、数値の変化を確かめるのに、表示桁数を増やす必要があります。

7章

p.119 問題0.
以下を追加します。『 問題0.[仮引数のスコープ(3.4節の復習)] p.45 の ソースコード3.7 の5行目のtriangle_side()関数について、仮引数を「(double a, double b, double c)」から「(double x, double y, double z)」に変更すると、そのままではコンパイルエラーになる。エラーを解消するための最小限の修正を行え。実行結果は修正前と同じになるようにせよ。4行目のコメント中の「a,b,c」は「x,y,z」に修正し、これ以外に不必要な(実行結果に影響しない)修正は行ってはならない。』

8章

p.142 問題8.
オプションの問題を追加しておきます。『問題8. [配列要素の全ペア] 東海道新幹線のぞみ号の停車する6つの駅の、東京駅からの距離(km)は、それぞれ
 東京  品川  新横浜 名古屋 京都  新大阪
 0.0    6.8   28.8  366.0  513.6  552.6 
である。この距離を1次元配列に格納し、以下の表のように、各駅の間の距離を計算で求めて表示するプログラムを作れ。
・実行結果の、()内の駅名はヒントであるので、数値部分だけを表示すればよい。
・数値は "%8.1f" で表示すると、桁が揃いやすい。
・絶対値を返す数学関数 fabs(x) を用いてよい。
実行結果
          ( 東京)( 品川)(新横浜)(名古屋)( 京都)(新大阪)
( 東京)      0.0     6.8    28.8   366.0   513.6   552.6
( 品川)      6.8     0.0    22.0   359.2   506.8   545.8
(新横浜)     28.8    22.0     0.0   337.2   484.8   523.8
(名古屋)    366.0   359.2   337.2     0.0   147.6   186.6
( 京都)    513.6   506.8   484.8   147.6     0.0    39.0
(新大阪)    552.6   545.8   523.8   186.6    39.0     0.0

トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS