-5
- 我的练习给了我这个作为原始编码。
- 然后,他们希望我们做一个java实现它。
- 我以为我现在无法理解它。
- 这里有一个地方使用了一个变量“n”,它以某种方式将它全部加起来。
- 这是我真正的问题,除非有更多的可以调试。
我只是想在下周最后一次学习这些东西。如何在Java中编写ML程序?使用嵌套函数
fun f x y = let val a = x+1 fun g 0 = 0 | g n = let val a = x+y fun h 0 = 0 | h k = a+n+g(n-1) in h (n-1) end in if x = 0 then g y else a + g(f (x-1) y) end
这是我尝试的程序。
我应该实现的ML代码的原始版本在上面。
public class f { static double k; static double x; static double y; static double a, a2; static double n; public static double fn(double x, double y) { a = x + 1; if(x == 0) g(y); return a + g(fn((x-1), y)); } public static double g(double n) { if(n == 0) return 0; a2 = (x + y); f.n = h(n-1); return f.n; } public static double h(double k) { if(k==0) return 0; else { k = a2 + n + g(n-1); return k; } } public static void main(String[] args) { /*double arg2[] = null; for (int i = 0; i < args.length; i++) { arg2[i] = Double.parseDouble(args[i]); }*/ fn(2,1); } }
你想做什么?有什么问题?请在提问时具体明确。 – progyammer
我不太清楚程序应该做什么。要么我在我的一个班级学习ML,这只是一个应该帮助我的练习,但它让我更加困惑。 –
你是什么意思你想用Java编写一个ML程序?你想把ML代码翻译成Java吗? – EJoshuaS