【PL/SQL】用星号拼出金字塔

来源:互联网 发布:c语言leap什么意思 编辑:程序博客网 时间:2024/06/18 04:05

代码中首先声明了几个变量,然后使用嵌套循环去输出空格和星号,其中:

每层空格数=总层数-该层层数

每层星号数=当前层数*2-1

代码如下:

复制代码
declare v_number1 number(10);  --外层循环控制金字塔层数v_number2 number(10);  --内层循环控制每行空格数v_number3 number(10);  --内层循环控制每行星号数v_num     NUMBER(10);  --金字塔层数beginfor v_number1 in 1..&v_num  --设置金字塔层数loopfor v_number2 in 1..(&v_num-v_number1) --每层空格数=总层数-该层层数loopdbms_output.put (' '); --打印空格,注意不要换行end loop;for v_number3 in 1..(v_number1*2-1) --每层星号数=当前层数*2-1loopdbms_output.put ('*'); --打印星号,注意不要换行end loop;dbms_output.put_line(''); --换行end loop;end;/
复制代码

 

v_num输入10,即金字塔为10层,效果如下: