Oracle 练习题 20131021 for 循环练习
2013-12-05 17:06
344 查看
--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;
--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;
相关文章推荐
- for循环练习*累加
- for循环的小练习之6个不重复数字的所有组合输出
- python 表达式和语句及for、while循环练习实例
- Oracle中的for和while循环
- Oracle中的for和while循环
- Oracle中的for和while循环
- 092day(Java循环和数组程序练习,for-each循环)
- Oracle:PL/SQL--流程控制(三)——循环结构:loop、while-loop、for-loop
- Oracle For 循环,字符串拼接,查找
- 第一章 基本语法-6循环(for)练习 求一个数的所有约数
- php练习——用for循环打印半金字塔、金字塔、正方形、倒金字塔、菱形、空心图形等
- Oracle中四种循环(GOTO、For、While、Loop)
- (转)Oracle中的for和while循环
- js部分---for循环练习题
- Python 中使用 for、while 循环打印杨辉三角练习(列表索引练习)。
- for循环往Oracle中插入n条数据,主键自增
- for循环的练习题
- +++++++脚本练习之for循环和if语句使用
- linux命令练习:for循环语句练习
- oracle For循环和触发器Tigger