C++プログラミング演習1: 2012年5月15日(火)1時限

Theoretical Minimum
C言語プログラミング基礎:

 

C_006:(ファイル出力)
トランプの山札(52枚)から10枚だけ抜き取った結果をファイルに出力せよ。

 

C_007:(構造体1)
次の構造体を使って、誕生日をランダムに200個、ファイルに出力せよ。
struct {
 int year;
 int month;
 int day;
} birthday;

 

C_008:(文字検索)
1000word程度の英文だけのテキストファイルを用意し、そのファイルを読み込んで、その英文中に含まれる e の出現回数を求めよ。

 

C_009:(確率)
3個のさいころを同時に振り、3個の目の和がちょうど12になる確率を計算するプログラムを作成せよ。

 

C_010:(確率:理論値との比較)
上のプログラムの実行結果と理論値がほぼ一致することを確認せよ。

 

C_011:(数当てゲーム)
数当てゲームのプログラムを作成せよ。正解となる数は2桁の整数とする(これを乱数で設定する)。プレイヤーは、キーボードからを整数を入力し、その都度、プログラムが正解より大きいか小さいかのヒントを出力するものとする。


C_012:(平方根)
ある数nの平方根が整数かどうかを判定するプログラムを作成せよ。

 

C_013:(ケタ数)
 実数の整数部のケタ数と小数部のケタ数を出力するプログラムを作成せよ。たとえば、実数が123.45678の場合、整数部のケタ数は3、小数部のケタ数は5と出力される。

 

C_014:(文字への変換)
 4桁の整数を上位の桁から順に、4個の文字として出力するプログラムを作成せよ。たとえば、整数が1298の場合、'1'、'2'、'9'、'8'の順に、文字型として出力される。

 

C_015:(友愛数)
 整数Aの約数の和はBとなり、整数Bの約数の和がAとなるとき、AとBは友愛数と呼ばれる。ただし、約数には1を含める。たとえば、次に示すように、220と284は友愛数である。

220の約数 --> 1, 2, 4, 5, 10, 11, 20, 22, 44, 55, 110
284の約数 --> 1, 2, 4, 71, 142

# 100000より小さい友愛数をすべて出力せよ。

 

C_016:(素数の砂漠)
 素数を小さい順に並べ、隣り合う素数と素数の間隔(差)に注目してみよう。素数が大きくなるにつれ、より大きな間隔が現れるようになる。ここで、素数が現れない領域は「素数の砂漠」と呼ばれている。たとえば、

・・・, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103,・・・

と素数は並ぶが、この中では、89と97の間が、一番大きな素数の砂漠であり、
その間隔は7である。

# 100000以下の場所で、いちばん大きな素数の砂漠はどこにあるか。