第15周-專案2-有些數的階乘不算了

kewlgrl發表於2015-06-17
問題及程式碼:

/*   
*Copyright (c)2015,煙臺大學計算機與控制工程學院   
*All rights reserved.   
*檔名稱:n!.cpp   
*作    者:單昕昕   
*完成日期:2015年6月17日   
*版 本 號:v1.0   
*問題描述:求n!的函式,當使用者的輸入為負數,以及輸入數太大時(例如大於12),使用異常處理機制予以拒絕,並給出恰當的提示。
*程式輸入:一個小於12的正整數。
*程式輸出:數的階乘。
*/
#include <iostream>
using namespace std;
int main( )
{
    int n,i,s=1;
    cout<<"請輸入一個數:";
    cin>>n;
    try
    {
        if(n<0||n>12)
            throw n;
        for(i=1;i<=n;++i)
            s*=i;
        cout<<n<<"!="<<s<<endl;
    }
    catch(int)
    {
        if(n<0)
        cout<<"請輸入一個正數!"<<endl;
        else if(n>12)
        cout<<"請輸入一個不大於12的正數!"<<endl;
    }
    return 0;
}


執行結果:







知識點總結:
異常處理。

學習心得:

再試異常處理~~

其實就一個注意點:函式判斷要寫在try裡面~~

相關文章