for循环输出三角形

使用for循环输出一个实心三角形,底边长由用户输入

DECLARE
  LENTH INT;
BEGIN
  LENTH := 12;
  FOR LEVEL IN 1 .. TRUNC(LENTH / 2) + 1 LOOP
    DBMS_OUTPUT.PUT_LINE(LPAD(' ', TRUNC(LENTH / 2) - (LEVEL - 1), ' ') ||
                         LPAD('*', 1 + (LEVEL - 1) * 2, '*'));
  END LOOP;
END;


并不完美,只能打印底边长为奇数的三角形,不知可否有更好的方法?

你可能感兴趣的:(for循环输出三角形)