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中输出结果。
展开
 我来答
tpj_wow
2010-12-23 · TA获得超过532个赞
知道小有建树答主
回答量:232
采纳率:100%
帮助的人:293万
展开全部
-- 奇数求和
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;
/
talend2010
2010-12-24
知道答主
回答量:19
采纳率:0%
帮助的人:0
展开全部
SQL> select sum_odd(100) from dual;

SQL> select sum_even(100) from dual;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式