Heim  >  Artikel  >  Datenbank  >  判断质数

判断质数

WBOY
WBOYOriginal
2016-06-07 14:55:161837Durchsuche

判断整数是否为质数 无 CREATE FUNCTION CheckPrimeNumber(@No BIGINT) RETURNS TINYINT AS BEGIN IF @No = 1 RETURN 0 DECLARE @maxV BIGINT, @Index BIGINT SET @maxV = @No - 1 SET @Index = 2 WHILE @Index @maxV BEGIN DECLARE @maxV2 BIGINT, @Index2 B

判断整数是否为质数
CREATE FUNCTION CheckPrimeNumber(@No BIGINT) 
RETURNS TINYINT 
AS 
  BEGIN 
      IF @No <= 1 
        RETURN 0 

      DECLARE @maxV  BIGINT, 
              @Index BIGINT 

      SET @maxV = @No - 1 
      SET @Index = 2 

      WHILE @Index < @maxV 
        BEGIN 
            DECLARE @maxV2  BIGINT, 
                    @Index2 BIGINT 

            SET @maxV2 = @maxV 
            SET @Index2 = @Index 

            WHILE @Index2 < @maxV2 
              BEGIN 
                  IF @Index2 * @Index = @No 
                    RETURN 0 

                  SET @Index2 = @Index2 + 1 
              END 

            SET @Index = @Index + 1 
        END 

      RETURN 1 
  END 
GO
SELECT dbo.CheckPrimeNumber(13) -- 返回值1,表示素数,0表示非素数。
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:一个很强大的分页代码。Nächster Artikel:oracle当行函数日期