题目描述

定义$N$的双阶乘:

$$N!!=N∗(N−2)∗(N−4)∗….i(i=1ori=2)$$

比如$5!!=5∗3∗1=15$

而$6!!=6∗4∗2=48$

特别的我们定义$!=1!!=1$

给定$N$你的任务是计算出$N!!$(你可以假设答案不超过$int$ 范围)

输入

多组输入,每行一个整数$N$

输出

你的任务是计算出$N!!$(你可以假设答案不超过$int$ 范围)

提示:需要分奇偶分别计算

#include<bits/stdc++.h>
using namespace std;
int main(){
    int n,s,x;
    while(scanf("%d",&n)!=EOF){
        s=n;
        if(n%2==0){
            while(n>2){
                x=n-2;
                s=s*x;
                n=x;
            }
            cout<<s<<endl;}
        else{
            while(n>1){
                x=n-2;
                s=s*x;
                n=x;
            }
            cout<<s<<endl;}
    }
    return 0;
}