思いつくままに書いていますので、 各人の好みに合ったものに取り組んでください。 全部やってみる必要はないでしょう。
関数を書く練習がまだの人は、それをやりましょう。
教科書 1.7 の関数 int power(int base, int n) を改造することで、 浮動小数点数の非負整数乗を計算する double power(double base, int n) を書け。
それをさらに改造し、負の整数乗も計算できるようにせよ。
2 以上の自然数 n に対し n の最小の素因数を返す関数を書け。 C言語では a を b で割った余りは a % b とするのだった。 「小さい素数から順に割ってみる」と考えるとむずかしい。 計算に余分な時間がかかるが、「2 以上の自然数で順に割ってみる」とすればよい。 return は関数の途中に置いてもよいことにも注意。
上で書いた関数を利用して、2 から始めて適当なところまで、 自然数とその最小の素因数を並べて出力するプログラムを書け。 同様にして、 2 から始めて適当なところまでの素数(のみ)を出力するプログラムを書け。
同様にして、 2 以上の自然数を引数に与えるとそれを素因数分解して印字する関数を書け。 例えば引数を 52 とすると 2*2*13 と出力するようにする。