Oracle 练习题 20131021 for 循环练习
生活随笔
收集整理的這篇文章主要介紹了
Oracle 练习题 20131021 for 循环练习
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
--Oracle 練習題 20131021 for 循環練習
--1、用for循環實現一個倒置的乘法表。beginfor i in reverse 1 .. 9 loopfor j in reverse 1 .. i loopdbms_output.put(i || 'x' || j || '=' || i * j || ' ');end loop;dbms_output.put_line('');end loop;end;
--2、打印1-100之間所有的素數。declarev_temp number := 0;beginfor i in 2 .. 100 loopfor j in 1 .. sqrt(i) loopif mod(i,j) = 0 thenv_temp := v_temp + 1;end if;end loop;if v_temp = 1 thendbms_output.put_line(i);end if;v_temp := 0;end loop;end;
--3、輸入兩個數求它們的最大公約數和最小公倍數。declarev_a number := &inputa;v_b number := &inputb;v_rsa number;v_rsb number;beginfor i in 1 .. (v_a+v_b)/2 loopif mod(v_a,i)=0 and mod(v_b,i)=0 thenv_rsa := i;end if;end loop;for j in reverse 1 .. v_a*v_b loopif mod(j,v_a)=0 and mod(j,v_b)=0 thenv_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 loopfor j in 1..(5-i) loopdbms_output.put(' ');end loop;for k in 1..(2*i-1) loopdbms_output.put('*');end loop;dbms_output.put_line('');end loop;--下半部分for i in 1..3 loopfor j in 1..i+1 loopdbms_output.put(' ');end loop;for k in 1..7-(2*i) loopdbms_output.put('*');end loop;dbms_output.put_line('');end loop;end;
--1、用for循環實現一個倒置的乘法表。beginfor i in reverse 1 .. 9 loopfor j in reverse 1 .. i loopdbms_output.put(i || 'x' || j || '=' || i * j || ' ');end loop;dbms_output.put_line('');end loop;end;
--2、打印1-100之間所有的素數。declarev_temp number := 0;beginfor i in 2 .. 100 loopfor j in 1 .. sqrt(i) loopif mod(i,j) = 0 thenv_temp := v_temp + 1;end if;end loop;if v_temp = 1 thendbms_output.put_line(i);end if;v_temp := 0;end loop;end;
--3、輸入兩個數求它們的最大公約數和最小公倍數。declarev_a number := &inputa;v_b number := &inputb;v_rsa number;v_rsb number;beginfor i in 1 .. (v_a+v_b)/2 loopif mod(v_a,i)=0 and mod(v_b,i)=0 thenv_rsa := i;end if;end loop;for j in reverse 1 .. v_a*v_b loopif mod(j,v_a)=0 and mod(j,v_b)=0 thenv_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 loopfor j in 1..(5-i) loopdbms_output.put(' ');end loop;for k in 1..(2*i-1) loopdbms_output.put('*');end loop;dbms_output.put_line('');end loop;--下半部分for i in 1..3 loopfor j in 1..i+1 loopdbms_output.put(' ');end loop;for k in 1..7-(2*i) loopdbms_output.put('*');end loop;dbms_output.put_line('');end loop;end;
總結
以上是生活随笔為你收集整理的Oracle 练习题 20131021 for 循环练习的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: memoryTraining记忆训练小游
- 下一篇: 进程通信:匿名管道和命名管道