Home  >  Article  >  Database  >  判断质数

判断质数

WBOY
WBOYOriginal
2016-06-07 14:55:161836browse

判断整数是否为质数 无 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表示非素数。
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn