PL/SQL 中两个数字的 GCD
先决条件——PL/SQL介绍
在 PL/SQL 代码中,命令组被安排在一个块中。块组相关的声明或语句。在声明部分,我们声明变量,在开始和结束部分之间,我们执行操作。
给定两个数字,任务是找到数字的 GCD(最大公约数)或 HCF(最大公约数)值。
例子:
Input: num1 = 4, num2 = 6
Output: gcd of (num1, num2) = 2
Input: num1 = 8, num2 = 48
Output: gcd of (num1, num2) = 8
方法是取两个数字并使用欧几里得算法找到它们的 GCD 值。
以下是所需的实现:
DECLARE
-- declare variable num1, num2 and t
-- and these three variables datatype are integer
num1 INTEGER;
num2 INTEGER;
t INTEGER;
BEGIN
num1 := 8;
num2 := 48;
WHILE MOD(num2, num1) != 0 LOOP
t := MOD(num2, num1);
num2 := num1;
num1 := t;
END LOOP;
dbms_output.Put_line('GCD of '
||num1
||' and '
||num2
||' is '
||num1);
END;
-- Program End
输出 :
GCD of 8 and 48 is 8