Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
5
Task/Ackermann-function/Raku/ackermann-function-1.raku
Normal file
5
Task/Ackermann-function/Raku/ackermann-function-1.raku
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
sub A(Int $m, Int $n) {
|
||||
if $m == 0 { $n + 1 }
|
||||
elsif $n == 0 { A($m - 1, 1) }
|
||||
else { A($m - 1, A($m, $n - 1)) }
|
||||
}
|
||||
3
Task/Ackermann-function/Raku/ackermann-function-2.raku
Normal file
3
Task/Ackermann-function/Raku/ackermann-function-2.raku
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
multi sub A(0, Int $n) { $n + 1 }
|
||||
multi sub A(Int $m, 0 ) { A($m - 1, 1) }
|
||||
multi sub A(Int $m, Int $n) { A($m - 1, A($m, $n - 1)) }
|
||||
13
Task/Ackermann-function/Raku/ackermann-function-3.raku
Normal file
13
Task/Ackermann-function/Raku/ackermann-function-3.raku
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
proto A(Int \𝑚, Int \𝑛) { (state @)[𝑚][𝑛] //= {*} }
|
||||
|
||||
multi A(0, Int \𝑛) { 𝑛 + 1 }
|
||||
multi A(1, Int \𝑛) { 𝑛 + 2 }
|
||||
multi A(2, Int \𝑛) { 3 + 2 * 𝑛 }
|
||||
multi A(3, Int \𝑛) { 5 + 8 * (2 ** 𝑛 - 1) }
|
||||
|
||||
multi A(Int \𝑚, 0 ) { A(𝑚 - 1, 1) }
|
||||
multi A(Int \𝑚, Int \𝑛) { A(𝑚 - 1, A(𝑚, 𝑛 - 1)) }
|
||||
|
||||
# Testing:
|
||||
say A(4,1);
|
||||
say .chars, " digits starting with ", .substr(0,50), "..." given A(4,2);
|
||||
Loading…
Add table
Add a link
Reference in a new issue