Data update
This commit is contained in:
parent
ed705008a8
commit
0df55f9f24
2196 changed files with 32999 additions and 3075 deletions
20
Task/Mutual-recursion/EasyLang/mutual-recursion.easy
Normal file
20
Task/Mutual-recursion/EasyLang/mutual-recursion.easy
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
funcdecl M n .
|
||||
func F n .
|
||||
if n = 0
|
||||
return 1
|
||||
.
|
||||
return n - M F (n - 1)
|
||||
.
|
||||
func M n .
|
||||
if n = 0
|
||||
return 0
|
||||
.
|
||||
return n - F M (n - 1)
|
||||
.
|
||||
for i = 0 to 15
|
||||
write F i & " "
|
||||
.
|
||||
print ""
|
||||
for i = 0 to 15
|
||||
write M i & " "
|
||||
.
|
||||
|
|
@ -9,7 +9,7 @@ public program()
|
|||
var ra := new ArrayList();
|
||||
var rb := new ArrayList();
|
||||
|
||||
for(int i := 0, i <= 19, i += 1)
|
||||
for(int i := 0; i <= 19; i += 1)
|
||||
{
|
||||
ra.append(F(i));
|
||||
rb.append(M(i))
|
||||
|
|
|
|||
|
|
@ -17,11 +17,11 @@ fun main(args: Array<String>) {
|
|||
print("n :")
|
||||
for (i in 0..n) print("%3d".format(i))
|
||||
println()
|
||||
println("-".repeat(78))
|
||||
println("-".repeat((n + 2) * 3))
|
||||
print("F :")
|
||||
for (i in 0..24) print("%3d".format(f(i)))
|
||||
for (i in 0..n) print("%3d".format(f(i)))
|
||||
println()
|
||||
print("M :")
|
||||
for (i in 0..24) print("%3d".format(m(i)))
|
||||
for (i in 0..n) print("%3d".format(m(i)))
|
||||
println()
|
||||
}
|
||||
|
|
|
|||
13
Task/Mutual-recursion/Refal/mutual-recursion.refal
Normal file
13
Task/Mutual-recursion/Refal/mutual-recursion.refal
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
$ENTRY Go {
|
||||
= <Prout 'F: ' <S F 0 14>>
|
||||
<Prout 'M: ' <S M 0 14>>;
|
||||
};
|
||||
|
||||
|
||||
F { 0 = 1; s.N = <- s.N <M <F <- s.N 1>>>>; };
|
||||
M { 0 = 0; s.N = <- s.N <F <M <- s.N 1>>>>; };
|
||||
|
||||
S {
|
||||
s.F s.N s.M, <Compare s.N s.M>: '+' = ;
|
||||
s.F s.N s.M = <Mu s.F s.N> <S s.F <+ s.N 1> s.M>;
|
||||
};
|
||||
|
|
@ -1,11 +1,9 @@
|
|||
var M // forward declaration
|
||||
|
||||
var F = Fn.new { |n|
|
||||
if (n == 0) return 1
|
||||
return n - M.call(F.call(n-1))
|
||||
}
|
||||
|
||||
M = Fn.new { |n|
|
||||
var M = Fn.new { |n|
|
||||
if (n == 0) return 0
|
||||
return n - F.call(M.call(n-1))
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue