[1] 授業単元: プログラミング
[2] 問題文(含コード&リンク):
以下の手順に従って,完全数か否かを判断する関数を作成せよ.
メインプログラムは,値の入力と下記(2)の関数を呼び出し,
戻り値によって,「完全数/完全数でない」の印字をする.
(1)自然数を引数として受け取り,その数値のすべての約数の合計を戻す関数を
   作成せよ.今回は繰り返し構造を用いること.

(2)自然数を引数として受け取り,上記(1)を用いて,その数値が完全数か否か
   を判定する関数を作成せよ.関数の戻り値は,与えられた数値が完全数の場合
   はその完全数の値を,完全数でない場合は−1を戻すこととする.

[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: C
[4] 期限: 2007年8月2日
[5] その他の制限: (どこまで習っているか、標準ライブラリは使ってはいけない等々)
(1)も(2)もお願いしたいのですが、特に(2)がわかりません。
よろしくお願いします。