特に指定されない限り、レポートとしてコンパイル前のプログラムコードを提出してください。レポートの提出方法は別ページを参照してください。
教科書のサンプルコードでは、実行したときにプロンプトや説明のための文字列が出力されるようになっています。自分で試すときにはその方がわかりやすくてよいのですが、レポートとして提出するコードでは、要求された文字列以外は出力しないようにしてください。
問題文で複数の入力が指定されている場合、1つ1つの入力の最後に改行が入っていると仮定してください。例えば、「2つの整数を入力として受け取る」プログラムの場合、ターミナル上で動作するときには以下のような入力を受け取ることが想定されています。
22
11
教科書にあるようにscanfを使って入力を読み込む場合には、最初のうちは改行のことは気にしなくても問題ありません。
問題文で入力の種類が指定されている場合、指定から外れたデータが入力されることは想定しなくてかまいません。また、「整数」と書かれている場合には、int型の範囲を超える数は想定しなくてかまいません。計算の途中でint型を超える心配も不要です。また、「小数値」と書かれている場合にはdouble型の範囲内におさまる数であるとします。(意味がわからない場合は、特に気にしなくて問題ありません。)
3つの整数を入力として受け取って、それらの和を表示するプログラムを作成せよ。
注: プログラムが正しく動作していることを実際に確かめてから提出すること。
締切: 10/11 23:59
参考: 教科書の演習問題1-8
2つの正の整数x、yを入力として受け取って、xがyの何%かを小数値(小数点以下は2桁目まで)で表示するプログラムを作成せよ。
以下はxが3、yが7の場合の出力例である。
42.86
注: このように出力例が課題文中に記載されている問題の時には必ず、自分の作成したプログラムに対して実際に3と7を入力してみて、42.86という結果が得られる事を確認してから提出してください。テストケースに対してプログラムが正しく動くかどうかをチェックするという事は、プログラミングの基本です。例年0.4286といった解答が見られますが、このような提出はそれを怠っているケースと言えます。
締切: 10/11 23:59
参考: 教科書の演習問題2-5, 2-6
3つの整数を入力として受け取って、そのうち最小のものを表示するプログラムを作成せよ。
補足: 様々な入力について、実際に動作を確認してみてください。たとえば1 2 3と入力して1が返ってきたから大丈夫、と思うのではなく、3 2 1や3 1 2などを入力としてテストを行い、最小値がどの位置にあっても正しく返ってくる事を確認するようにしましょう。
締切: 10/11 23:59
参考: 教科書の演習問題3-6
3つの整数を入力として受け取って、それらが3つとも同じなら「3」、2つだけが同じなら「2」、全て異なるなら「1」と表示するプログラムを作成せよ。
締切: 10/11 23:59
参考: 教科書の演習問題3-10
正の整数を入力として受け取って、読み込まれた整数値以下である正の2のべき乗の数を順に表示するプログラムを作成せよ。以下は入力が53の場合の出力例である。
1 2 4 8 16 32
締切: 10/11 23:59
参考: 教科書の演習問題4-7
正の整数を入力として受け取って、それを逆順に位取りした数を表示するプログラムを作成せよ。ただし、表示する数の先頭に0は付けないものとする。例えば、10800を入力とした場合の出力は「801」となる。
締切: 10/11 23:59
参考: 教科書の演習問題4-10
正の整数xを入力として受け取って、x以下の正の整数を順に改行区切りで列挙するが、その数が3の倍数のときには「Fizz」、5の倍数のときには「Buzz」、3の倍数でも5の倍数でもあるときには「FizzBuzz」と表示するプログラムを作成せよ。下記は、xを16とした場合の出力である。
1
2
Fizz
4
Buzz
Fizz
7
8
Fizz
Buzz
11
Fizz
13
14
FizzBuzz
16
補足:この問題はFizzBuzz問題と呼ばれ、プログラムを書けるプログラマーであるかどうかを見極めるテストとして有名です。
締切: 10/11 23:59
正の整数xを入力として受け取って、次のようなピラミッド状の模様をその段数分表示するプログラムを作成せよ。下記はxを5とした時の出力である。
*********
*******
*****
***
*
注1) 「*」はアスタリスクです
注2) 各行の一番右側(アスタリスクの後)は「スペースなし」です
締切: 10/11 23:59
参考: 教科書の演習問題4-24