1-12-3-再帰的な方法で解く(1*3*5*......n)
908 ワード
問題およびコード:
実行結果:
学習のまとめ:
前の項目と大同小異で,しばらく考えて再帰形式を構築した:n*(n−2),終了条件はn=1であった.
/*
* Copyright (c) 2014,
* All rights reserved.
* :main.cpp
* :
* :2014 11 17
* :v1.0
*
* : 1*3*5*……n
* : a
* : a
*/
#include <iostream>
using namespace std;
long fac(int);
int main()
{
int a;
cout<<" :";
cin>>a;
if(a%2==0) // 。
cout<<" , 。";
else
cout<<fac(a)<<endl;
return 0;
}
long fac(int n)
{
int x;
if(n==1)
x=1;
else
x=n*fac(n-2); // , 2 1 , a
return x;
}
実行結果:
学習のまとめ:
前の項目と大同小異で,しばらく考えて再帰形式を構築した:n*(n−2),終了条件はn=1であった.