Just another update
This commit is contained in:
parent
a25938f123
commit
00a190b0a6
6591 changed files with 94363 additions and 23227 deletions
|
|
@ -0,0 +1,14 @@
|
|||
$ include "seed7_05.s7i";
|
||||
|
||||
const proc: main is func
|
||||
local
|
||||
var integer: n is 0;
|
||||
var integer: k is 0;
|
||||
begin
|
||||
for n range 0 to 66 do
|
||||
for k range 0 to n do
|
||||
write(n ! k <& " ");
|
||||
end for;
|
||||
writeln;
|
||||
end for;
|
||||
end func;
|
||||
|
|
@ -0,0 +1,26 @@
|
|||
const func bigInteger: (in bigInteger: n) ! (in var bigInteger: k) is func
|
||||
result
|
||||
var bigInteger: binom is 0_;
|
||||
local
|
||||
var bigInteger: numerator is 0_;
|
||||
var bigInteger: denominator is 0_;
|
||||
begin
|
||||
if n >= 0_ and k > n >> 1 then
|
||||
k := n - k;
|
||||
end if;
|
||||
if k < 0_ then
|
||||
binom := 0_;
|
||||
elsif k = 0_ then
|
||||
binom := 1_;
|
||||
else
|
||||
binom := n;
|
||||
numerator := pred(n);
|
||||
denominator := 2_;
|
||||
while denominator <= k do
|
||||
binom *:= numerator;
|
||||
binom := binom div denominator;
|
||||
decr(numerator);
|
||||
incr(denominator);
|
||||
end while;
|
||||
end if;
|
||||
end func;
|
||||
|
|
@ -1,26 +0,0 @@
|
|||
$ include "seed7_05.s7i";
|
||||
|
||||
const func integer: binomial (in integer: n, in var integer: k) is func
|
||||
result
|
||||
var integer: binomial is 0;
|
||||
local
|
||||
var integer: l is 0;
|
||||
begin
|
||||
if n >= k then
|
||||
if k > n - k then
|
||||
k := n - k; # Optimization
|
||||
end if;
|
||||
binomial := 1;
|
||||
l := 0;
|
||||
while l < k do
|
||||
binomial *:= n - l;
|
||||
incr(l);
|
||||
binomial := binomial div l;
|
||||
end while;
|
||||
end if;
|
||||
end func;
|
||||
|
||||
const proc: main is func
|
||||
begin
|
||||
writeln("binomial coefficient of (5, 3) is " <& binomial(5, 3));
|
||||
end func;
|
||||
Loading…
Add table
Add a link
Reference in a new issue