永发信息网

sql判断一个数是否为素数

答案:2  悬赏:0  手机版
解决时间 2021-02-23 03:19
素数是能被1和它本身整除的大于1的自然数
最佳答案
我来回答吧:
先建立个判断函数,然后执行该函数,具体如下:

create function ChkIntIsSuShu(@No int)
returns tinyint
as
begin
if @No <=1
return 0
declare @maxV int, @Index int
set @maxV = @No -1
set @Index = 2

while @Index < @maxV
begin
declare @maxV2 int,@Index2 int
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

select dbo.ChkIntIsSuShu(13) -- 返回值1,表示素数,0表示非素数。
全部回答
肯定不是了 能被2整除啊 指在一个大于1的自然数中,除了1和此整数自身外,不能被其他自然数整除的数 判断n是否为素数 1、最简单的方法 用n除以2-sqrt(n),有一个能除尽就不是素数,否则是素数。 时间复杂度:o(sqrt(n)) 2、素数判断法: 这种方法是对上面方法的改进,上面方法是对2-sqrt(n)之间的数进行判断是否能除尽,而因为有如下算术基本定理,可以减少判断量。 算术基本定理:又称为素数的唯一分解定理,即:每个大于1的自然数均可写为素数的积,而且这些素因子按大小排列之后,写法仅有一种方式。例如:6936 = 2^3×3×17^2,1200 = 2^4×3×5^2。 由算术基本定理知,任何合数都可分解为一些素数的乘积,所以判断一个数能不能被2-sqrt(n)之间的素数整除即可。但是必须知道2-sqrt(n)之间的所有素数。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
陕K2222*车牌值多少钱后面是英文
采用铝合金吊顶时,吊点间隔应均匀,间距约为
咸丰是怎样登上皇位的?
扬州市金网络房地产销售公司地址在什么地方,
【ac031】...\TemporaryInternetFiles\Conten
皮草是深色点的——如泥土色、棕色的、黑灰色
佳润广场在哪里啊,我有事要去这个地方
mariefrance是什么牌子?
宏碁Aspire EC-471G 笔记本怎么样亲
煮牛肉后的汤怎么利用
金凯德门业眉县总经销地址在什么地方,想过去
谁有谭维维唱的华阴老腔一声喊无损音乐?
惠福圆家政服务中心在什么地方啊,我要过去处
【蜘蛛和蜈蚣谁吃谁啊?谁厉害?】
黄石村地址在哪,我要去那里办事
推荐资讯
皮鞋上油后擦不干净鞋油怎么办
人人车投诉电话,本人在人人网买了辆沪C二手
客户的理财目标一般包括()。A.家庭财富保障B.
怎么考研啊?我是大一的,园林专业,容易考研
襄樊哪里吃牛排便宜又比较好?
简便计算:19.8-9.9+20.2-9.8+20.1-10.2+19.9
一道对数计算题```在线等计算:7^log7(6)×log
广发卡占用额度是不是头两个月不用还钱
从光头到长发及腰需要多久
申通快递单号402839602090查询
求带莉字的三字女生名字
三生有幸跟什么相对仗
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?