Oracle 练习题 20131021 for 循环练习
原创
©著作权归作者所有:来自51CTO博客作者于大大大洋的原创作品,请联系作者获取转载授权,否则将追究法律责任
--Oracle 练习题 20131021 for 循环练习
--1、用for循环实现一个倒置的乘法表。
begin
for i in reverse 1 .. 9 loop
for j in reverse 1 .. i loop
dbms_output.put(i || 'x' || j || '=' || i * j || ' ');
end loop;
dbms_output.put_line('');
end loop;
end;
--2、打印1-100之间所有的素数。
declare
v_temp number := 0;
begin
for i in 2 .. 100 loop
for j in 1 .. sqrt(i) loop
if mod(i,j) = 0 then
v_temp := v_temp + 1;
end if;
end loop;
if v_temp = 1 then
dbms_output.put_line(i);
end if;
v_temp := 0;
end loop;
end;
--3、输入两个数求它们的最大公约数和最小公倍数。
declare
v_a number := &inputa;
v_b number := &inputb;
v_rsa number;
v_rsb number;
begin
for i in 1 .. (v_a+v_b)/2 loop
if mod(v_a,i)=0 and mod(v_b,i)=0 then
v_rsa := i;
end if;
end loop;
for j in reverse 1 .. v_a*v_b loop
if mod(j,v_a)=0 and mod(j,v_b)=0 then
v_rsb := j;
end if;
end loop;
dbms_output.put_line('最大公约数:' || v_rsa);
dbms_output.put_line('最小公倍数:' || v_rsb);
end;
--4、打印如下菱形
-- *
-- ***
-- *****
-- *******
-- *****
-- ***
-- *
begin
--上半部分
for i in 1..4 loop
for j in 1..(5-i) loop
dbms_output.put(' ');
end loop;
for k in 1..(2*i-1) loop
dbms_output.put('*');
end loop;
dbms_output.put_line('');
end loop;
--下半部分
for i in 1..3 loop
for j in 1..i+1 loop
dbms_output.put(' ');
end loop;
for k in 1..7-(2*i) loop
dbms_output.put('*');
end loop;
dbms_output.put_line('');
end loop;
end;
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
《五、循环》练习题答案
《五、循环》练习题答案!
python while循环 for循环 其他 -
C语言循环练习题
n阶数字正方形对于给定的整数 nnn。输出一个 nnn 行数字,nnn 行数字中的第 iii 行包
乘法表 输出格式 #include -
Java基础练习题(方法练习题)
方法的小练习题
调用方法 System 三元运算符 -
redis网站dabukai
1、导入pom.xml<!--redis--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId
redis网站dabukai Spring Boot Redis Redisson 分布式锁 -
32位的mysql 下载
1> 双击mysql-5.1.72-winx64.msi 2> 接受协议,next 3> 选择“Custom”,next 4> 点击“Change…” 5> 修改MySQL安装路径,点“OK” 6> next 7> 点“Install” 8> nex
32位的mysql 下载 mysql MySQL Server Machine