Oracle数据库中:创建一个函数sum_odd( ),用于计算1~n之间的所有奇数之和
1.创建一个函数sum_odd(),用于计算1~n之间的所有奇数之和(用WHILE循环实现),并在PL/SQL程序中调用该函数,计算1~100之间的所有奇数之和,要求在S...
1.创建一个函数sum_odd( ),用于计算1~n之间的所有奇数之和(用WHILE循环实现),并在PL/SQL程序中调用该函数,计算1~100之间的所有奇数之和,要求在SQL*PLUS中输出结果。
2.创建一个函数sum_even( ),用于计算1~n之间的所有偶数之和(用FOR循环实现),并在PL/SQL程序中调用该函数,计算1~100之间的所有偶数之和,要求在SQL*PLUS中输出结果。 展开
2.创建一个函数sum_even( ),用于计算1~n之间的所有偶数之和(用FOR循环实现),并在PL/SQL程序中调用该函数,计算1~100之间的所有偶数之和,要求在SQL*PLUS中输出结果。 展开
2个回答
展开全部
-- 奇数求和
create or replace function sum_odd(i_num number) return number
as
v_index number(8) := 1;
v_total number(10):= 0;
begin
while ( v_index <= i_num )
loop
if mod(v_index,2) = 1 -- 确保为奇数
then
v_total := v_total + v_index;
end if;
v_index := v_index + 1; -- 步增
end loop;
return v_total;
end;
/
-- 偶数求和
create or replace function sum_even(i_num number) return number
as
v_index number(8) := 1;
v_total number(10):= 0;
begin
for v_index in 1 .. i_num -- 不需要再写步增的代码了
loop
if mod(v_index,2) = 0 -- 确保为偶数
then
v_total := v_total + v_index;
end if;
end loop;
return v_total;
end;
/
create or replace function sum_odd(i_num number) return number
as
v_index number(8) := 1;
v_total number(10):= 0;
begin
while ( v_index <= i_num )
loop
if mod(v_index,2) = 1 -- 确保为奇数
then
v_total := v_total + v_index;
end if;
v_index := v_index + 1; -- 步增
end loop;
return v_total;
end;
/
-- 偶数求和
create or replace function sum_even(i_num number) return number
as
v_index number(8) := 1;
v_total number(10):= 0;
begin
for v_index in 1 .. i_num -- 不需要再写步增的代码了
loop
if mod(v_index,2) = 0 -- 确保为偶数
then
v_total := v_total + v_index;
end if;
end loop;
return v_total;
end;
/
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |