#8426: 一直TLE,誰能給我些建議!!!


DaLin (冠逸)

學校 : 國立中央大學
編號 : 37188
來源 : [140.115.200.38]
最後登入時間 :
2014-09-05 12:38:40
a007. 判斷質數 | From: [140.115.200.38] | 發表日期 : 2013-12-03 23:54

#include<iostream>
#include<cmath>
using namespace std ;
int main()//本次練習的目的在於設計出一個能提供使用者驗證某數是否為質數的簡易系統
{

    int x=0;
    do//後測試迴圈至少跑一輪
    {
        int flag=1 ;
        int y=2 ;
        cin>>x ;
        while(flag==1 && y<sqrt(x))    //利用迴圈和旗標數來驗證該數是否為質數,如果不是舊交旗標數的值改成0,藉此跳出迴圈
        {

            if((x%y)==0)
            {
                flag=0 ;
                break ;

            }
            y=y+1 ;
        }
        if(flag==0)    //若跳出迴圈的旗標數為0則顯示該數為非質數
        {
            cout<<"非質數"<<endl ;

        }
        else      //若旗標數不為0質則顯示該數為質數
        {
            cout<<"質數"<<endl ;
        }
        //為了能使迴圈繼續執行,須將旗標數和除數y的值在迴圈最後初始化

    }
    while(3);//表示無限迴圈

 

    return 0 ;
}

抱歉!!!我想請問一下要怎麼修改我的程式碼才能讓它執行的時間不會逾時

 
ZeroJudge Forum