oracle 在PL/SQL中不会打印可被2和3整除的数字

rsaldnfx  于 2022-11-03  发布在  Oracle
关注(0)|答案(1)|浏览(149)

不能被2和3整除的前20个数字不会被打印出来。相反,会出现一串0。
我尝试打印可被2和3整除的前20个数字。下面是我的代码:

SET SERVEROUTPUT ON;

DECLARE 
    n number := 0;

BEGIN
    WHILE n <= 40
    LOOP
        IF MOD (n, 6) = 0 THEN
        DBMS_OUTPUT.PUT_LINE(n);
        END IF;
    END LOOP;
END;

输出结果是一堆0。我可以做些什么修改来使它正常工作呢?

k4aesqcs

k4aesqcs1#

您永远不会递增n
而且,在范围[0 .. 40]中没有20个可被6整除的数字。

SET SERVEROUTPUT ON;

DECLARE 
    n number := 0;
    c number := 0;

BEGIN
    WHILE c < 20
    LOOP
        IF MOD (n, 6) = 0 THEN
            DBMS_OUTPUT.PUT_LINE(n);
            c := c + 1;
        END IF;
        n := n + 1;
    END LOOP;
END;

相关问题