SQL计算100以内的质数(可以把100换成任意的整数)
2007-06-23 16:01
330 查看
declare @i int --定义局部变量@i
declare @j int --定义局部变量@j
set @i=1 --给变量@i赋值
while @i<100 --最外层while循环控制计算20以内的质数,每循环一次提供一个数,判断它是不是质数
begin --最外层while循环开始
set @j=1 --给变量@j赋值,外层while每执行一次,它都被重新赋值为1
while @j<@i --内层while循环判断外层while循环提供的@i是不是质数
begin
if @i=2 --如果@i的值为2就直接打印,因为2是质数
begin
print cast(@i as char)
break --退出内层while循环
end
set @j=@j+1 --每次都从2开始除
if @i%@j=0
begin
break --退出内层while循环
end
else
if @j=@i-1 --如果不能被2到@i-1之间的数整除,就说明是质数 内层if...else控制从2到@i-1除一边
begin
print cast(@i as char) --打印质数
break --退出内层while循环
end
else
begin
continue --继续下一次内层while循环,每继续一次可以使@j的值增加1,从而使@j从2开始一直递增,一直递增到@i-1
end
end
set @i=@i+1 --最外层while循环的语句,每次都会被执行,目的是使@i递增1,从而进入下一次循环,从而判断@i是不是质数
end --最外层while循环结束
相关文章推荐
- SQL计算100以内的质数(可以把100换成任意的整数)
- 脚本练习_计算100以内可以整除3的正整数之和
- 100以内可以累加为100的整数组合
- C#练习——判断任意一个整数是否为质数、1-100质数求和以及1-100的整数求和
- C#l练习(用方法来实现:①判断一个给定的整数是否为“质数”。②计算1-100之间的所有质数(素数)的和
- 求出1~13的整数中1出现的次数,并算出100~1300的整数中1出现的次数?为此他特别数了一下1~13中包含1的数字有1、10、11、12、13因此共出现6次,但是对于后面问题他就没辙了。ACMer希望你们帮帮他,并把问题更加普遍化,可以很快的求出任意非负整数区间中1出现的次数。
- 100以内所有可以加为100的整数的组合
- 计算100以内的质数或合数
- 初步验证哥德巴赫猜想(即:任意一个大于4的偶数,可以分解成2个质数之和*10000以内)
- 计算100以内所有能被3整除的正整数的和
- 100以内所有可以加为100的整数的组合
- 【C】计算100以内的整数中出现9的次数
- 求出1~13的整数中1出现的次数,并算出100~1300的整数中1出现的次数?并把问题更加普遍化,可以很快的求出任意非负整数区间中1出现的次数。
- 2.创建一个抽象类A,该类中包含一个求两个数之和抽象方法。创建一个子类B,在B中重写求和方法,且使用方法重载使得方法可以分别计算整数、双精度、字符串
- C/C++实现"输出100以内能被3整除且个位数为6的所有整数"
- 随机生成一个1~100之间的整数,玩家可以通过函数InputBox命令输入数字来猜测那未知的随机数字
- 写一方法计算实现任意个整数之和.在主调函数中调用该函数,实现任意个数之和。(使用params参数)
- 用递归法将一个整数n转换成字符串。例如,输入483,应输出字符串“483”。n的位数不确定,可以是任意位数的整数。
- 一道经典面试题:计算n以内的素数(质数)算法
- 打印出100以内的质数,一行显示5个