10未満の自然数のうち、 3もしくは5の倍数になっているものは3,5,6,9の4つがあり、これらの合計は23になる。 同じようにして、1000未満の3か5の倍数の自然数の合計を求めよ。
declare
SumVal pls_Integer :=0;
begin
for I in 1..1000-1 Loop
if mod(I,3)= 0 or mod(I,5)= 0 then
SumVal := SumVal + I;
end if;
end Loop;
DBMS_Output.Put_Line('合計=' || to_char(SumVal));
end;
/
合計=233168
再帰with句かmodel句で1000未満の自然数の集合を作って、 where句で3か5の倍数かでフィルタをかけ、 sum関数で合計を求める方法もありますね。 C#での解