練習 [1] C 言語にふれる (3/4)

練習 3(提出プログラム名:p0103.c)

まず,サンプルプログラム 3(sample3.c)p0103.c という別の名前のファイルにコピーしなさい.
そして,p0103.c 内の main 関数の内容を書き換え,x2 ではなく -3x3 + 10x2 -5x + 9 の値を出力するようにしなさい.
表示は「-3x^3 + 10x^2 - 5x + 9 = 〇〇」という形式にすること.つまり,
  printf("-3x^3 + 10x^2 - 5x + 9 = %d\n", ??? );
としなさい.( ??? の部分は自分で考えること)

【注意】
この問題では表示の仕方がサンプルプログラム 3 とは大きく違っているので,その点に注意すること.
「入力された値は ~ です」とか「その値の 2 乗は ~ です」という表示ではないのでくれぐれも間違えないこと.

以下の3種類の実行例は3通りともすべて試すこと!

  • 【プログラムの実行結果】(その1)赤字は実行時にキーボードから入力する内容
整数を入力してください:12
-3x^3 + 10x^2 - 5x + 9 = -3795
※最後に表示するは改行(\n)を意味しています.
  • 【プログラムの実行結果】(その2)赤字は実行時にキーボードから入力する内容
整数を入力してください:0
-3x^3 + 10x^2 - 5x + 9 = 9
  • 【プログラムの実行結果】(その3)赤字は実行時にキーボードから入力する内容
整数を入力してください:-5
-3x^3 + 10x^2 - 5x + 9 = 659

【過去にあったミス(実際に減点となり,やり直しを命じられた例)】
scanf において %d の右に空白や \n を書いてしまっている.
  ※余計な空白や \nscanf に書いてしまうとプログラムの実行が終わりません
scanf において x の左に & を書き忘れている(正しくは &x).
  ※ & を書き忘れると,プログラムが異常な動きをしたり,途中で強制終了したりします.
printf表示させる内容がサンプルプログラム 3 のままになっていたり,
 練習問題 2 の内容になっていたりして上の実行結果のように表示されていない.
■ 上で示した 3 種類の実行例をきちんと試しておらず,一部でうまく動作しないまま提出している.
インデントに不備がある(VSCode 上でインデントを自動で揃える作業をやっていない).


ミスが無いことを確認したら次の問題へ → [ 練習4 (p0104.c) ]