#include long fact(long); int main() { long result = 0; result = fact(7); std::cout << "The result is: " << result << std::endl; return int(0); } long fact(long val) { if(val > 1) return val * fact(val -1); else return long(1); } /* このコードでは、main関数の前にlong fact(long);というコンパイラ用の 関数宣言を挿入しています。この宣言はヘッダーファイルに相当します。 しかし、このコードはアルゴリズムだらけであり、"何かを表現する" というものではありません。いってみれば、寂しいコードです。 この種のコードを学習することにどれほどの意味があるのか、 筆者は疑問視しています。 */